login
A014423
From table of maximal epacts e(p) and corresponding primes p, for x_1=2, x_{m+1} = (x_m)^2+1; sequence gives e(p).
2
2, 3, 4, 6, 8, 12, 14, 18, 25, 28, 30, 32, 45, 55, 56, 76, 86, 89, 132, 142, 146, 150, 156, 168, 180, 196, 212, 228, 233, 252, 312, 429, 450, 532, 544, 561, 583, 706, 876, 992, 1168, 1383, 1415, 1428, 1534, 1560, 1638
OFFSET
1,1
REFERENCES
R. K. Guy, How to factor a number, Proc. 5th Manitoba Conf. Numerical Math., Congress. Num. 16 (1975), 49-89.
LINKS
MATHEMATICA
rec=Module[{r={}, maxe=0}, Do[seq={2}; e=0;
For[k=1, k<=p+1, k++, While[Length[seq]<2 k, AppendTo[seq, Mod[Last[seq]^2+1, p]]];
If[seq[[k]]===seq[[2 k]], e=k; Break[]]];
If[e>maxe, AppendTo[r, e]; maxe=e], {p, Prime/@Range[PrimePi[200000]]}]; r];
Print[StringJoin[Riffle[ToString/@rec, ", "]]] (* Vincenzo Librandi, Nov 17 2025 *)
PROG
(Magma) function RecordEpactsUpTo(N)
rec := []; maxe := 0;
for p in PrimesUpTo(N) do
seq := [2 mod p]; e := 0;
for k in [1..p+1] do
while #seq lt 2*k do Append(~seq, (seq[#seq]^2 + 1) mod p); end while;
if seq[k] eq seq[2*k] then e := k; break; end if;
end for;
if e gt maxe then Append(~rec, e); maxe := e; end if;
end for;
return rec;
end function;
rec := RecordEpactsUpTo(200000);
printf "%o\n", Join([IntegerToString(x) : x in rec], ", "); // Vincenzo Librandi, Nov 17 2025
CROSSREFS
Cf. A014424.
Sequence in context: A275717 A029449 A028815 * A101902 A236912 A215966
KEYWORD
nonn
STATUS
approved