OFFSET
1,3
COMMENTS
Let U(k) denote the multiplicative group mod k. a(n) = smallest generator for U(A033948(n)). - N. J. A. Sloane, Mar 10 2019
LINKS
Robert Israel, Table of n, a(n) for n = 1..10000
EXAMPLE
MAPLE
0, op(subs(FAIL=NULL, map(numtheory:-primroot, [$2..1000]))); # Robert Israel, Mar 10 2019
MATHEMATICA
Array[Take[PrimitiveRootList@ #, UpTo[1]] &, 210] // Flatten (* Michael De Vlieger, Feb 02 2019 *)
PROG
(Python)
from math import gcd
roots = [0]
for n in range(2, 140):
# find U(n)
un = [i for i in range(1, n) if gcd(i, n) == 1]
# for each element in U(n), check if it's a generator
order = len(un)
is_cyclic = False
for cand in un:
is_gen = True
run = 1
# If it cand^x = 1 for some x < order, it's not a generator
for _ in range(order-1):
run = (run * cand) % n
if run == 1:
is_gen = False
break
if is_gen:
roots.append(cand)
is_cyclic = True
break
print(roots)
CROSSREFS
KEYWORD
nonn
AUTHOR
Charles Paul, Feb 01 2019
EXTENSIONS
More terms from Michael De Vlieger, Feb 02 2019
Edited by N. J. A. Sloane, Mar 10 2019
Edited by Robert Israel, Mar 10 2019
STATUS
approved