OFFSET
1,2
PROG
(GAP)
B:=[]; LoadPackage("sonata");
for m in [1..86] do
n := 2*m; S:=[];
for i in DivisorsInt(n)+1 do
if IsPrime(i)=true then
S:=Concatenation(S, [i]);
fi;
od;
T:=[];
for k in [1..Size(S)] do
T:=Concatenation(T, [S[k]/(S[k]-1)]);
od;
max := n*Product(T); R:=[];
for r in [1..Int(max)] do
if Phi(r)=n then
R:=Concatenation(R, [r]);
fi;
od;
A:=[];
for t in [1..NrSmallGroups(n)] do
if IsAbelian(SmallGroup(n, t))=true then
A:=Concatenation(A, [SmallGroup(n, t)]);
fi;
od;
U:=[];
for s in [1..Size(R)] do
U:=Concatenation(U, [Units(Integers mod R[s])]);
od;
V:=[];
for v in [1..Size(A)] do
for w in [1..Size(U)] do
if IsIsomorphicGroup(A[v], U[w])=true then
V:=Concatenation(V, [v]);
break;
fi;
od;
od;
B:=Concatenation(B, [Size(V)]);
od;
Print(B); # Miles Englezou, Oct 22 2024
CROSSREFS
KEYWORD
nonn,changed
AUTHOR
Artur Jasinski, Oct 14 2011
EXTENSIONS
Name corrected by Andrey Zabolotskiy, Oct 21 2024
Terms a(17) onwards from Miles Englezou, Oct 22 2024
STATUS
approved