OFFSET
1,4
COMMENTS
The rank of a finitely generated group rank(G) is defined to be the size of the minimal generating sets of G.
Let p be an odd prime and (Z[w]/nZ[w])* be the multiplicative group of Gaussian integers modulo n, then: (Z[w]/p^e*Z[w])* = (C_((p-1)*p^(e-1)))^2 if p == 1 (mod 6); C_(p^(e-1)) X C_(p^(e-1)*(p^2-1)) if p == 5 (mod 6); (Z[w]/3^e*Z[w])* = C_3 X C_(3^(e-1)) X C_(2*3^(e-1)); (Z[w]/2Z[w])* = C_3, (Z[w]/2^e*Z[w])* = C_2 X C_(2^(e-2)) X C_(3*2^(e-1)) for e >= 2. If n = Product_{i=1..k} (p_i)^(e_i), then (Z[w]/nZ[w])* = (Z[w]/(p_1)^(e_1)*Z[w])* X (Z[w]/(p_2)^(e_2)*Z[w])* X ... X (Z[w]/(p_k)^(e_k)*Z[w])*.
{a(n)} is not additive: (Z[w]/2Z[w])* = C_3, (Z[w]/25Z[w])* = C_5 X C_120, so (Z[w]/50Z[w])* = C_15 X C_120, a(50) < a(2) + a(25).
A319445(n)/A319446(n) is always an integer, and is 1 if and only if (Z[w]/nZ[w])* is cyclic, that is, rank((Z[w]/nZ[w])*) = a(n) = 0 or 1, and n has a primitive root in (Z[w]/nZ[w])*. a(n) = 1 if and only if n = 3 or a prime congruent to 2 mod 3. - Jianing Song, Jan 08 2019
From Jianing Song, Oct 03 2022: (Start)
More generally, let pi be a prime element of Z[w] of norm p or p^2 for prime p, then:
- for p == 1 (mod 6), (Z[w]/(pi^e)Z[w])* = C_((p-1)*p^(e-1));
- for p == 5 (mod 6), (Z[w]/(pi^e)Z[w])* = C_(p^(e-1)) X C_(p^(e-1)*(p^2-1));
- for p = 3, (Z[w]/(pi^e)Z[w])* = C_2 for e = 1, C_3 X C_(3^floor((e-2)/2)) X C_(2*3^ceiling((e-2)/2)) for e >= 2;
- for p = 2, (Z[w]/(pi^e)Z[w])* = C_3 for e = 1, C_2 X C_(2^(e-2)) X C_(3*2^(e-1)) for e >= 2.
For a more general result see my link below. (End)
LINKS
Jianing Song, Table of n, a(n) for n = 1..10000
Wikipedia, Eisenstein integer
FORMULA
Let p be an odd prime, then: a(p^e) = 2 if p == 1 (mod 6) or p == 5 (mod 6), e >= 2; a(p) = 1 if p == 5 (mod 6). a(3) = 1, a(3^e) = 3 for e >= 2. a(2) = 1, a(4) = 2, a(2^e) = 3 for e >= 3. [Corrected by Jianing Song, Aug 05 2019]
EXAMPLE
(Z[w]/1Z[w])* = C_1 (has rank 0);
(Z[w]/2Z[w])* = C_3 (has rank 1);
(Z[w]/3Z[w])* = C_6 (has rank 1);
(Z[w]/4Z[w])* = C_2 X C_6 (has rank 2);
(Z[w]/5Z[w])* = C_24 (has rank 1);
(Z[w]/6Z[w])* = C_3 X C_6 (has rank 2);
(Z[w]/7Z[w])* = C_6 X C_6 (has rank 2);
(Z[w]/8Z[w])* = C_2 X C_2 X C_12 (has rank 3);
(Z[w]/9Z[w])* = C_3 X C_3 X C_6 (has rank 3);
(Z[w]/10Z[w])* = C_3 X C_24 (has rank 2).
PROG
(PARI)
rad(n) = factorback(factorint(n)[, 1]);
grad(n)=
{
my(r=1, f=factor(n));
for(j=1, #f[, 1], my(p=f[j, 1], e=f[j, 2]);
if(p==2&e==1, r*=3);
if(p==2&e==2, r*=12);
if(p==2&e>=3, r*=24);
if(p==3&e==1, r*=6);
if(p==3&e>=2, r*=54);
if(p%6==1, r*=(rad(p-1))^2);
if(p%6==5&e==1, r*=rad(p^2-1));
if(p%6==5&e>=2, r*=p^2*rad(p^2-1));
);
return(r);
}
a(n)=if(n>1, vecmax(factor(grad(n))[, 2]), 0); \\ The program is based on the facts that although rank((Z[w]/nZ[w])*) is not additive, the p-rank of (Z[w]/nZ[w])* is additive for any prime p, and that rank((Z[w]/nZ[w])*) is the maximum of the p-rank of (Z[w]/nZ[w])* where p runs through all primes. - Jianing Song, Aug 05 2019
CROSSREFS
KEYWORD
nonn
AUTHOR
Jianing Song, Sep 19 2018
EXTENSIONS
Corrected by Jianing Song, Jan 12 2019
STATUS
approved