Roots of unity #
We define roots of unity in the context of an arbitrary commutative monoid, as a subgroup of the group of units.
Main definitions #
rootsOfUnity n M, forn : ℕis the subgroup of the units of a commutative monoidMconsisting of elementsxthat satisfyx ^ n = 1.
Main results #
rootsOfUnity.isCyclic: the roots of unity in an integral domain form a cyclic group.
Implementation details #
It is desirable that rootsOfUnity is a subgroup,
and it will mainly be applied to rings (e.g. the ring of integers in a number field) and fields.
We therefore implement it as a subgroup of the units of a commutative monoid.
We have chosen to define rootsOfUnity n for n : ℕ and add a [NeZero n] typeclass
assumption when we need n to be non-zero (which is the case for most interesting statements).
Note that rootsOfUnity 0 M is the top subgroup of Mˣ (as the condition ζ^0 = 1 is
satisfied for all units).
A variant of mem_rootsOfUnity using ζ : Mˣ.
Make an element of rootsOfUnity from a member of the base ring, and a proof that it has
a positive power equal to one.
Equations
Instances For
The canonical isomorphism from the nth roots of unity in Mˣ
to the nth roots of unity in M.
Equations
Instances For
Restrict a ring homomorphism to the nth roots of unity.
Equations
Instances For
Restrict a monoid isomorphism to the nth roots of unity.
Equations
Instances For
Equivalence between the k-th roots of unity in R and the k-th roots of 1.
This is implemented as equivalence of subtypes,
because rootsOfUnity is a subgroup of the group of units,
whereas nthRoots is a multiset.
Equations
Instances For
Equations
The isomorphism from the group of group homomorphisms from a finite cyclic group G of order
n into another group G' to the group of nth roots of unity in G' determined by a generator
g of G. It sends φ : G →* G' to φ g.
Equations
Instances For
The group of group homomorphisms from a finite cyclic group G of order n into another
group G' is (noncanonically) isomorphic to the group of nth roots of unity in G'.