FormalConjecturesForMathlib/Geometry/Group/WordMetric.lean
Explanation legend Lean4 Domain Explanation Language (L4DEL)
L4DEL explanations are a separate layer. They do not change the Lean source. Intuition is explanatory prose; numbered items are a reading path; sources link the wording back to evidence.
- L4DEL
- Lean4 Domain Explanation Language
Credit: The upstream authors and contributors retain credit for the project and mathematics. lean4-explainer only renders their pinned source and adds the separately disclosed explanation layer.
Project sources: Pinned project documentation, Formal Conjectures paper, arXiv v1
13 declarations, 0 contain sorry, 0 declared as axioms
The word metric
The word length of an element is the length of a shortest representing word, over a generating
family given by Group.Generators. The word length defines a norm on G inducing the word metric
dist g h = ‖g⁻¹ * h‖.
This file is copied from Mathlib.Geometry.Group.WordMetric
(leanprover-community/mathlib4#43118). It is in Mathlib from v4.34.0.
TODO: delete this file when this repository moves to Mathlib v4.34.0.
Main definitions
Group.Generators.wordLength: the word length of an element ofGwith respect to a generating familyP.Group.Generators.IsGeodesic: a word is geodesic if it is of minimal length among the words representing the same group element.Group.Generators.groupNorm: the word length as a norm onG.Group.Generators.normedGroup: the normed group structure onGinduced bygroupNorm. This gives rise to a word metric onG.
Main results
Group.Generators.exists_isGeodesic: every element ofGis represented by some geodesic word.
Imported by 2 files
- def
Group.Generators.wordLengthThe word length ofgwith respect to the generating familyPline 62 sourceSource documentation
The word length of
gwith respect to the generating familyP.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,Group.Generators,NatProof uses:
InfSet.sInf,Set.ofPred,Exists,List,Prod,Bool,And,Eq, Group.Generators.wordProd,List.length1 instances, coercions and auxiliary constants left out.
noncomputable def wordLength : ℕ := sInf {n | ∃ l, P.wordProd l = g ∧ l.length = n} - def
Group.Generators.IsGeodesicA wordlis geodesic if its length is exactly the word length of the group element it represents line 68 sourceSource documentation
A word
lis geodesic if its length is exactly the word length of the group element it represents.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,Group.Generators,List,Prod,BoolProof uses:
Eq,Nat, Group.Generators.wordLength, Group.Generators.wordProd,List.lengthdef IsGeodesic : Prop := P.wordLength (P.wordProd l) = l.length
- lemma
Group.Generators.IsGeodesic.eqline 70 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,Group.Generators,List,Prod,Bool, Group.Generators.IsGeodesic,Eq,Nat, Group.Generators.wordLength, Group.Generators.wordProd,List.length - theorem
Group.Generators.exists_isGeodesicEvery group element has a geodesic word representative line 74 sourceSource documentation
Every group element has a geodesic word representative.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,Group.Generators,Exists,List,Prod,Bool,And, Group.Generators.IsGeodesic,Eq, Group.Generators.wordProdProof uses:
Membership.mem,Set,Nat,List.length,InfSet.sInf,Set.image,Nat.sInf_mem,Set.Nonempty.image, Group.Generators.wordProd_surjective,Exists.intro,And.intro,Eq.symm,rfl5 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
theorem exists_isGeodesic : ∃ l, P.IsGeodesic l ∧ P.wordProd l = g := by …
- lemma
Group.Generators.wordLength_wordProd_leline 80 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,Group.Generators,List,Prod,Bool,LE.le,Nat, Group.Generators.wordLength, Group.Generators.wordProd,List.lengthProof uses:
Nat.sInf_le,Set.ofPred,Exists,And,Eq,Exists.intro,And.intro,rfl1 instances, coercions and auxiliary constants left out.
- theorem
Group.Generators.wordLength_le_iffThe characterisation of word length: the word length of a group element is less or equal tonif and only if there exists a wordlof length at mostnwhich evaluates togline 85 sourceSource documentation
The characterisation of word length: the word length of a group element is less or equal to
nif and only if there exists a wordlof length at mostnwhich evaluates tog.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,Group.Generators,Nat,Iff,LE.le, Group.Generators.wordLength,Exists,List,Prod,Bool,And,List.length,Eq, Group.Generators.wordProdProof uses:
Iff.intro, Group.Generators.IsGeodesic, Group.Generators.exists_isGeodesic,Exists.intro,And.intro,Eq.rec, Group.Generators.IsGeodesic.eq,rfl,LE.le.trans, Group.Generators.wordLength_wordProd_le6 instances, coercions and auxiliary constants left out.
Tactic trace: 8 steps
Open to load the checked before-and-after goal states.
theorem wordLength_le_iff {n : ℕ} : P.wordLength g ≤ n ↔ ∃ l, l.length ≤ n ∧ P.wordProd l = g := by … - lemma
Group.Generators.wordLength_eq_zero_iffline 95 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,Group.Generators,Iff,Eq,Nat, Group.Generators.wordLength,OfNat.ofNatProof uses:
Eq.mpr,LE.le,id,congrArg,Eq.symm,propext,Nat.le_zero,Exists,List,Prod,Bool,And,List.length, Group.Generators.wordProd, Group.Generators.wordLength_le_iff,of_eq_true,Eq.trans,True,congrFun',List.niland 4 more25 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Group.Generators.wordLength_oneline 100 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,Group.Generators,Eq,Nat, Group.Generators.wordLength,OfNat.ofNatProof uses:
Eq.mpr,id,congrArg,propext, Group.Generators.wordLength_eq_zero_iff,Eq.refl12 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Group.Generators.wordLength_inv_leThis is superseded bywordLength_invline 104 sourceSource comment
This is superseded by `wordLength_inv`.private lemma wordLength_inv_le : P.wordLength g⁻¹ ≤ P.wordLength g := by …
- lemma
Group.Generators.wordLength_invline 109 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,Group.Generators,Eq,Nat, Group.Generators.wordLength,Inv.invProof uses:
le_antisymm,Eq.mp,LE.le,congrFun',congrArg,inv_inv12 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Group.Generators.wordLength_mul_leline 114 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,Group.Generators,LE.le,Nat, Group.Generators.wordLength,HMul.hMul,HAdd.hAddProof uses:
List,Prod,Bool,And, Group.Generators.IsGeodesic,Eq, Group.Generators.wordProd,Exists, Group.Generators.exists_isGeodesic,Eq.mpr,List.length,id,congrArg,congr, Group.Generators.IsGeodesic.eq,Eq.mp,HAppend.hAppend, Group.Generators.wordProd_append,List.length_append, Group.Generators.wordLength_wordProd_le23 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- def
Group.Generators.groupNormThewordLengthwith respect to a generating familyPdefines a norm onGline 120 sourceSource documentation
The
wordLengthwith respect to a generating familyPdefines a norm onG.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,Group.Generators,GroupNormProof uses:
GroupNorm.mk,GroupSeminorm.mk,Real, Group.Generators.wordLength6 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
noncomputable def groupNorm : GroupNorm G where …
- def
Group.Generators.normedGroupGas a metric spaceNormedGroup Gwith respect to a generating familyPline 132 sourceSource documentation
Gas a metric spaceNormedGroup Gwith respect to a generating familyP. The metric is given bydist g h = ‖g⁻¹ * h‖, where the norm is given bygroupNorm.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,Group.Generators,NormedGroupProof uses:
GroupNorm.toNormedGroup, Group.Generators.groupNormnoncomputable def normedGroup : NormedGroup G := P.groupNorm.toNormedGroup …