Documentation

LeanPool.Kurosh.Kurosh

The free-product data used by Kurosh's theorem #

This file starts the Bass--Serre extension of the finite Schreier development. The ambient free product is Mathlib's Monoid.CoprodI; in particular, the reduced-word normal form is not redefined here. The definitions below keep the two pieces of Kurosh data explicit:

The main decomposition theorem will use these definitions rather than an unstructured existential statement. This makes the double-coset indexing, the factor embeddings, and the final free-product equivalence visible to the kernel checker and to the Palomar statement surface.

The orbit type is Mathlib's MulAction.orbitRel.Quotient. Proof scaffolding shared between this project's modules lives in GraphCoveringTheory.Kurosh.Internal.

Adapted for Lean Pool from Arthur742Ramos/KuroshSubgroupTheorem, commit 911707126c8b9bb0c764bf853008fe1053c0aad9: imports, API compatibility, and proof organization were revised.

@[instance_reducible]

Classical equality used locally in this part of the Kurosh construction.

Equations
Instances For
    @[reducible, inline]
    abbrev GraphCoveringTheory.Kurosh.FreeProduct {ι : Type u_1} (G : ι → Type u) [(i : ι) → Group (G i)] :
    Type (max u_1 u)

    The indexed free product of a family of groups.

    Equations
    Instances For
      def GraphCoveringTheory.Kurosh.factorInclusion {ι : Type u_1} (G : ι → Type u) [(i : ι) → Group (G i)] (i : ι) :

      The canonical inclusion of a factor into its free product.

      Equations
      Instances For
        @[simp]
        theorem GraphCoveringTheory.Kurosh.factorInclusion_apply {ι : Type u_1} (G : ι → Type u) [(i : ι) → Group (G i)] (i : ι) (g : G i) :
        theorem GraphCoveringTheory.Kurosh.factorInclusion_injective {ι : Type u_1} (G : ι → Type u) [(i : ι) → Group (G i)] (i : ι) :

        Conjugate intersections #

        The subgroup is deliberately defined inside the ambient group first. A later construction restricts it to the subgroup H, which gives the factors that appear literally in the Kurosh decomposition.

        Conjugation of a subgroup by an ambient-group element.

        Equations
        Instances For
          def GraphCoveringTheory.Kurosh.intersectionFactor {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (i : ι) (g : FreeProduct G) :

          The ambient subgroup obtained from a Kurosh factor.

          Equations
          Instances For
            def GraphCoveringTheory.Kurosh.intersectionFactorInH {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (i : ι) (g : FreeProduct G) :

            The same factor regarded as a subgroup of H, so its inclusion into H is canonical.

            Equations
            Instances For
              theorem GraphCoveringTheory.Kurosh.intersectionFactorInH_coe_mem {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (i : ι) (g : FreeProduct G) (x : ↥(intersectionFactorInH H i g)) :
              ↑↑x ∈ intersectionFactor H i g

              The double-coset indexing type #

              Mathlib's DoubleCoset.Quotient is exactly H \ G / K. Defining the factor index this way records the classical indexing without choosing representatives prematurely. Representatives are selected only when the decomposition construction needs them.

              @[reducible, inline]
              abbrev GraphCoveringTheory.Kurosh.DoubleCosetIndex {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (i : ι) :
              Type (max u u_1)

              Double cosets of H and the image of the indexed free factor.

              Equations
              Instances For
                noncomputable def GraphCoveringTheory.Kurosh.doubleCosetRepresentative {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (i : ι) (q : DoubleCosetIndex H i) :

                A chosen representative of a double coset.

                Equations
                Instances For
                  theorem GraphCoveringTheory.Kurosh.doubleCosetIndex_eq_iff {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (i : ι) (g h : FreeProduct G) :
                  DoubleCoset.mk H (factorInclusion G i).range g = DoubleCoset.mk H (factorInclusion G i).range h ↔ ∃ a ∈ H, ∃ b ∈ (factorInclusion G i).range, h = a * g * b

                  Right-coset normal forms #

                  The Bass--Serre action is a left action on right cosets. The indexed coproduct API exposes the first syllable directly, so right-coset normal forms are obtained by applying the same operation to the inverse word. The small word reversal API here is useful independently of the later tree construction.

                  def GraphCoveringTheory.Kurosh.wordInv {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (w : Monoid.CoprodI.Word G) :

                  Invert a reduced word by reversing its letters and inverting each letter.

                  Equations
                  Instances For
                    @[simp]
                    theorem GraphCoveringTheory.Kurosh.wordInv_toList {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (w : Monoid.CoprodI.Word G) :
                    (wordInv w).toList = List.map (fun (x : (i : ι) × G i) => ⟨x.fst, x.snd⁻¹⟩) w.toList.reverse
                    theorem GraphCoveringTheory.Kurosh.wordInv_prod {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (w : Monoid.CoprodI.Word G) :
                    @[simp]
                    theorem GraphCoveringTheory.Kurosh.wordInv_wordInv {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (w : Monoid.CoprodI.Word G) :
                    def GraphCoveringTheory.Kurosh.wordLastIdx {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (w : Monoid.CoprodI.Word G) :

                    The factor index of the last letter, or none for the empty word.

                    Equations
                    Instances For
                      theorem GraphCoveringTheory.Kurosh.wordLastIdx_ne_iff {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (w : Monoid.CoprodI.Word G) (i : ι) :
                      wordLastIdx w ≠ some i ↔ ∀ l ∈ w.toList.getLast?, i ≠ l.fst

                      Removing a rightmost syllable #

                      This is the right-coset counterpart of Word.equivPair: the inverse word is split at its first syllable and then inverted again. It supplies the canonical representative of a right coset of a factor.

                      noncomputable def GraphCoveringTheory.Kurosh.rightTail {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : Monoid.CoprodI.Word G) :

                      Remove the terminal letter in factor i, if present.

                      Equations
                      Instances For
                        noncomputable def GraphCoveringTheory.Kurosh.rightHead {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : Monoid.CoprodI.Word G) :
                        G i

                        The terminal factor-i letter, or the identity if the word ends in another factor.

                        Equations
                        Instances For
                          theorem GraphCoveringTheory.Kurosh.rightTail_lastIdx_ne {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : Monoid.CoprodI.Word G) :
                          @[reducible, inline]
                          abbrev GraphCoveringTheory.Kurosh.RightFactorWord {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) :
                          Type (max 0 u u_1)

                          Reduced words representing cosets g * Gᵢ, obtained by removing the terminal i-factor.

                          Equations
                          Instances For
                            noncomputable def GraphCoveringTheory.Kurosh.rightTailCanonical {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : Monoid.CoprodI.Word G) :

                            The right tail bundled with the fact that its last index differs from i.

                            Equations
                            Instances For
                              theorem GraphCoveringTheory.Kurosh.rightTail_of_lastIdx_ne {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : Monoid.CoprodI.Word G) (hw : wordLastIdx w ≠ some i) :
                              rightTail i w = w
                              theorem GraphCoveringTheory.Kurosh.equivPair_head_ne_one_of_fstIdx_eq {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : Monoid.CoprodI.Word G) (hwi : w.fstIdx = some i) :
                              theorem GraphCoveringTheory.Kurosh.rightHead_ne_one_of_lastIdx_eq {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : Monoid.CoprodI.Word G) (hwi : wordLastIdx w = some i) :
                              theorem GraphCoveringTheory.Kurosh.right_syllable_decomposition {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : Monoid.CoprodI.Word G) :
                              noncomputable def GraphCoveringTheory.Kurosh.rightAppend {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : Monoid.CoprodI.Word G) (a : G i) (ha : a ≠ 1) (hw : wordLastIdx w ≠ some i) :

                              Append a nonidentity factor-i letter to a word ending in a different factor.

                              Equations
                              Instances For
                                theorem GraphCoveringTheory.Kurosh.wordInv_cons_rightAppend {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (a : G i) (w : Monoid.CoprodI.Word G) (hw : w.fstIdx ≠ some i) (ha : a ≠ 1) :
                                @[simp]
                                theorem GraphCoveringTheory.Kurosh.rightAppend_prod {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : Monoid.CoprodI.Word G) (a : G i) (ha : a ≠ 1) (hw : wordLastIdx w ≠ some i) :
                                theorem GraphCoveringTheory.Kurosh.rightAppend_rightTail {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : Monoid.CoprodI.Word G) (a : G i) (ha : a ≠ 1) (hw : wordLastIdx w ≠ some i) :
                                rightTail i (rightAppend i w a ha hw) = w
                                theorem GraphCoveringTheory.Kurosh.rightAppend_rightHead {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : Monoid.CoprodI.Word G) (a : G i) (ha : a ≠ 1) (hw : wordLastIdx w ≠ some i) :
                                rightHead i (rightAppend i w a ha hw) = a
                                theorem GraphCoveringTheory.Kurosh.word_equiv_mul_rightAppend {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : RightFactorWord i) (a : G i) (ha : a ≠ 1) :
                                theorem GraphCoveringTheory.Kurosh.rightTail_equiv_mul_factor {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : RightFactorWord i) (a : G i) :
                                theorem GraphCoveringTheory.Kurosh.rightTail_eq_of_prod_eq_mul_factor {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w w' : RightFactorWord i) (a a' : G i) (h : (↑w).prod * Monoid.CoprodI.of a = (↑w').prod * Monoid.CoprodI.of a') :
                                ↑w = ↑w'
                                noncomputable def GraphCoveringTheory.Kurosh.rightAppendCanonical {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : RightFactorWord i) (a : G i) (ha : a ≠ 1) :

                                Append a nonidentity letter to a canonical representative for its factor coset.

                                Equations
                                Instances For
                                  theorem GraphCoveringTheory.Kurosh.rightAppendCanonical_of_lastIdx_eq {ι : Type u_1} {G : ι → Type u} [(i : ι) → Group (G i)] (i : ι) (w : Monoid.CoprodI.Word G) (hwi : wordLastIdx w = some i) :

                                  The explicit Bass--Serre tree #

                                  The central vertices are reduced words. A factor vertex records a reduced word which is already canonical on the right for one factor. The two edge families are the central-to-factor edge and the edge obtained by appending a nontrivial factor syllable. This is the usual normal-form model of the Bass--Serre tree of an indexed free product.

                                  inductive GraphCoveringTheory.Kurosh.BassSerreVertex {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] :
                                  Type (max u v)

                                  The word model of Bass-Serre vertices: reduced words and canonical factor-coset words.

                                  Instances For
                                    inductive GraphCoveringTheory.Kurosh.BassSerreEdge {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] :
                                    BassSerreVertex G → BassSerreVertex G → Type (max u v)

                                    The directed edges of the word model, oriented away from the empty word.

                                    Instances For
                                      noncomputable def GraphCoveringTheory.Kurosh.bassSerreTree {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] :

                                      A geodesic spanning tree of the symmetrified word model.

                                      Equations
                                      Instances For

                                        Right cosets and the natural action #

                                        The canonical-word vertices above are convenient for connectivity proofs. For the group action it is cleaner to use the quotient of a group by right multiplication by a subgroup. The quotient is kept elementary here so that the stabilizer calculation does not depend on a choice of representatives.

                                        Equivalence under multiplication on the right by an element of K.

                                        Equations
                                        Instances For
                                          @[reducible, inline]

                                          Cosets represented by a * K, using the right-multiplication equivalence relation.

                                          Equations
                                          Instances For

                                            The coset represented by a group element.

                                            Equations
                                            Instances For
                                              theorem GraphCoveringTheory.Kurosh.rightCosetMk_eq_iff {P : Type w} [Group P] (K : Subgroup P) (a b : P) :
                                              rightCosetMk K a = rightCosetMk K b ↔ ∃ (k : ↥K), a * ↑k = b
                                              @[instance_reducible]
                                              Equations
                                              @[simp]
                                              theorem GraphCoveringTheory.Kurosh.rightCosetMk_smul {P : Type w} [Group P] (K : Subgroup P) (g a : P) :
                                              @[reducible, inline]
                                              abbrev GraphCoveringTheory.Kurosh.FactorCoset {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (i : ι) :
                                              Type (max u v)

                                              Cosets of the image of a free factor in the ambient free product.

                                              Equations
                                              Instances For
                                                def GraphCoveringTheory.Kurosh.factorCosetMk {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (i : ι) (g : FreeProduct G) :

                                                The factor coset represented by an element of the free product.

                                                Equations
                                                Instances For
                                                  theorem GraphCoveringTheory.Kurosh.factorCoset_mul_factor {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (i : ι) (g : FreeProduct G) (a : G i) :
                                                  inductive GraphCoveringTheory.Kurosh.RawBassSerreVertex {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] :
                                                  Type (max u v)

                                                  Bass-Serre vertices represented by group elements and factor cosets.

                                                  Instances For
                                                    inductive GraphCoveringTheory.Kurosh.RawBassSerreEdge {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] :

                                                    An edge joins an ambient group element to its coset in a free factor.

                                                    Instances For
                                                      theorem GraphCoveringTheory.Kurosh.rawBassSerre_rootedConnected {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] :
                                                      noncomputable def GraphCoveringTheory.Kurosh.rawBassSerreTree {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] :

                                                      A geodesic spanning tree of the symmetrified group-and-coset model.

                                                      Equations
                                                      Instances For
                                                        @[instance_reducible]
                                                        Equations
                                                        • One or more equations did not get rendered due to their size.
                                                        theorem GraphCoveringTheory.Kurosh.rawBassSerre_factor_fixed_iff {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (i : ι) (g : FreeProduct G) (h : ↥H) :
                                                        @[reducible, inline]
                                                        abbrev GraphCoveringTheory.Kurosh.KuroshFactorIndex {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :
                                                        Type (max v v u)

                                                        Pairs of a free-factor index and a corresponding double coset.

                                                        Equations
                                                        Instances For
                                                          noncomputable def GraphCoveringTheory.Kurosh.kuroshFactorRepresentative {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (q : KuroshFactorIndex G H) :

                                                          The chosen ambient group element for an indexed double coset.

                                                          Equations
                                                          Instances For
                                                            noncomputable def GraphCoveringTheory.Kurosh.kuroshFactorSubgroup {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (q : KuroshFactorIndex G H) :

                                                            The intersection with a conjugate free factor, regarded as a subgroup of H.

                                                            Equations
                                                            Instances For

                                                              A central Bass–Serre vertex has trivial stabilizer.

                                                              The quotient graph seen by the subgroup #

                                                              The raw tree is the universal Bass--Serre tree. The next layer records the quotient graph without choosing representatives of its vertices or edges. This is the graph on which the free part of the Kurosh decomposition is the fundamental-group contribution; the factor vertices retain the stabilizers defined above.

                                                              @[reducible, inline]

                                                              The standard Mathlib quotient of an action by its orbit relation.

                                                              Equations
                                                              Instances For

                                                                Send a point to its group-action orbit.

                                                                Equations
                                                                Instances For
                                                                  @[simp]
                                                                  theorem GraphCoveringTheory.Kurosh.actionOrbitMk_eq_iff (A X : Type w) [Group A] [MulAction A X] (x y : X) :
                                                                  actionOrbitMk A X x = actionOrbitMk A X y ↔ ∃ (a : A), a • x = y

                                                                  Orbit equality expressed by an element carrying the first point to the second. Mathlib's orbit relation uses the reverse orientation.

                                                                  theorem GraphCoveringTheory.Kurosh.actionOrbitMk_smul (A X : Type w) [Group A] [MulAction A X] (a : A) (x : X) :
                                                                  def GraphCoveringTheory.Kurosh.rawBassSerreEdgeData {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] :
                                                                  Type (max (max v u) v)

                                                                  An unbundled Bass-Serre edge is a group element paired with a factor index.

                                                                  Equations
                                                                  Instances For

                                                                    The central vertex at the source of an unbundled edge.

                                                                    Equations
                                                                    Instances For

                                                                      Translate an unbundled edge by left multiplication on its group coordinate.

                                                                      Equations
                                                                      Instances For
                                                                        @[instance_reducible]
                                                                        instance GraphCoveringTheory.Kurosh.rawBassSerreVertexSubgroupMulAction {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :
                                                                        Equations
                                                                        @[instance_reducible]
                                                                        Equations
                                                                        def GraphCoveringTheory.Kurosh.rawBassSerreEdgeDataOf {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] {a b : RawBassSerreVertex G} (e : a ⟶ b) :

                                                                        Forget the endpoints of a bundled Bass-Serre edge.

                                                                        Equations
                                                                        • One or more equations did not get rendered due to their size.
                                                                        Instances For
                                                                          def GraphCoveringTheory.Kurosh.rawBassSerreEdgeAction {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (g : FreeProduct G) {a b : RawBassSerreVertex G} (e : a ⟶ b) :
                                                                          g • a ⟶ g • b

                                                                          Translate a Bass-Serre edge and both endpoints by a group element.

                                                                          Equations
                                                                          • One or more equations did not get rendered due to their size.
                                                                          Instances For
                                                                            def GraphCoveringTheory.Kurosh.rawBassSerreSymmEdgeAction {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (g : FreeProduct G) {a b : RawBassSerreVertex G} (e : a ⟶ b) :
                                                                            g • a ⟶ g • b

                                                                            Translate either orientation of a Bass-Serre edge.

                                                                            Equations
                                                                            • One or more equations did not get rendered due to their size.
                                                                            Instances For
                                                                              @[reducible, inline]
                                                                              abbrev GraphCoveringTheory.Kurosh.RawBassSerreOrbitVertex {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :
                                                                              Type (max u v)

                                                                              Vertex orbits for the action of the subgroup H on the Bass-Serre graph.

                                                                              Equations
                                                                              Instances For
                                                                                @[reducible, inline]
                                                                                abbrev GraphCoveringTheory.Kurosh.RawBassSerreOrbitEdge {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :
                                                                                Type (max u v)

                                                                                Edge orbits for the action of the subgroup H on the Bass-Serre graph.

                                                                                Equations
                                                                                Instances For
                                                                                  noncomputable def GraphCoveringTheory.Kurosh.kuroshFactorOrbitVertex {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (q : KuroshFactorIndex G H) :

                                                                                  The factor vertex in the quotient graph represented by a Kurosh index.

                                                                                  Equations
                                                                                  • One or more equations did not get rendered due to their size.
                                                                                  Instances For

                                                                                    The source vertex orbit of an edge orbit.

                                                                                    Equations
                                                                                    • One or more equations did not get rendered due to their size.
                                                                                    Instances For

                                                                                      The target vertex orbit of an edge orbit.

                                                                                      Equations
                                                                                      • One or more equations did not get rendered due to their size.
                                                                                      Instances For
                                                                                        @[reducible]

                                                                                        The quotient quiver whose edges are subgroup orbits with prescribed endpoints.

                                                                                        Equations
                                                                                        • One or more equations did not get rendered due to their size.
                                                                                        Instances For
                                                                                          def GraphCoveringTheory.Kurosh.rawBassSerreOrbitEdgeMap {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreVertex G} (e : a ⟶ b) :

                                                                                          Project a Bass-Serre edge to the quotient quiver.

                                                                                          Equations
                                                                                          • One or more equations did not get rendered due to their size.
                                                                                          Instances For

                                                                                            The projection from the Bass-Serre quiver to its subgroup-orbit quiver.

                                                                                            Equations
                                                                                            • One or more equations did not get rendered due to their size.
                                                                                            Instances For

                                                                                              The orbit projection with values in the symmetrified quotient quiver.

                                                                                              Equations
                                                                                              • One or more equations did not get rendered due to their size.
                                                                                              Instances For
                                                                                                noncomputable def GraphCoveringTheory.Kurosh.rawBassSerreOrbitTree {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :

                                                                                                A geodesic spanning tree of the symmetrified quotient graph.

                                                                                                Equations
                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                Instances For
                                                                                                  @[instance_reducible]
                                                                                                  Equations
                                                                                                  • One or more equations did not get rendered due to their size.
                                                                                                  @[instance_reducible]

                                                                                                  The unique path from the chosen root to a vertex of the quotient spanning tree.

                                                                                                  Equations
                                                                                                  Instances For
                                                                                                    def GraphCoveringTheory.Kurosh.rawBassSerreOrbitRoot {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :

                                                                                                    The subgroup orbit of the central vertex represented by the identity.

                                                                                                    Equations
                                                                                                    • One or more equations did not get rendered due to their size.
                                                                                                    Instances For
                                                                                                      noncomputable def GraphCoveringTheory.Kurosh.rawOrbitAlign {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {x y : RawBassSerreVertex G} (h : actionOrbitMk (↥H) (RawBassSerreVertex G) x = actionOrbitMk (↥H) (RawBassSerreVertex G) y) :
                                                                                                      ↥H

                                                                                                      Choose an element of H carrying one representative of an orbit to another.

                                                                                                      Equations
                                                                                                      Instances For
                                                                                                        theorem GraphCoveringTheory.Kurosh.rawOrbitAlign_spec {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {x y : RawBassSerreVertex G} (h : actionOrbitMk (↥H) (RawBassSerreVertex G) x = actionOrbitMk (↥H) (RawBassSerreVertex G) y) :
                                                                                                        ↑(rawOrbitAlign G H h) • x = y

                                                                                                        The prefunctor forgetting membership in a wide subquiver.

                                                                                                        Equations
                                                                                                        Instances For

                                                                                                          Include the quotient spanning tree into the symmetrified quotient graph.

                                                                                                          Equations
                                                                                                          • One or more equations did not get rendered due to their size.
                                                                                                          Instances For
                                                                                                            def GraphCoveringTheory.Kurosh.rawTreeEdgeMap {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : WideSubquiver.toType (Quiver.Symmetrify (RawBassSerreOrbitVertex G H)) (rawBassSerreOrbitTree G H)} (e : a ⟶ b) :
                                                                                                            (have this := a; this) ⟶ have this := b; this

                                                                                                            Forget a quotient-tree edge's membership proof.

                                                                                                            Equations
                                                                                                            Instances For
                                                                                                              @[reducible]
                                                                                                              def GraphCoveringTheory.Kurosh.rawTreeQuiver {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :

                                                                                                              The quotient spanning tree expressed as a quiver on the ambient vertex type.

                                                                                                              Equations
                                                                                                              • One or more equations did not get rendered due to their size.
                                                                                                              Instances For
                                                                                                                @[irreducible]
                                                                                                                def GraphCoveringTheory.Kurosh.rawTreePathMap {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} :

                                                                                                                Forget tree-membership proofs along a path in the quotient spanning tree.

                                                                                                                Equations
                                                                                                                Instances For
                                                                                                                  noncomputable def GraphCoveringTheory.Kurosh.rawTreeQuiverRoot {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :

                                                                                                                  The root of the quotient spanning tree on the ambient vertex type.

                                                                                                                  Equations
                                                                                                                  Instances For
                                                                                                                    noncomputable def GraphCoveringTheory.Kurosh.rawTreePath {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (a : RawBassSerreOrbitVertex G H) :

                                                                                                                    The unique rooted tree path to a quotient vertex.

                                                                                                                    Equations
                                                                                                                    Instances For
                                                                                                                      theorem GraphCoveringTheory.Kurosh.rawTreePathMap_cons_raw {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b c : RawBassSerreOrbitVertex G H} (p : Quiver.Path a b) (e : b ⟶ c) :
                                                                                                                      rawTreePathMap G H (p.cons e) = (rawTreePathMap G H p).cons (have this := ↑e; this)
                                                                                                                      noncomputable def GraphCoveringTheory.Kurosh.rawTreeLiftPath {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {b : RawBassSerreOrbitVertex G H} (_p : Quiver.Path (rawBassSerreOrbitRoot G H) b) :

                                                                                                                      Choose a representative of a path endpoint by successively lifting quotient edges.

                                                                                                                      Equations
                                                                                                                      Instances For
                                                                                                                        noncomputable def GraphCoveringTheory.Kurosh.rawTreeRepresentative {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (b : RawBassSerreOrbitVertex G H) :

                                                                                                                        The orbit representative obtained by lifting the chosen rooted tree path.

                                                                                                                        Equations
                                                                                                                        • One or more equations did not get rendered due to their size.
                                                                                                                        Instances For
                                                                                                                          noncomputable def GraphCoveringTheory.Kurosh.quotientEdgeRawData {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (e : a ⟶ b) :

                                                                                                                          Choose an unbundled representative of an edge in the quotient graph.

                                                                                                                          Equations
                                                                                                                          Instances For
                                                                                                                            theorem GraphCoveringTheory.Kurosh.quotientEdgeRawData_mk {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (e : a ⟶ b) :
                                                                                                                            noncomputable def GraphCoveringTheory.Kurosh.quotientEdgeSourceAlign {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (e : a ⟶ b) :
                                                                                                                            ↥H

                                                                                                                            Align an edge representative's source with the chosen orbit representative.

                                                                                                                            Equations
                                                                                                                            Instances For
                                                                                                                              noncomputable def GraphCoveringTheory.Kurosh.quotientEdgeAlignedTarget {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (e : a ⟶ b) :

                                                                                                                              The target after translating an edge to align its source.

                                                                                                                              Equations
                                                                                                                              • One or more equations did not get rendered due to their size.
                                                                                                                              Instances For
                                                                                                                                noncomputable def GraphCoveringTheory.Kurosh.quotientEdgeTargetAlign {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (e : a ⟶ b) :
                                                                                                                                ↥H

                                                                                                                                Align the source-adjusted target with its chosen orbit representative.

                                                                                                                                Equations
                                                                                                                                Instances For
                                                                                                                                  noncomputable def GraphCoveringTheory.Kurosh.quotientEdgeDirectTargetAlign {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (e : a ⟶ b) :
                                                                                                                                  ↥H

                                                                                                                                  Align the raw target directly with its chosen orbit representative.

                                                                                                                                  Equations
                                                                                                                                  Instances For
                                                                                                                                    noncomputable def GraphCoveringTheory.Kurosh.quotientEdgeLabel {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (e : a ⟶ b) :
                                                                                                                                    ↥H

                                                                                                                                    The subgroup label of a quotient edge, normalized to the identity on tree edges.

                                                                                                                                    Equations
                                                                                                                                    • One or more equations did not get rendered due to their size.
                                                                                                                                    Instances For
                                                                                                                                      noncomputable def GraphCoveringTheory.Kurosh.quotientEdgeCoherentSourceAlign {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (e : a ⟶ b) :
                                                                                                                                      ↥H

                                                                                                                                      Choose a source alignment compatible with the normalized edge label.

                                                                                                                                      Equations
                                                                                                                                      • One or more equations did not get rendered due to their size.
                                                                                                                                      Instances For

                                                                                                                                        Label quotient edges by subgroup elements in the one-object groupoid.

                                                                                                                                        Equations
                                                                                                                                        • One or more equations did not get rendered due to their size.
                                                                                                                                        Instances For

                                                                                                                                          Recover the original vertex from an object of the free groupoid.

                                                                                                                                          Equations
                                                                                                                                          Instances For
                                                                                                                                            @[instance_reducible]

                                                                                                                                            The quiver underlying the category structure of the free groupoid.

                                                                                                                                            Equations
                                                                                                                                            Instances For
                                                                                                                                              @[instance_reducible]

                                                                                                                                              Original quiver arrows, lifted to the universe of free groupoid morphisms.

                                                                                                                                              Equations
                                                                                                                                              • One or more equations did not get rendered due to their size.
                                                                                                                                              Instances For

                                                                                                                                                Include a lifted generating arrow into the free groupoid.

                                                                                                                                                Equations
                                                                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                                                                Instances For
                                                                                                                                                  @[instance_reducible]
                                                                                                                                                  Equations
                                                                                                                                                  • One or more equations did not get rendered due to their size.
                                                                                                                                                  @[reducible, inline]
                                                                                                                                                  abbrev GraphCoveringTheory.Kurosh.KuroshFreePart {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :
                                                                                                                                                  Type (max u v)

                                                                                                                                                  The free group contributed by loops in the quotient Bass--Serre graph.

                                                                                                                                                  Equations
                                                                                                                                                  • One or more equations did not get rendered due to their size.
                                                                                                                                                  Instances For
                                                                                                                                                    noncomputable def GraphCoveringTheory.Kurosh.kuroshFreePartHom {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :

                                                                                                                                                    Evaluate loops in the quotient graph as elements of the subgroup H.

                                                                                                                                                    Equations
                                                                                                                                                    • One or more equations did not get rendered due to their size.
                                                                                                                                                    Instances For

                                                                                                                                                      The chosen tree path as a morphism in the quotient graph's free groupoid.

                                                                                                                                                      Equations
                                                                                                                                                      • One or more equations did not get rendered due to their size.
                                                                                                                                                      Instances For
                                                                                                                                                        noncomputable def GraphCoveringTheory.Kurosh.quotientEdgeLoop {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (e : a ⟶ b) :

                                                                                                                                                        Close a quotient edge to a based loop using the chosen tree paths.

                                                                                                                                                        Equations
                                                                                                                                                        • One or more equations did not get rendered due to their size.
                                                                                                                                                        Instances For

                                                                                                                                                          Evaluate a morphism of the quotient free groupoid using subgroup edge labels.

                                                                                                                                                          Equations
                                                                                                                                                          Instances For
                                                                                                                                                            noncomputable def GraphCoveringTheory.Kurosh.quotientSymmEdgeLabel {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (e : a ⟶ b) :
                                                                                                                                                            ↥H

                                                                                                                                                            The subgroup label of an oriented quotient edge, inverted for reverse edges.

                                                                                                                                                            Equations
                                                                                                                                                            Instances For
                                                                                                                                                              noncomputable def GraphCoveringTheory.Kurosh.quotientRawPathValue {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (p : Quiver.Path a b) :
                                                                                                                                                              ↥H

                                                                                                                                                              Multiply the labels along a symmetrified quotient path.

                                                                                                                                                              Equations
                                                                                                                                                              Instances For
                                                                                                                                                                theorem GraphCoveringTheory.Kurosh.quotientRawPathValue_cons {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b c : RawBassSerreOrbitVertex G H} (p : Quiver.Path a b) (e : b ⟶ c) :
                                                                                                                                                                noncomputable def GraphCoveringTheory.Kurosh.rawBassSerreOrbitTreeRootVertex {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :

                                                                                                                                                                The root of the quotient spanning tree as an ambient quotient vertex.

                                                                                                                                                                Equations
                                                                                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                                                                                Instances For
                                                                                                                                                                  def GraphCoveringTheory.Kurosh.rawTreeInclusionMapPathAsRaw {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : WideSubquiver.toType (Quiver.Symmetrify (RawBassSerreOrbitVertex G H)) (rawBassSerreOrbitTree G H)} (p : Quiver.Path a b) :
                                                                                                                                                                  Quiver.Path (have this := a; this) (have this := b; this)

                                                                                                                                                                  Map a tree path to the symmetrified quotient graph without bundled tree vertices.

                                                                                                                                                                  Equations
                                                                                                                                                                  Instances For

                                                                                                                                                                    Include a rooted tree path and transport its source to the specified quotient root.

                                                                                                                                                                    Equations
                                                                                                                                                                    • One or more equations did not get rendered due to their size.
                                                                                                                                                                    Instances For
                                                                                                                                                                      noncomputable def GraphCoveringTheory.Kurosh.rawTreePathAtRoot {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (a : RawBassSerreOrbitVertex G H) :

                                                                                                                                                                      The chosen quotient-tree path with its source transported to the specified root.

                                                                                                                                                                      Equations
                                                                                                                                                                      • One or more equations did not get rendered due to their size.
                                                                                                                                                                      Instances For
                                                                                                                                                                        theorem GraphCoveringTheory.Kurosh.rawTreePathAtRoot_cons {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b c : RawBassSerreOrbitVertex G H} (p : Quiver.Path a b) (e : b ⟶ c) :
                                                                                                                                                                        rawTreePathMap G H (p.cons e) = (rawTreePathMap G H p).cons (have this := ↑e; this)
                                                                                                                                                                        theorem GraphCoveringTheory.Kurosh.quotientSymmEdgeLabel_tree {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (e : a ⟶ b) (he : e ∈ rawBassSerreOrbitTree G H a b) :
                                                                                                                                                                        theorem GraphCoveringTheory.Kurosh.quotientRawPathValue_tree {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (p : Quiver.Path a b) :
                                                                                                                                                                        theorem GraphCoveringTheory.Kurosh.kuroshFreePartHom_apply {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (x : KuroshFreePart G H) :
                                                                                                                                                                        theorem GraphCoveringTheory.Kurosh.kuroshFreePartHom_quotientEdgeLoop_tree_pos {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (e : a ⟶ b) (he : e.toPos ∈ rawBassSerreOrbitTree G H a b) :
                                                                                                                                                                        theorem GraphCoveringTheory.Kurosh.kuroshFreePartHom_quotientEdgeLoop_tree_neg {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) {a b : RawBassSerreOrbitVertex G H} (e : a ⟶ b) (he : e.toNeg ∈ rawBassSerreOrbitTree G H b a) :
                                                                                                                                                                        instance GraphCoveringTheory.Kurosh.kuroshFreePart_isFree {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :
                                                                                                                                                                        @[reducible, inline]
                                                                                                                                                                        abbrev GraphCoveringTheory.Kurosh.KuroshComponentIndex {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :
                                                                                                                                                                        Type (max (max v u) u_1)

                                                                                                                                                                        Index set for the visible Kurosh factors together with the free part.

                                                                                                                                                                        Equations
                                                                                                                                                                        Instances For
                                                                                                                                                                          def GraphCoveringTheory.Kurosh.KuroshComponent {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :
                                                                                                                                                                          KuroshComponentIndex G H → Type (max (u + 1) (v + 1))

                                                                                                                                                                          The component group at a Kurosh factor or at the free quotient graph.

                                                                                                                                                                          Equations
                                                                                                                                                                          • One or more equations did not get rendered due to their size.
                                                                                                                                                                          Instances For
                                                                                                                                                                            @[instance_reducible]
                                                                                                                                                                            noncomputable instance GraphCoveringTheory.Kurosh.kuroshComponentGroup {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (q : KuroshComponentIndex G H) :
                                                                                                                                                                            Equations
                                                                                                                                                                            • One or more equations did not get rendered due to their size.

                                                                                                                                                                            The vertex-group version is the convenient graph-of-groups presentation. It retains the (trivial) central vertex groups until the final reduction to the usual factor-only Kurosh indexing.

                                                                                                                                                                            @[reducible, inline]
                                                                                                                                                                            noncomputable abbrev GraphCoveringTheory.Kurosh.treeVertexStabilizer {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (a : RawBassSerreOrbitVertex G H) :

                                                                                                                                                                            The stabilizer in H of the chosen representative of a quotient vertex.

                                                                                                                                                                            Equations
                                                                                                                                                                            Instances For
                                                                                                                                                                              @[reducible, inline]
                                                                                                                                                                              abbrev GraphCoveringTheory.Kurosh.TreeKuroshComponentIndex {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :
                                                                                                                                                                              Type (max (max v u) u_1)

                                                                                                                                                                              All quotient vertices, together with one additional index for the free part.

                                                                                                                                                                              Equations
                                                                                                                                                                              Instances For
                                                                                                                                                                                def GraphCoveringTheory.Kurosh.TreeKuroshComponent {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :
                                                                                                                                                                                TreeKuroshComponentIndex G H → Type (max (u + 1) (v + 1))

                                                                                                                                                                                The family of vertex stabilizers together with the quotient graph's loop group.

                                                                                                                                                                                Equations
                                                                                                                                                                                • One or more equations did not get rendered due to their size.
                                                                                                                                                                                Instances For
                                                                                                                                                                                  @[instance_reducible]
                                                                                                                                                                                  noncomputable instance GraphCoveringTheory.Kurosh.treeKuroshComponentGroup {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (q : TreeKuroshComponentIndex G H) :
                                                                                                                                                                                  Equations
                                                                                                                                                                                  • One or more equations did not get rendered due to their size.
                                                                                                                                                                                  @[reducible, inline]
                                                                                                                                                                                  abbrev GraphCoveringTheory.Kurosh.TreeKuroshProduct {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :
                                                                                                                                                                                  Type (max (max (max u v) u_1) (u + 1) (v + 1))

                                                                                                                                                                                  The free product of all vertex stabilizers and the free part.

                                                                                                                                                                                  Equations
                                                                                                                                                                                  Instances For
                                                                                                                                                                                    noncomputable def GraphCoveringTheory.Kurosh.treeKuroshComponentHom {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (q : TreeKuroshComponentIndex G H) :

                                                                                                                                                                                    Map each stabilizer by inclusion and the free part by evaluation in H.

                                                                                                                                                                                    Equations
                                                                                                                                                                                    • One or more equations did not get rendered due to their size.
                                                                                                                                                                                    Instances For
                                                                                                                                                                                      noncomputable def GraphCoveringTheory.Kurosh.treeKuroshProductToH {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :

                                                                                                                                                                                      The homomorphism induced by the stabilizer inclusions and free-part evaluation.

                                                                                                                                                                                      Equations
                                                                                                                                                                                      Instances For
                                                                                                                                                                                        noncomputable def GraphCoveringTheory.Kurosh.treeKuroshVertexInclusion {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (a : RawBassSerreOrbitVertex G H) :

                                                                                                                                                                                        Include a vertex stabilizer as a factor in the tree Kurosh product.

                                                                                                                                                                                        Equations
                                                                                                                                                                                        • One or more equations did not get rendered due to their size.
                                                                                                                                                                                        Instances For
                                                                                                                                                                                          noncomputable def GraphCoveringTheory.Kurosh.treeKuroshFreeInclusion {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :

                                                                                                                                                                                          Include the quotient graph's loop group as the free factor in the tree product.

                                                                                                                                                                                          Equations
                                                                                                                                                                                          • One or more equations did not get rendered due to their size.
                                                                                                                                                                                          Instances For
                                                                                                                                                                                            @[simp]
                                                                                                                                                                                            theorem GraphCoveringTheory.Kurosh.treeKuroshProductToH_vertex {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (a : RawBassSerreOrbitVertex G H) (x : ↥(treeVertexStabilizer G H a)) :
                                                                                                                                                                                            @[simp]
                                                                                                                                                                                            theorem GraphCoveringTheory.Kurosh.treeKuroshProductToH_free {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) (x : KuroshFreePart G H) :
                                                                                                                                                                                            @[reducible, inline]
                                                                                                                                                                                            abbrev GraphCoveringTheory.Kurosh.KuroshProduct {ι : Type v} (G : ι → Type u) [(i : ι) → Group (G i)] (H : Subgroup (FreeProduct G)) :
                                                                                                                                                                                            Type (max (max (max u v) u_1) (u + 1) (v + 1))

                                                                                                                                                                                            The explicit free product whose factors are the Kurosh stabilizers and free part.

                                                                                                                                                                                            Equations
                                                                                                                                                                                            Instances For