ProCGroups.ReidemeisterSchreier.Profinite.OpenSubgroups.ExactRightSchreierGeneration

11 Theorems | 1 Instance

Using a transported right-coset section and the wreath-product embedding, this module identifies the concrete right-Schreier cocycles that topologically generate an open subgroup. It also proves the finite-quotient lifting statements used to recognize the resulting dense abstract free group as the required pro-\(C\) completion.

imports
Imported by

Declarations

omit [TopologicalSpace X] [Group F] [TopologicalSpace F] [IsTopologicalGroup F] ι φ π in
theorem profinite_minimalPower_schreierGenerator_lifts_discrete
    [DecidableEq X]
    (β : FreeGroup X →* P) (K : Subgroup P) (x : X) {N : ℕ}
    (hN : 0 < N)
    (hpow : β ((FreeGroup.of x) ^ N) ∈ K)
    (hmin : ∀ m : ℕ, 0 < m → m < N → β ((FreeGroup.of x) ^ m) ∉ K) :
    ∃ T : Set (FreeGroup X), ∃ hT :
        IsRightSchreierTransversal (X := X) (Subgroup.comap β K) T,
      (FreeGroup.of x) ^ (N - 1) ∈ T ∧
        schreierGenerator (X := X) hT ((FreeGroup.of x) ^ (N - 1)) x =
          ⟨(FreeGroup.of x) ^ N, hpow⟩

The distinguished profinite minimal-power Schreier generator agrees with the generator supplied by the discrete minimal-power Schreier-transversal theorem for the finite quotient/comap subgroup.

Show Lean proof
omit [TopologicalSpace X] [TopologicalSpace F] [IsTopologicalGroup F] in
theorem map_schreierGenerator_eq_cocycle
    [DecidableEq X]
    {T : Set (FreeGroup X)}
    (hT : IsRightSchreierTransversal (X := X) (Subgroup.comap (π.comp φ) K) T)
    (hβsurj : Function.Surjective (π.comp φ))
    {t : FreeGroup X} (ht : t ∈ T) (x : X) :
    let τ := rightSchreierSectionOfComap π φ (π.comp φ) K rfl hβsurj hT
    let hτ := rightSchreierSectionOfComap_spec π φ (π.comp φ) K rfl hβsurj hT
    let Hc : Subgroup F := Subgroup.comap π K
    rightQuotientSectionCocycle (H := Hc) τ hτ (φ (FreeGroup.of x))
        (Quotient.mk'' (φ t)) =
      ⟨φ (schreierGenerator (X := X) hT t x), by
        change (π.comp φ) ↑(schreierGenerator (X := X) hT t x) ∈ K
        exact (schreierGenerator (X := X) hT t x).2⟩

On elements of the abstract Schreier transversal, the transported cocycle in the ambient group matches the image of the discrete Schreier generator.

Show Lean proof
omit [TopologicalSpace X] [TopologicalSpace F] [IsTopologicalGroup F] in
theorem rightQuotientSectionCocycle_eq_map_schreierGenerator_of_comap
    [DecidableEq X]
    {T : Set (FreeGroup X)}
    (hT : IsRightSchreierTransversal (X := X) (Subgroup.comap (π.comp φ) K) T)
    (hβsurj : Function.Surjective (π.comp φ))
    {t : FreeGroup X} (ht : t ∈ T) (x : X) :
    let τ := rightSchreierSectionOfComap π φ (π.comp φ) K rfl hβsurj hT
    let hτ := rightSchreierSectionOfComap_spec π φ (π.comp φ) K rfl hβsurj hT
    let Hc : Subgroup F := Subgroup.comap π K
    rightQuotientSectionCocycle (H := Hc) τ hτ (φ (FreeGroup.of x))
        (Quotient.mk'' (φ t)) =
      ⟨φ (schreierGenerator (X := X) hT t x), by
        change (π.comp φ) ↑(schreierGenerator (X := X) hT t x) ∈ K
        exact (schreierGenerator (X := X) hT t x).2⟩

On elements of the abstract Schreier transversal, the transported right Schreier cocycle in the ambient group is the image of the discrete Schreier generator.

Show Lean proof
omit [TopologicalSpace X] [CompactSpace F] [T2Space F] [TotallyDisconnectedSpace F] in
theorem topologicallyGenerates_range_transportedCocycle
    [DecidableEq X]
    {T : Set (FreeGroup X)}
    (hT : IsRightSchreierTransversal (X := X) (Subgroup.comap (π.comp φ) K) T)
    (hβsurj : Function.Surjective (π.comp φ))
    (hφdense :
      DenseRange
        ({ toFun := fun g : Subgroup.comap (π.comp φ) K => ⟨φ g.1, g.2⟩
           map_one' := by simp only [OneMemClass.coe_one, map_one, Subgroup.mk_eq_one]
           map_mul' := by
             intro a b
             ext
             simp only [Subgroup.coe_mul, map_mul]} :
          Subgroup.comap (π.comp φ) K →* ↥(Subgroup.comap π K))) :
    let τ := rightSchreierSectionOfComap π φ (π.comp φ) K rfl hβsurj hT
    let hτ := rightSchreierSectionOfComap_spec π φ (π.comp φ) K rfl hβsurj hT
    let κ :
        Quotient (QuotientGroup.rightRel (Subgroup.comap π K)) × X →
          ↥(Subgroup.comap π K) :=
      fun p =>
        rightQuotientSectionCocycle (H := Subgroup.comap π K) τ hτ (φ (FreeGroup.of p.2)) p.1
    ProCGroups.Generation.TopologicallyGenerates (G := ↥(Subgroup.comap π K)) (Set.range κ)

The transported right Schreier cocycle topologically generates the ambient subgroup as soon as the dense abstract free subgroup remains dense after restricting to that subgroup.

Show Lean proof
omit [TopologicalSpace Y] in
theorem topologicallyGenerates_topologicalClosure_of_range
    (ξ : Y → G) :
    let W : Subgroup G := (Subgroup.closure (Set.range ξ)).topologicalClosure
    let ξW : Y → W := fun y =>
      ⟨ξ y, Subgroup.le_topologicalClosure _ (Subgroup.subset_closure ⟨y, rfl⟩)⟩
    ProCGroups.Generation.TopologicallyGenerates (G := W) (Set.range ξW)

The topological closure of the subgroup generated by the range of a map is itself topologically generated by that range, viewed inside the closed subgroup.

Show Lean proof
omit [IsTopologicalGroup A] in
theorem continuousMonoidHom_eq_of_agrees_on_topologicallyGeneratingSet
    {X : Set G}
    (hX : ProCGroups.Generation.TopologicallyGenerates (G := G) X)
    {f g : G →* A} (hf : Continuous f) (hg : Continuous g)
    (hfg : Set.EqOn f g X) :
    f = g

Continuous homomorphisms into a Hausdorff topological group are determined by their values on any topologically generating set. It is a continuity claim, checked through the topology generated by finite-stage projections.

Show Lean proof
instance instMulActionRightCosetComap :
    MulAction F (Quotient (QuotientGroup.rightRel (Subgroup.comap π K))) :=
  rightCosetMulAction (Subgroup.comap π K)

The right-coset comap carries the natural multiplication action induced by the subgroup map.

theorem wreathLeftCoordinate_basepoint_of_transversalWord
    (hT : IsRightSchreierTransversal (X := X) (Subgroup.comap (π.comp φ) K) T)
    (ψ : F →* PermutationalWreathProduct A
      (Quotient (QuotientGroup.rightRel (Subgroup.comap π K))) F)
    (hψ :
      (SemidirectProduct.rightHom :
          PermutationalWreathProduct A
            (Quotient (QuotientGroup.rightRel (Subgroup.comap π K))) F →* F).comp ψ =
        MonoidHom.id F)
    (hone :
      ∀ {t : FreeGroup X}, t ∈ T → ∀ x : X,
        schreierGenerator (X := X) hT t x = 1 →
          wreathLeftCoordinate ψ
            (Quotient.mk'' (φ t) :
              Quotient (QuotientGroup.rightRel (Subgroup.comap π K)))
            (φ (FreeGroup.of x)) = 1)
    (t : FreeGroup X) (ht : t ∈ T) :
    wreathLeftCoordinate ψ
      (Quotient.mk'' (1 : F) :
        Quotient (QuotientGroup.rightRel (Subgroup.comap π K)))
      (φ t) = 1

On a transported Schreier transversal, basepoint coordinates are trivial once every tree-edge Schreier generator maps to \(1\).

Show Lean proof
theorem wreathLeftCoordinate_basepoint_of_rightSchreierSectionOfComap
    (hT : IsRightSchreierTransversal (X := X) (Subgroup.comap (π.comp φ) K) T)
    (hβsurj : Function.Surjective (π.comp φ))
    (ψ : F →* PermutationalWreathProduct A
      (Quotient (QuotientGroup.rightRel (Subgroup.comap π K))) F)
    (hψ :
      (SemidirectProduct.rightHom :
          PermutationalWreathProduct A
            (Quotient (QuotientGroup.rightRel (Subgroup.comap π K))) F →* F).comp ψ =
        MonoidHom.id F)
    (hone :
      ∀ {t : FreeGroup X}, t ∈ T → ∀ x : X,
        schreierGenerator (X := X) hT t x = 1 →
          wreathLeftCoordinate ψ
            (Quotient.mk'' (φ t) :
              Quotient (QuotientGroup.rightRel (Subgroup.comap π K)))
            (φ (FreeGroup.of x)) = 1)
    (q : Quotient (QuotientGroup.rightRel (Subgroup.comap π K))) :
    wreathLeftCoordinate ψ
      (Quotient.mk'' (1 : F) :
        Quotient (QuotientGroup.rightRel (Subgroup.comap π K)))
      (rightSchreierSectionOfComap π φ (π.comp φ) K rfl hβsurj hT q) = 1

The transported Schreier section has trivial basepoint coordinate whenever the tree-edge generators do.

Show Lean proof
theorem exists_continuousFiniteQuotientLift_of_comap_freeGroupLift
    (C : ProCGroups.FiniteGroupClass.{u})
    (hForm : ProCGroups.FiniteGroupClass.Formation C)
    (hSub : ProCGroups.FiniteGroupClass.SubgroupClosed C)
    (hIso : ProCGroups.FiniteGroupClass.IsomClosed C)
    (hQuot : ProCGroups.FiniteGroupClass.QuotientClosed C)
    (hExt : ProCGroups.FiniteGroupClass.ExtensionClosed C)
    {X : Type u} [Finite X]
    {F : Type u} [Group F] [TopologicalSpace F] [IsTopologicalGroup F]
      [CompactSpace F] [T2Space F] [TotallyDisconnectedSpace F]
    {ι : X → F}
    (hF : IsEpimorphicallyFreeProCGroupOnConvergingSet
      (C := C) X F ι)
    (H : OpenSubgroup F)
    {Q : Type u} [Group Q] [TopologicalSpace Q] [IsTopologicalGroup Q]
    [Finite Q] [DiscreteTopology Q]
    (hQ : C Q)
    (ψ : Subgroup.comap (FreeGroup.lift ι) (H : Subgroup F) →* Q) :
    ∃ ψBar : ↥(H : Subgroup F) →* Q,
      Continuous ψBar ∧
        ψBar.comp
          ({ toFun := fun g : Subgroup.comap (FreeGroup.lift ι) (H : Subgroup F) =>
              ⟨(FreeGroup.lift ι) g.1, g.2⟩
             map_one' := by simp only [OneMemClass.coe_one, map_one, Subgroup.mk_eq_one]
             map_mul' := by
               intro a b
               ext
               simp only [Subgroup.coe_mul, map_mul]} :
            Subgroup.comap (FreeGroup.lift ι) (H : Subgroup F) →* ↥(H : Subgroup F)) = ψ

Concrete finite-quotient lift for the dense abstract Schreier subgroup comap (free group lift \(\iota\)) to \(H\). It is a continuity claim, checked through the topology generated by finite-stage projections.

Show Lean proof
theorem exists_pointedFreeRightSchreierGeneratorFamily_of_openSubgroup
    {C : ProCGroups.FiniteGroupClass.{u}}
    (hForm : ProCGroups.FiniteGroupClass.Formation C)
    (hSub : ProCGroups.FiniteGroupClass.SubgroupClosed C)
    (hIso : ProCGroups.FiniteGroupClass.IsomClosed C)
    (hExt : ProCGroups.FiniteGroupClass.ExtensionClosed C)
    {X : Type u} [TopologicalSpace X] [CompactSpace X] {x0 : X}
    {F : Type u} [Group F] [TopologicalSpace F] [IsTopologicalGroup F]
      [CompactSpace F] [T2Space F] [TotallyDisconnectedSpace F]
    {ι : X → F}
    (hF : IsEpimorphicallyPointedFreeProCGroupOn
      (C := C) X x0 F ι)
    (H : OpenSubgroup F) :
    ∃ κ : OpenSubgroupRightQuotient H × X → ↥(H : Subgroup F),
      Continuous κ ∧
      (∀ q : OpenSubgroupRightQuotient H, κ (q, x0) = 1) ∧
      κ (openSubgroupRightCoset H (1 : F), x0) = 1 ∧
      IsCompact (Set.range κ) ∧
      IsClosed (Set.range κ) ∧
      IsEpimorphicallyPointedFreeProCGroupOn
        (C := C)
        (Set.range κ)
        ⟨κ (openSubgroupRightCoset H (1 : F), x0),
          ⟨(openSubgroupRightCoset H (1 : F), x0), rfl⟩⟩
        ↥(H : Subgroup F) Subtype.val

An open subgroup of a pointed free pro-\(C\) group admits a compact right Schreier generator family whose image, pointed at the distinguished generator 1, is itself a pointed free pro-\(C\) basis of the open subgroup.

Show Lean proof
theorem exists_pointedFreeRightSchreierGeneratorFamily_of_openSubgroup_of_minimalGeneratorPower
    {C : ProCGroups.FiniteGroupClass.{u}}
    (hForm : ProCGroups.FiniteGroupClass.Formation C)
    (hSub : ProCGroups.FiniteGroupClass.SubgroupClosed C)
    (hIso : ProCGroups.FiniteGroupClass.IsomClosed C)
    (hExt : ProCGroups.FiniteGroupClass.ExtensionClosed C)
    {X : Type u} [TopologicalSpace X] [CompactSpace X] {x0 : X}
    {F : Type u} [Group F] [TopologicalSpace F] [IsTopologicalGroup F]
      [CompactSpace F] [T2Space F] [TotallyDisconnectedSpace F]
    {ι : X → F}
    (hF : IsEpimorphicallyPointedFreeProCGroupOn
      (C := C) X x0 F ι)
    (H : OpenSubgroup F) (x : X) {N : ℕ}
    (hN : 0 < N)
    (hpow : (ι x) ^ N ∈ (H : Subgroup F))
    (hmin : ∀ m : ℕ, 0 < m → m < N → (ι x) ^ m ∉ (H : Subgroup F)) :
    ∃ κ : OpenSubgroupRightQuotient H × X → ↥(H : Subgroup F),
      Continuous κ ∧
      (∀ q : OpenSubgroupRightQuotient H, κ (q, x0) = 1) ∧
      κ (openSubgroupRightCoset H (1 : F), x0) = 1 ∧
      (⟨(ι x) ^ N, hpow⟩ : ↥(H : Subgroup F)) ∈ Set.range κ ∧
      IsCompact (Set.range κ) ∧
      IsClosed (Set.range κ) ∧
      IsEpimorphicallyPointedFreeProCGroupOn
        (C := C)
        (Set.range κ)
        ⟨κ (openSubgroupRightCoset H (1 : F), x0),
          ⟨(openSubgroupRightCoset H (1 : F), x0), rfl⟩⟩
        ↥(H : Subgroup F) Subtype.val

There exists a pointed free right-Schreier generator family for the open subgroup under the minimal generator-power hypothesis.

Show Lean proof