Module

AutomorphismProfiniteCompletion.lean

Nyll.EtaleFundamentalGroups.GaloisCategories.AutomorphismProfiniteCompletion
16 declarations indexed from sourceView source ↗

The profinite completion of a topological group

This file proves Stacks Project, Tag 0BMU: the automorphism group of the forgetful functor on finite continuous actions of a topological group is its profinite completion.

Imports5
Imported by1

Declarations

CategoryTheory.FiniteContinuousAction.carrierMulAction
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
instance carrierMulAction
    (X : ContAction FintypeCat.{u} G) :
    MulAction G
      ((forget₂ (ContAction FintypeCat.{u} G) FintypeCat).obj X)
CategoryTheory.FiniteContinuousAction.carrierContinuousSMul
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
instance carrierContinuousSMul
    (X : ContAction FintypeCat.{u} G) :
    ContinuousSMul G
      ((forget₂ (ContAction FintypeCat.{u} G) FintypeCat).obj X)
CategoryTheory.FiniteContinuousAction.naturalSMul
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
instance naturalSMul :
    PreGaloisCategory.IsNaturalSMul
      (forget₂ (ContAction FintypeCat.{u} G) FintypeCat) G where
  naturality g {X Y} f x := by
    change
      ConcreteCategory.hom (InducedCategory.Hom.hom f).hom
          (ConcreteCategory.hom (X.obj.ρ g) x) =
        ConcreteCategory.hom (Y.obj.ρ g)
          (ConcreteCategory.hom (InducedCategory.Hom.hom f).hom x)
    simpa only [FintypeCat.comp_apply] using
      ConcreteCategory.congr_hom ((InducedCategory.Hom.hom f).comm g) x
CategoryTheory.FiniteContinuousAction.continuous_of_isOpen_ker
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
theorem continuous_of_isOpen_ker
    {H : Type u} [Group H] [TopologicalSpace H] [DiscreteTopology H]
    (f : G →* H) (hf : IsOpen (f.ker : Set G)) :
    Continuous f
CategoryTheory.FiniteContinuousAction.canonicalHom_continuous
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
theorem canonicalHom_continuous :
    Continuous
      (PreGaloisCategory.toAut
        (forget₂ (ContAction FintypeCat.{u} G) FintypeCat) G)
CategoryTheory.FiniteContinuousAction.actionKernel_isOpen
Source context 8 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
omit [IsTopologicalGroup G] in
theorem actionKernel_isOpen
    (X : ContAction FintypeCat.{u} G) :
    IsOpen
      ((MulAction.toPermHom G
        ((forget₂ (ContAction FintypeCat.{u} G) FintypeCat).obj X)).ker :
          Set G)
CategoryTheory.FiniteContinuousAction.quotient_continuousSMul
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
theorem quotient_continuousSMul
    (K : Subgroup G) [K.Normal]
    [TopologicalSpace (G ⧸ K)] [DiscreteTopology (G ⧸ K)]
    (hK : IsOpen (K : Set G)) :
    ContinuousSMul G (G ⧸ K)
CategoryTheory.FiniteContinuousAction.exists_canonicalHom_eq_on_finite
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
theorem exists_canonicalHom_eq_on_finite
    {ι : Type v} [Finite ι]
    (X : ι → ContAction FintypeCat.{u} G)
    (σ : Aut
      (forget₂ (ContAction FintypeCat.{u} G) FintypeCat)) :
    ∃ g : G, ∀ i,
      (PreGaloisCategory.toAut
          (forget₂ (ContAction FintypeCat.{u} G) FintypeCat) G g).hom.app
          (X i) =
        σ.hom.app (X i)
CategoryTheory.FiniteContinuousAction.canonicalHom_denseRange
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
theorem canonicalHom_denseRange :
    DenseRange
      (PreGaloisCategory.toAut
        (forget₂ (ContAction FintypeCat.{u} G) FintypeCat) G)
CategoryTheory.FiniteContinuousAction.canonicalContinuousHom
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
def canonicalContinuousHom :
    G →ₜ*
      Aut (forget₂ (ContAction FintypeCat.{u} G) FintypeCat) where
  toMonoidHom :=
    PreGaloisCategory.toAut
      (forget₂ (ContAction FintypeCat.{u} G) FintypeCat) G
  continuous_toFun := canonicalHom_continuous G
CategoryTheory.FiniteContinuousAction.automorphismProfiniteGroup
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
def automorphismProfiniteGroup : ProfiniteGrp.{u + 1}
CategoryTheory.FiniteContinuousAction.canonicalHom_preimage_cofinal
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
theorem canonicalHom_preimage_cofinal
    (H : LocalClassFieldTheory.OpenFiniteIndexNormalSubgroup G) :
    ∃ N : OpenNormalSubgroup
        (Aut (forget₂ (ContAction FintypeCat.{u} G) FintypeCat)),
      LocalClassFieldTheory.topologicalProfiniteCompletionPreimageIndex
          (automorphismProfiniteGroup G)
          (canonicalContinuousHom G) N ≤ H
CategoryTheory.FiniteContinuousAction.canonicalLift_injective
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
theorem canonicalLift_injective :
    Function.Injective
      (LocalClassFieldTheory.topologicalProfiniteCompletionLift
        (automorphismProfiniteGroup G) (canonicalContinuousHom G))
CategoryTheory.FiniteContinuousAction.canonicalLift_surjective
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
theorem canonicalLift_surjective :
    Function.Surjective
      (LocalClassFieldTheory.topologicalProfiniteCompletionLift
        (automorphismProfiniteGroup G) (canonicalContinuousHom G))
CategoryTheory.FiniteContinuousAction.profiniteCompletionEquivAutForget

The automorphism group of the forgetful functor on finite continuous G-sets is canonically the profinite completion of G.

Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
def profiniteCompletionEquivAutForget :
    LocalClassFieldTheory.TopologicalProfiniteCompletion G ≃ₜ*
      Aut (forget₂ (ContAction FintypeCat.{u} G) FintypeCat)
CategoryTheory.FiniteContinuousAction.profiniteCompletionEquivAutForget_apply_completionMap
Source context 7 commands

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

universe u v
noncomputable section
open CategoryTheory Topology
open scoped FintypeCatDiscrete PreGaloisCategory
namespace CategoryTheory
namespace FiniteContinuousAction
variable (G : Type u) [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
theorem profiniteCompletionEquivAutForget_apply_completionMap
    (g : G) :
    profiniteCompletionEquivAutForget G
        (LocalClassFieldTheory.topologicalProfiniteCompletionMap G g) =
      PreGaloisCategory.toAut
        (forget₂ (ContAction FintypeCat.{u} G) FintypeCat) G g