Module

ClosedNormal.lean

Nyll.ProCGroups.ProC.Quotients.ClosedNormal
10 declarations indexed from sourceView source ↗

Quotients by closed normal subgroups

This file supplies the profinite topology and normalized continuous sections for closed-normal quotients, identifies iterated quotients, proves closedness of quotient images, and transfers topological generation between a group, its kernel, and its quotient.

Declarations

ProCGroups.totallyDisconnectedSpace_quotient_closedNormal

A quotient by a closed normal subgroup of a compact Hausdorff totally disconnected topological group is totally disconnected.

Source context 4 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups
universe u v
theorem totallyDisconnectedSpace_quotient_closedNormal
    {G : Type*} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
    [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
    (N : Subgroup G) [N.Normal] (hN : IsClosed (N : Set G)) :
    TotallyDisconnectedSpace (G ⧸ N)
ProCGroups.Generation.closedNormalQuotientSection

A chosen continuous section of the quotient map by a closed normal subgroup of a profinite group.

Source context 6 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.Generation
universe u v
open ProCGroups.ProC
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
  [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
def closedNormalQuotientSection
    {N : Subgroup G} (hNclosed : IsClosed (N : Set G)) :
    G ⧸ N → G
ProCGroups.Generation.closedNormalQuotientSection_continuous

The chosen closed-normal quotient section is continuous.

Source context 6 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.Generation
universe u v
open ProCGroups.ProC
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
  [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
theorem closedNormalQuotientSection_continuous
    {N : Subgroup G} (hNclosed : IsClosed (N : Set G)) :
    Continuous (closedNormalQuotientSection (G := G) (N := N) hNclosed)
ProCGroups.Generation.closedNormalQuotientSection_rightInverse

The chosen closed-normal quotient section is a right inverse to the quotient map.

Source context 6 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.Generation
universe u v
open ProCGroups.ProC
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
  [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
theorem closedNormalQuotientSection_rightInverse
    {N : Subgroup G} (hNclosed : IsClosed (N : Set G)) :
    Function.RightInverse
      (closedNormalQuotientSection (G := G) (N := N) hNclosed)
      (QuotientGroup.mk (s := N))
ProCGroups.Generation.closedNormalQuotientSection_one

The chosen closed-normal quotient section sends the identity coset to \(1\).

Source context 6 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.Generation
universe u v
open ProCGroups.ProC
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
  [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
theorem closedNormalQuotientSection_one
    {N : Subgroup G} (hNclosed : IsClosed (N : Set G)) :
    closedNormalQuotientSection (G := G) (N := N) hNclosed
      (QuotientGroup.mk (s := N) (1 : G)) = 1
ProCGroups.Generation.quotientBotContinuousMulEquiv

The quotient by the bottom subgroup is continuously multiplicatively equivalent to the original profinite group.

Source context 6 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.Generation
universe u v
open ProCGroups.ProC
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
  [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
def quotientBotContinuousMulEquiv :
    G ≃ₜ* G ⧸ (⊥ : Subgroup G)
ProCGroups.Generation.topologicallyGenerates_union_closedNormal_iff_quotient

Adding a closed normal subgroup to a generating set is equivalent to generating the quotient from the image of the set.

Source context 7 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.Generation
universe u v
open ProCGroups.ProC
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
  [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
omit [T2Space G] [TotallyDisconnectedSpace G] in
theorem topologicallyGenerates_union_closedNormal_iff_quotient
    {N : Subgroup G} [N.Normal]
    (hNclosed : IsClosed (N : Set G)) {X : Set G} :
    TopologicallyGenerates (G := G) (X ∪ (N : Set G)) ↔
      TopologicallyGenerates (G := G ⧸ N) ((QuotientGroup.mk' N) '' X)
ProCGroups.Generation.isClosed_image_closedNormal_quotient

The image of a closed subgroup in a quotient by a closed normal subgroup is closed.

Source context 7 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.Generation
universe u v
open ProCGroups.ProC
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
  [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
omit [T2Space G] [TotallyDisconnectedSpace G] in
theorem isClosed_image_closedNormal_quotient
    {N N' : Subgroup G} [N'.Normal]
    (hNclosed : IsClosed (N : Set G)) (hN'closed : IsClosed (N' : Set G)) :
    IsClosed ((N.map (QuotientGroup.mk' N') : Subgroup (G ⧸ N')) : Set (G ⧸ N'))
ProCGroups.Generation.quotientQuotientContinuousMulEquiv

The quotient-of-quotient isomorphism for closed normal subgroups as a continuous multiplicative equivalence.

Source context 6 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.Generation
universe u v
open ProCGroups.ProC
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
  [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
def quotientQuotientContinuousMulEquiv
    {N N' : Subgroup G} [N.Normal] [N'.Normal]
    (hNclosed : IsClosed (N : Set G))
    (hN'N : N' ≤ N) :
    ((G ⧸ N') ⧸ N.map (QuotientGroup.mk' N')) ≃ₜ* G ⧸ N
ProCGroups.Generation.topologicallyGenerates_of_quotient_section_union_kernel

A quotient section together with generators for the kernel generates the intermediate quotient.

Source context 7 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.Generation
universe u v
open ProCGroups.ProC
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
  [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
omit [T2Space G] [TotallyDisconnectedSpace G] in
theorem topologicallyGenerates_of_quotient_section_union_kernel
    {N N' : Subgroup G} [N.Normal] [N'.Normal]
    (hNclosed : IsClosed (N : Set G)) (hN'closed : IsClosed (N' : Set G))
    (hN'N : N' ≤ N)
    {Y : Set (G ⧸ N)}
    (hYgen : TopologicallyGenerates (G := G ⧸ N) Y)
    {σ : (G ⧸ N) → (G ⧸ N')}
    (hσright : Function.RightInverse σ (leftQuotientProjection N' N hN'N))
    {T : Set G}
    (hTgen : N ≤ Subgroup.closure (T ∪ (N' : Set G))) :
    TopologicallyGenerates (G := G ⧸ N')
      (σ '' Y ∪ ((QuotientGroup.mk' N') '' T))