Module

UniversalProperty.lean

Nyll.ProCGroups.ProC.MaximalQuotients.UniversalProperty
9 declarations indexed from sourceView source ↗

The pro-\(C\) residual quotient

For a hereditary finite-group class, continuous maps from compact groups into pro-\(C\) targets kill the residual core and therefore factor uniquely through the residual quotient. The file also proves functoriality of the core and its behaviour under continuous epimorphisms for full formations.

Declarations

ProCGroups.ProC.proCResidualCore_le_of_proCQuotient

Any closed normal subgroup whose quotient has an open-normal quotient-in-\(C\) basis contains the residual core.

Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open Set
namespace ProCGroups.ProC
universe u
variable {C : FiniteGroupClass}
theorem proCResidualCore_le_of_proCQuotient
    {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
    (K : Subgroup G) [K.Normal]
    (hKclosed : IsClosed (K : Set G))
    (hK : HasOpenNormalBasisInClass C (G ⧸ K)) :
    proCResidualCore C G ≤ K
ProCGroups.ProC.hasOpenNormalBasisInClass_quotient_ker

A compact group's quotient by the kernel of a continuous map into a group with an open-normal quotient-in-\(C\) basis inherits that basis property when C is hereditary.

Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open Set
namespace ProCGroups.ProC
universe u
variable {C : FiniteGroupClass}
theorem hasOpenNormalBasisInClass_quotient_ker
    {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G] [CompactSpace G]
    {H : Type u} [Group H] [TopologicalSpace H] [IsTopologicalGroup H] [T2Space H]
    (hHer : FiniteGroupClass.Hereditary C)
    (f : G →ₜ* H) (hH : HasOpenNormalBasisInClass C H) :
    HasOpenNormalBasisInClass C (G ⧸ f.toMonoidHom.ker)
ProCGroups.ProC.map_proCResidualCore_le_of_hom

Under hereditary finite quotients, continuous homomorphisms from compact groups send the residual core into the residual core.

Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open Set
namespace ProCGroups.ProC
universe u
variable {C : FiniteGroupClass}
theorem map_proCResidualCore_le_of_hom
    {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G] [CompactSpace G]
    {H : Type u} [Group H] [TopologicalSpace H] [IsTopologicalGroup H] [T2Space H]
    (hHer : FiniteGroupClass.Hereditary C)
    (φ : G →* H) (hφ : Continuous φ) :
    (proCResidualCore C G).map φ ≤ proCResidualCore C H
ProCGroups.ProC.map_proCResidualCore_le_of_continuousMonoidHom

A continuous monoid homomorphism sends the pro-\(C\) residual core of the source into the pro-\(C\) residual core of the target.

Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open Set
namespace ProCGroups.ProC
universe u
variable {C : FiniteGroupClass}
theorem map_proCResidualCore_le_of_continuousMonoidHom
    {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G] [CompactSpace G]
    {H : Type u} [Group H] [TopologicalSpace H] [IsTopologicalGroup H] [T2Space H]
    (hHer : FiniteGroupClass.Hereditary C)
    (φ : G →ₜ* H) :
    (proCResidualCore C G).map φ.toMonoidHom ≤ proCResidualCore C H
ProCGroups.ProC.proCResidualCore_le_ker_of_continuousMonoidHom_to_proC

Any continuous homomorphism from a compact group to a group with an open-normal quotient-in-\(C\) basis kills the residual core when C is hereditary.

Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open Set
namespace ProCGroups.ProC
universe u
variable {C : FiniteGroupClass}
theorem proCResidualCore_le_ker_of_continuousMonoidHom_to_proC
    {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G] [CompactSpace G]
    {H : Type u} [Group H] [TopologicalSpace H] [IsTopologicalGroup H] [T2Space H]
    (hHer : FiniteGroupClass.Hereditary C)
    (φ : G →ₜ* H) (hH : HasOpenNormalBasisInClass C H) :
    proCResidualCore C G ≤ φ.toMonoidHom.ker
ProCGroups.ProC.lift_proCResidualCoreQuotient

Every continuous homomorphism from \(G\) to a group with an open-normal quotient-in-\(C\) basis factors through the quotient by the pro-\(C\) residual core.

Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open Set
namespace ProCGroups.ProC
universe u
variable {C : FiniteGroupClass}
def lift_proCResidualCoreQuotient
    {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G] [CompactSpace G]
    {H : Type u} [Group H] [TopologicalSpace H] [IsTopologicalGroup H] [T2Space H]
    (hHer : FiniteGroupClass.Hereditary C)
    (φ : G →ₜ* H) (hH : HasOpenNormalBasisInClass C H) :
    G ⧸ proCResidualCore C G →ₜ* H
ProCGroups.ProC.lift_proCResidualCoreQuotient_mk

The lifted map from the residual-core quotient agrees with the original map on quotient classes.

Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open Set
namespace ProCGroups.ProC
universe u
variable {C : FiniteGroupClass}
theorem lift_proCResidualCoreQuotient_mk
    {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G] [CompactSpace G]
    {H : Type u} [Group H] [TopologicalSpace H] [IsTopologicalGroup H] [T2Space H]
    (hHer : FiniteGroupClass.Hereditary C)
    (φ : G →ₜ* H) (hH : HasOpenNormalBasisInClass C H) (x : G) :
    lift_proCResidualCoreQuotient (C := C) hHer φ hH
      (QuotientGroup.mk' (proCResidualCore C G) x) = φ x
ProCGroups.ProC.lift_proCResidualCoreQuotient_unique

The lift from the residual-core quotient is unique among continuous homomorphisms agreeing on all quotient classes.

Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open Set
namespace ProCGroups.ProC
universe u
variable {C : FiniteGroupClass}
theorem lift_proCResidualCoreQuotient_unique
    {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G] [CompactSpace G]
    {H : Type u} [Group H] [TopologicalSpace H] [IsTopologicalGroup H] [T2Space H]
    (hHer : FiniteGroupClass.Hereditary C)
    (φ : G →ₜ* H) (hH : HasOpenNormalBasisInClass C H)
    (ψ : G ⧸ proCResidualCore C G →ₜ* H)
    (hψ : ∀ x : G, ψ (QuotientGroup.mk' (proCResidualCore C G) x) = φ x) :
    ψ = lift_proCResidualCoreQuotient (C := C) hHer φ hH
ProCGroups.ProC.map_proCResidualCore_eq_of_surjective

Continuous epimorphisms carry the residual core onto the residual core for a full formation when the source residual quotient is pro-\(C\).

Source context 4 commands

Surrounding namespaces, section variables, and local commands at this declaration.

open Set
namespace ProCGroups.ProC
universe u
variable {C : FiniteGroupClass}
theorem map_proCResidualCore_eq_of_surjective
    {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
      [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
    {H : Type u} [Group H] [TopologicalSpace H] [IsTopologicalGroup H] [T2Space H]
    (hC : FiniteGroupClass.FullFormation C)
    (φ : G →* H) (hφ : Continuous φ) (hφsurj : Function.Surjective φ)
    (hcoreQuot :
      letI : (proCResidualCore C G).Normal := proCResidualCore_normal C G
      HasOpenNormalBasisInClass C (G ⧸ proCResidualCore C G)) :
    (proCResidualCore C G).map φ = proCResidualCore C H := by
  let R : Subgroup G := proCResidualCore C G
  have : R.Normal := proCResidualCore_normal C G
  let N : Subgroup H := R.map φ
  have hNnormal : N.Normal := by
    refine ⟨?_⟩
    intro y hy h
    rcases hy with ⟨x, hx, rfl⟩
    rcases hφsurj h with ⟨g, rfl⟩
    exact (Subgroup.mem_map).2 ⟨g * x * g⁻¹, (show R.Normal from inferInstance).conj_mem x hx g, by
      simp only [mul_assoc, map_mul, map_inv]⟩
  have hRclosed : IsClosed (R : Set G) := by
    simpa [R] using proCResidualCore_isClosed C G
  have : TotallyDisconnectedSpace (G ⧸ R) :=
    ProCGroups.totallyDisconnectedSpace_quotient_closedNormal R hRclosed
  have hNclosed : IsClosed (N : Set H) := by
    simpa [N, Subgroup.coe_map] using (hRclosed.isCompact.image hφ).isClosed
  have hmap_le :
      R.map φ ≤ proCResidualCore C H :=
    map_proCResidualCore_le_of_hom (C := C) hC.hereditary φ hφ
  have hRle : R ≤ Subgroup.comap φ N := by
    intro x hx
    exact (Subgroup.mem_comap).2 <| (Subgroup.mem_map).2 ⟨x, hx, rfl⟩
  let φₜ : G →ₜ* H :=
    { toMonoidHom := φ
      continuous_toFun := hφ }
  let βₜ : G ⧸ R →ₜ* H ⧸ N := QuotientGroup.mapₜ R N φₜ hRle
  let β : G ⧸ R →* H ⧸ N := βₜ.toMonoidHom
  have hβsurj : Function.Surjective β := by
    have hmkφ_surj : Function.Surjective (QuotientGroup.mk ∘ φ : G → H ⧸ N) := by
      intro y
      rcases QuotientGroup.mk'_surjective N y with ⟨h, rfl⟩
      rcases hφsurj h with ⟨g, rfl⟩
      exact ⟨g, rfl⟩
    exact QuotientGroup.map_surjective_of_surjective (N := R) (M := N) φ hmkφ_surj hRle
  have hNquot : HasOpenNormalBasisInClass C (H ⧸ N) :=
    HasOpenNormalBasisInClass.of_surjective hC.melnikovFormation.formation hcoreQuot βₜ hβsurj
  have hcoreH_le : proCResidualCore C H ≤ N :=
    proCResidualCore_le_of_proCQuotient (C := C) N hNclosed hNquot
  exact le_antisymm hmap_le hcoreH_le