Cycle Types #
In this file we define the cycle type of a permutation.
Main definitions #
Equiv.Perm.cycleType σ
whereσ
is a permutation of aFintype
Equiv.Perm.partition σ
whereσ
is a permutation of aFintype
Main results #
sum_cycleType
: The sum ofσ.cycleType
equalsσ.support.card
lcm_cycleType
: The lcm ofσ.cycleType
equalsorderOf σ
isConj_iff_cycleType_eq
: Two permutations are conjugate if and only if they have the same cycle type.exists_prime_orderOf_dvd_card
: For every primep
dividing the order of a finite groupG
there exists an element of orderp
inG
. This is known as Cauchy's theorem.
The cycle type of a permutation
Equations
- Equiv.Perm.cycleType σ = Multiset.map (Finset.card ∘ Equiv.Perm.support) (Equiv.Perm.cycleFactorsFinset σ).val
Instances For
The number of fixed points of a p ^ n
-th root of the identity function over a finite set
and the set's cardinality have the same residue modulo p
, where p
is a prime.
The type of vectors with terms from G
, length n
, and product equal to 1:G
.
Equations
- Equiv.Perm.vectorsProdEqOne G n = {v : Vector G n | List.prod (Vector.toList v) = 1}
Instances For
Equations
- Equiv.Perm.VectorsProdEqOne.zeroUnique G = Eq.mpr ⋯ (Set.uniqueSingleton Vector.nil)
Equations
- Equiv.Perm.VectorsProdEqOne.oneUnique G = Eq.mpr ⋯ (Set.uniqueSingleton (1 ::ᵥ Vector.nil))
Given a vector v
of length n
, make a vector of length n + 1
whose product is 1
,
by appending the inverse of the product of v
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given a vector v
of length n
whose product is 1, make a vector of length n - 1
,
by deleting the last entry of v
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Rotate a vector whose product is 1.
Equations
- Equiv.Perm.VectorsProdEqOne.rotate v k = { val := { val := List.rotate (↑↑v) k, property := ⋯ }, property := ⋯ }
Instances For
For every prime p
dividing the order of a finite group G
there exists an element of order
p
in G
. This is known as Cauchy's theorem.
For every prime p
dividing the order of a finite additive group G
there exists an element of
order p
in G
. This is the additive version of Cauchy's theorem.
The partition corresponding to a permutation
Equations
- Equiv.Perm.partition σ = { parts := Equiv.Perm.cycleType σ + Multiset.replicate (Fintype.card α - (Equiv.Perm.support σ).card) 1, parts_pos := ⋯, parts_sum := ⋯ }
Instances For
3-cycles #
A three-cycle is a cycle of length 3.
Equations
- Equiv.Perm.IsThreeCycle σ = (Equiv.Perm.cycleType σ = {3})