cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A319447 a(n) is the rank of the multiplicative group of Eisenstein integers modulo n.

Original entry on oeis.org

0, 1, 1, 2, 1, 2, 2, 3, 3, 2, 1, 3, 2, 3, 2, 3, 1, 4, 2, 3, 3, 2, 1, 4, 2, 3, 3, 4, 1, 3, 2, 3, 2, 2, 3, 4, 2, 3, 3, 4, 1, 4, 2, 3, 4, 2, 1, 4, 2, 2, 2, 4, 1, 4, 2, 5, 3, 2, 1, 4, 2, 3, 5, 3, 3, 3, 2, 3, 2, 4, 1, 4, 2, 3, 2, 4, 3, 4, 2, 4, 3, 2, 1, 5, 2, 3, 2
Offset: 1

Views

Author

Jianing Song, Sep 19 2018

Keywords

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])*.
The order of (Z[w]/nZ[w])* is A319445(n) and the exponent of it is A319446(n).
{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)

Examples

			(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).
		

Crossrefs

Equivalent in the ring of Gaussian integers: A316506.

Programs

  • 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

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]

Extensions

Corrected by Jianing Song, Jan 12 2019