Cyclicity of the units of ZMod n
#
ZMod.isCyclic_units_iff
: (ZMod n)ˣ
is cyclic iff
one of the following mutually exclusive cases happens:
n = 0
(thenZMod 0 ≃+* ℤ
and the group of units is cyclic of order 2);n =
1,
2or
4`n
is a powerp ^ e
of an odd prime number, or twice such a power (with1 ≤ e
).
The individual cases are proved by inferInstance
and are
also directly provided by :
The case of prime numbers is also an instance:
ZMod.not_isCyclic_units_eight
:(ZMod 8)ˣ
is not cyclicZMod.orderOf_one_add_mul_prime
: the order of1 + a * p
modulop ^ (n + 1)
isp ^ n
whenp
does not dividea
.ZMod.orderOf_five
: the order of5
modulo2 ^ (n + 3)
is2 ^ (n + 1)
.ZMod.isCyclic_units_of_prime_pow
: the case of odd prime powersZMod.isCyclic_units_two_pow_iff
:(ZMod (2 ^ n))ˣ
is cyclic iffn ≤ 2
.
The proofs mostly follow [Ireland and Rosen, A classical introduction to modern number theory, chapter 4] [IR90].