|
|
A287147
|
|
Primes p that set a new record for the size of the smallest b > 1 such that b^(p-1) == 1 (mod p^2).
|
|
1
|
|
|
2, 3, 7, 13, 17, 31, 53, 179, 271, 311, 503, 569, 587, 1231, 1307, 1543, 1931, 2647, 2711, 3089, 3917, 4919, 5879, 6491, 8933, 9137, 11437, 13411, 14431, 16657, 21599, 26053, 29129, 57367, 58481, 62071, 62971, 68351, 70639, 109721, 156967, 193811, 216211
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,1
|
|
COMMENTS
|
Primes p such that A039678(i) reaches record values, where i is the index of p in A000040.
|
|
LINKS
|
|
|
MATHEMATICA
|
Function[s, Prime@ Position[s, #][[1, 1]] & /@ Union@ FoldList[Max, s]]@ Table[Function[p, b = 2; While[PowerMod[b, p - 1, p^2] != 1, b++]; b]@ Prime@ n, {n, 10^3}] (* Michael De Vlieger, May 21 2017 *)
|
|
PROG
|
(PARI) minb(n) = my(b=2); while(Mod(b, n^2)^(n-1)!=1, b++); b
my(r=0); forprime(p=1, , if(minb(p) > r, print1(p, ", "); r=minb(p)))
(Python)
from itertools import islice
from sympy import nextprime
from sympy.ntheory.residue_ntheory import nthroot_mod
def A287147_gen(): # generator of terms
c, p = 5, 3
yield 2
while True:
d = nthroot_mod(1, p-1, p**2, True)[1]
if d > c:
c = d
yield p
p = nextprime(p)
|
|
CROSSREFS
|
|
|
KEYWORD
|
nonn
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|