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
- σ.cycleType = Multiset.map (Finset.card ∘ Equiv.Perm.support) σ.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 : List.Vector G n | v.toList.prod = 1}
Instances For
Equations
- Equiv.Perm.VectorsProdEqOne.zeroUnique G = ⋯.mpr (Set.uniqueSingleton List.Vector.nil)
Equations
- Equiv.Perm.VectorsProdEqOne.oneUnique G = ⋯.mpr (Set.uniqueSingleton (1 ::ᵥ List.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.
- Equiv.Perm.VectorsProdEqOne.equivVector G n.succ = (Equiv.Perm.VectorsProdEqOne.vectorEquiv G n).symm
Instances For
Equations
Rotate a vector whose product is 1.
Equations
- Equiv.Perm.VectorsProdEqOne.rotate v k = ⟨⟨(↑↑v).rotate k, ⋯⟩, ⋯⟩
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
- σ.partition = { parts := σ.cycleType + Multiset.replicate (Fintype.card α - σ.support.card) 1, parts_pos := ⋯, parts_sum := ⋯ }
Instances For
3-cycles #
A three-cycle is a cycle of length 3.