|
|
A277030
|
|
Smallest m such that b^phi(n) == b^m (mod n) for every integer b, where phi(n) = A000010(n).
|
|
1
|
|
|
0, 1, 2, 2, 4, 2, 6, 4, 6, 4, 10, 2, 12, 6, 4, 4, 16, 6, 18, 4, 6, 10, 22, 4, 20, 12, 18, 6, 28, 4, 30, 8, 10, 16, 12, 6, 36, 18, 12, 4, 40, 6, 42, 10, 12, 22, 46, 4, 42, 20, 16, 12, 52, 18, 20, 6, 18, 28, 58, 4, 60, 30, 6, 16, 12, 10, 66, 16, 22, 12, 70, 6, 72, 36, 20, 18, 30
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,3
|
|
COMMENTS
|
It suffices to check all bases 1 <= b <= n.
For n > 1; if A002322(n) = phi(n), then a(n) = phi(n). So a(p) = p-1 for all primes p.
Numbers n > 1 such that a(n) < phi(n) are A033949 > 8.
Conjecture: a(n) > A002322(n) only for n = 8 and 24.
|
|
LINKS
|
|
|
FORMULA
|
Conjectured: a(n) = A002322(n), except for a(1) = 0 and a(8) = a(24) = 4.
|
|
PROG
|
(PARI) A277030(n) = { my(b, m=0); if(1==n, 0, while(1, m=m+1; b=1; while(((b^eulerphi(n))%n) == ((b^m)%n), b=b+1; if(b>n, return(m))))); }; \\ (Following the description). - Antti Karttunen, Jul 28 2017
(Python)
from sympy import totient
def a(n):
m=0
if n==1: return 0
else:
while True:
m+=1
b=1
while (b**totient(n))%n==(b**m)%n:
b+=1
if b>n: return m
print([a(n) for n in range(1, 101)]) # Indranil Ghosh, Jul 29 2017, after PARI code
|
|
CROSSREFS
|
|
|
KEYWORD
|
nonn
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|