OFFSET
1,1
COMMENTS
The Wilson theorem states that p is prime if and only if (p-1)! == -1 (mod p). If p == 3 (mod 4) then ((p-1)/2)! == +- 1 (mod p).
REFERENCES
J. B. Cosgrave, A Mersenne-Wieferich Odyssey, Manuscript, May 2022. See Section 18.2.
LINKS
Robert G. Wilson v, Table of n, a(n) for n = 1..686
J. B. Cosgrave, Jacobi.
Wikipedia, Wilson's theorem.
EXAMPLE
For n = 1 the prime a(1) = 3571 divides 1190! - 1.
MATHEMATICA
p=7; lst = {}; While[p<17500000, If[ PrimeQ[p] && Mod[((p-1)/3)!, p] == 1, AppendTo[lst, p]; Print[p]]; p+=6] (* Robert G. Wilson v, Dec 19 2025 *)
PROG
(PARI) forprime(p=2, 30000, if(p%3==1 & ((p-1)/3)!%p==1, print1(p, ", ")))
(Python)
from sympy import isprime
from itertools import count
fact, m = 1, 2
for k in count(7, 6):
fact *= m*(m-1)
m += 2
if isprime(k) and fact%k == 1:
print(k, end=", ")
# Michael S. Branicky, Dec 21 2025
CROSSREFS
KEYWORD
nonn
AUTHOR
Francois Brunault (brunault(AT)gmail.com), Nov 29 2008
EXTENSIONS
a(12) onward from Robert G. Wilson v, Dec 19 2025
STATUS
approved
