Kurosh Tree #
Adapted for Lean Pool from Arthur742Ramos/KuroshSubgroupTheorem,
commit 911707126c8b9bb0c764bf853008fe1053c0aad9: imports, API compatibility,
and proof organization were revised.
Classical equality used locally in this part of the Kurosh construction.
Instances For
All edges in the word model, bundled with their endpoints.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Encode a word-model edge without its dependent endpoint indices.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Recover a bundled word-model edge from its constructor code.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The target of a bundled word-model edge.
Equations
Instances For
Compute the target vertex directly from an edge code.
Equations
- GraphCoveringTheory.Kurosh.Internal.bassEdgeCodeTarget G (Sum.inl ⟨w, ⟨i, hw⟩⟩) = GraphCoveringTheory.Kurosh.BassSerreVertex.factor i ⟨w, hw⟩
- GraphCoveringTheory.Kurosh.Internal.bassEdgeCodeTarget G (Sum.inr ⟨i, ⟨w, ⟨a, ha⟩⟩⟩) = GraphCoveringTheory.Kurosh.BassSerreVertex.central (GraphCoveringTheory.Kurosh.rightAppendCanonical i w a ha)
Instances For
Twice the reduced-word length, plus one at factor vertices.
Equations
Instances For
The directed word model is an arborescence rooted at the empty word.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The word-length height function on symmetrified word-model vertices.
Equations
Instances For
Include the directed word model into its symmetrification.
Equations
- GraphCoveringTheory.Kurosh.Internal.bassToSymm G = { obj := id, map := fun {X Y : GraphCoveringTheory.Kurosh.BassSerreVertex G} (e : X ⟶ Y) => e.toPos }
Instances For
Choose the canonical reduced-word representative of a factor coset.
Equations
Instances For
Convert a group-and-coset vertex into its canonical word-model vertex.
Equations
- One or more equations did not get rendered due to their size.
- GraphCoveringTheory.Kurosh.Internal.rawCanonicalVertex G (GraphCoveringTheory.Kurosh.RawBassSerreVertex.central g) = GraphCoveringTheory.Kurosh.BassSerreVertex.central (Monoid.CoprodI.Word.equiv g)
Instances For
Evaluate a word-model vertex in the group-and-coset model.
Equations
- One or more equations did not get rendered due to their size.
- GraphCoveringTheory.Kurosh.Internal.bassToRawVertex G (GraphCoveringTheory.Kurosh.BassSerreVertex.central w) = GraphCoveringTheory.Kurosh.RawBassSerreVertex.central w.prod
Instances For
The chosen word-model spanning tree on the ambient vertex type.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The unique path in the chosen word-model tree from the empty word.
Equations
Instances For
Forget membership in the chosen word-model spanning tree along a path.
Equations
Instances For
Interpret a symmetrified word-model path in its free groupoid.
Equations
- One or more equations did not get rendered due to their size.
- GraphCoveringTheory.Kurosh.Internal.bassPathHom G Quiver.Path.nil = CategoryTheory.CategoryStruct.id ((Quiver.FreeGroupoid.of (GraphCoveringTheory.Kurosh.BassSerreVertex G)).obj x)
Instances For
Interpret a symmetrified quiver path in the quiver's free groupoid.
Equations
- One or more equations did not get rendered due to their size.
- GraphCoveringTheory.Kurosh.Internal.freePathHom Quiver.Path.nil = CategoryTheory.CategoryStruct.id ((Quiver.FreeGroupoid.of V).obj a)
- GraphCoveringTheory.Kurosh.Internal.freePathHom (p.cons (Sum.inl f)) = CategoryTheory.CategoryStruct.comp (GraphCoveringTheory.Kurosh.Internal.freePathHom p) ((Quiver.FreeGroupoid.of V).map f)
Instances For
Evaluate word-model edges as morphisms in the raw model's free groupoid.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Express group-and-coset edges as paths in the word model's free groupoid.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Extend word evaluation to a functor between the two free groupoids.
Equations
Instances For
Extend canonical word representatives to a functor between the two free groupoids.
Equations
Instances For
All edges of the group-and-coset model, bundled with their endpoints.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The composite converting raw edges to word-model paths and evaluating them back.
Equations
Instances For
All quotient-graph edges bundled with their endpoints.
Equations
- GraphCoveringTheory.Kurosh.Internal.orbitAllEdge G H = ((a : GraphCoveringTheory.Kurosh.RawBassSerreOrbitVertex G H) × (b : GraphCoveringTheory.Kurosh.RawBassSerreOrbitVertex G H) × (a ⟶ b))
Instances For
The union of the vertex stabilizers and the quotient-edge labels inside H.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The subgroup generated by vertex stabilizers and quotient-edge labels.
Equations
Instances For
The raw model's chosen spanning tree on the ambient vertex type.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Choose a group element sending one point to another in the same orbit.
Instances For
Align a raw edge with the chosen representative of its quotient edge.
Equations
Instances For
The stabilizer correction required when traversing a positive raw edge.
Equations
Instances For
The stabilizer correction required when traversing a negative raw edge.
Equations
Instances For
Align the endpoint of a rooted raw tree path using the subgroup generated by tree data.
Equations
- One or more equations did not get rendered due to their size.
- GraphCoveringTheory.Kurosh.Internal.rawPathAlignmentGenerated G H Quiver.Path.nil = ⟨1, ⋯⟩
Instances For
The element of the tree Kurosh product reconstructed along a rooted raw tree path.
Equations
- One or more equations did not get rendered due to their size.
- GraphCoveringTheory.Kurosh.Internal.rawPathProduct G H Quiver.Path.nil = 1
Instances For
The unique path in the raw spanning tree from the identity vertex.