Exponent of a group #
This file defines the exponent of a group, or more generally a monoid. For a group G
it is defined
to be the minimal n≥1
such that g ^ n = 1
for all g ∈ G
. For a finite group G
,
it is equal to the lowest common multiple of the order of all elements of the group G
.
Main definitions #
monoid.exponent_exists
is a predicate on a monoidG
saying that there is some positiven
such thatg ^ n = 1
for allg ∈ G
.monoid.exponent
defines the exponent of a monoidG
as the minimal positiven
such thatg ^ n = 1
for allg ∈ G
, by convention it is0
if no suchn
exists.add_monoid.exponent_exists
the additive version ofmonoid.exponent_exists
.add_monoid.exponent
the additive version ofmonoid.exponent
.
Main results #
monoid.lcm_order_eq_exponent
: For a finite left cancel monoidG
, the exponent is equal to thefinset.lcm
of the order of its elements.monoid.exponent_eq_supr_order_of(')
: For a commutative cancel monoid, the exponent is equal to⨆ g : G, order_of g
(or zero if it has any order-zero elements).
TODO #
- Refactor the characteristic of a ring to be the exponent of its underlying additive group.
A predicate on an additive monoid saying that there is a positive integer n
such
that n • g = 0
for all g
.
A predicate on a monoid saying that there is a positive integer n
such that g ^ n = 1
for all g
.
The exponent of a group is the smallest positive integer n
such that g ^ n = 1
for all
g ∈ G
if it exists, otherwise it is zero by convention.
Equations
- monoid.exponent G = dite (monoid.exponent_exists G) (λ (h : monoid.exponent_exists G), nat.find h) (λ (h : ¬monoid.exponent_exists G), 0)
The exponent of an additive group is the smallest positive integer n
such that
n • g = 0
for all g ∈ G
if it exists, otherwise it is zero by convention.
Equations
- add_monoid.exponent G = dite (add_monoid.exponent_exists G) (λ (h : add_monoid.exponent_exists G), nat.find h) (λ (h : ¬add_monoid.exponent_exists G), 0)