Module

FiniteQuotients.lean

Nyll.ProCGroups.ProC.InverseLimits.FiniteQuotients
5 declarations indexed from sourceView source ↗

Finite quotient objects for pro-\(C\) inverse limits

This file bundles finite discrete groups and quotients by open normal subgroups as profinite objects. It records the induced pro-\(C\) structures and the corresponding product construction.

Declarations

ProCGroups.ProC.HasOpenNormalBasisInClass.of_finite_discrete

Any finite discrete group already lying in the class \(C\) is pro-\(C\).

Source context 9 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.ProC
universe u v
open InverseSystems
section
variable {C : FiniteGroupClass.{u}}
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
namespace HasOpenNormalBasisInClass
theorem of_finite_discrete (hquot : FiniteGroupClass.QuotientClosed C)
    [Finite G] [DiscreteTopology G] (hCG : C G) : HasOpenNormalBasisInClass C G
ProCGroups.ProC.HasOpenNormalBasisInClass.quotient_openNormalSubgroup

If \(G\) is pro-\(C\) and \(C\) is closed under quotients, then every quotient of \(G\) by an open normal subgroup is again pro-\(C\).

Source context 9 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.ProC
universe u v
open InverseSystems
section
variable {C : FiniteGroupClass.{u}}
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
namespace HasOpenNormalBasisInClass
theorem quotient_openNormalSubgroup
    (hForm : FiniteGroupClass.Formation C)
    [CompactSpace G] [T2Space G]
    (hG : HasOpenNormalBasisInClass C G) (U : OpenNormalSubgroup G) :
    HasOpenNormalBasisInClass C (G ⧸ (U : Subgroup G))
ProCGroups.ProC.HasOpenNormalBasisInClass.quotient_openNormalSubgroupInClass

Quotients by open normal subgroups in the class-indexing family are pro-\(C\).

Source context 9 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.ProC
universe u v
open InverseSystems
section
variable {C : FiniteGroupClass.{u}}
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
namespace HasOpenNormalBasisInClass
theorem quotient_openNormalSubgroupInClass
    (hquot : FiniteGroupClass.QuotientClosed C)
    (U : OpenNormalSubgroupInClass C G) :
    HasOpenNormalBasisInClass C (G ⧸ (U.1 : Subgroup G))
theorem

pi

L64 ↗
ProCGroups.ProC.HasOpenNormalBasisInClass.pi

Arbitrary products of pro-\(C\) groups remain pro-\(C\) when \(C\) is a formation.

Source context 9 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.ProC
universe u v
open InverseSystems
section
variable {C : FiniteGroupClass.{u}}
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
namespace HasOpenNormalBasisInClass
theorem pi {α : Type u} {β : α → Type u}
    [∀ a, Group (β a)] [∀ a, TopologicalSpace (β a)] [∀ a, IsTopologicalGroup (β a)]
    [∀ a, CompactSpace (β a)] [∀ a, T2Space (β a)]
    [∀ a, TotallyDisconnectedSpace (β a)]
    (hForm : FiniteGroupClass.Formation C)
    (hβ : ∀ a, HasOpenNormalBasisInClass C (β a)) :
    HasOpenNormalBasisInClass C ((a : α) → β a)
ProCGroups.ProC.hasOpenNormalBasisInClass_allFinite

Every profinite group has an open-normal basis with finite quotients.

Source context 8 commands

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

open Set
open scoped Topology Pointwise
namespace ProCGroups.ProC
universe u v
open InverseSystems
section
variable {C : FiniteGroupClass.{u}}
variable {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
theorem hasOpenNormalBasisInClass_allFinite
    {G : Type u} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
    [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G] :
    HasOpenNormalBasisInClass FiniteGroupClass.allFinite G