cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A306582 a(n) is the least integer k such that the remainder of k modulo p is strictly increasing over the first n primes.

Original entry on oeis.org

0, 2, 4, 34, 52, 194, 502, 1138, 4042, 5794, 5794, 62488, 798298, 5314448, 41592688, 483815692, 483815692, 5037219688, 18517814158, 18517814158, 19566774820732, 55249201504132, 1257253598786974, 6743244322196288, 24165921989926702, 24165921989926702, 5346711077171356252, 47449991406350138602, 278545375679341352084, 5604477496256287791854
Offset: 1

Views

Author

Charlie Neder, Jun 03 2019

Keywords

Comments

If "strictly increasing" is replaced with "nondecreasing", this sequence becomes A000004.
Trivially, a(n) <= A002110(n)-2. Equality only holds for n = 0.

Examples

			  a(n) modulo 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, ...
  ==== ==================================================
     0        0, 0, 0, 0,  0,  0,  0,  0,  0,  0,  0, ...
     2        0, 2, 2, 2,  2,  2,  2,  2,  2,  2,  2, ...
     4        0, 1, 4, 4,  4,  4,  4,  4,  4,  4,  4, ...
    34        0, 1, 4, 6,  1,  8,  0, 15, 11,  5,  3, ...
    52        0, 1, 2, 3,  8,  0,  1, 14,  6, 23, 21, ...
   194        0, 2, 4, 5,  7, 12,  7,  4, 10, 20,  8, ...
   502        0, 1, 2, 5,  7,  8,  9,  8, 19,  9,  6, ...
  1138        0, 1, 3, 4,  5,  7, 16, 17, 11,  7, 22, ...
  4042        0, 1, 2, 3,  5, 12, 13, 14, 17, 11, 12, ...
  5794        0, 1, 4, 5,  8,  9, 14, 18, 21, 23, 28, ...
		

Crossrefs

Programs

  • PARI
    isok(k, n) = {my(last = -1, cur); for (i=1, n, cur = k % prime(i); if (cur <= last, return (0)); last = cur;); return (1);}
    a(n) = {my(k=0); while(!isok(k, n), k++); k;} \\ Michel Marcus, Jun 04 2019
    
  • Python
    from sympy import prime
    def A306582(n):
        plist, rlist, x = [prime(i) for i in range(1,n+1)], [0]*n, 0
        while True:
            for i in range(n-1):
                if rlist[i] >= rlist[i+1]:
                    break
            else:
                return x
            for i in range(n):
                rlist[i] = (rlist[i] + 1) % plist[i]
            x += 1 # Chai Wah Wu, Jun 15 2019

Extensions

a(16)-a(20) from Daniel Suteu, Jun 03 2019
a(21)-a(23) from Giovanni Resta, Jun 16 2019
a(24)-a(27) from Bert Dobbelaere, Jun 22 2019
a(28)-a(30) from Bert Dobbelaere, Sep 05 2019