CompletedGroupAlgebra.Basic.AllFinite.Index

6 Theorem | 7 Definition | 2 Abbreviation | 3 Instance

This module sets up the finite-stage and inverse-limit description of the construction. It records the stage maps, projections, and comparison lemmas used to pass back to the completed object.

import
Imported by

Declarations

abbrev CompletedGroupAlgebraIndex :=
  OrderDual (OpenNormalSubgroupInClass ProCGroups.FiniteGroupClass.allFinite G)

The index set for the Section 5.3 completed group algebra tower, ordered so that larger indices give finer finite quotients.

abbrev CompletedGroupAlgebraQuotient (U : CompletedGroupAlgebraIndex G) : Type v :=
  (openNormalSubgroupInClassSystem ProCGroups.FiniteGroupClass.allFinite G).X U

The finite quotient \(G/U\) attached to one index of the completed-group-algebra tower.

instance instFiniteCompletedGroupAlgebraQuotient
    (U : CompletedGroupAlgebraIndex G) :
    Finite (CompletedGroupAlgebraQuotient G U) :=
  (OrderDual.ofDual U).2

The finite completed group-algebra quotient is finite.

def terminalCompletedGroupAlgebraSubgroup : Subgroup G where
  carrier := Set.univ
  one_mem' := by simp only [Set.mem_univ]
  mul_mem' := by intro a b ha hb; simp only [Set.mem_univ]
  inv_mem' := by intro a ha; simp only [Set.mem_univ]

The whole group \(G\), as a subgroup, used for the terminal quotient \(G/G\).

def terminalCompletedGroupAlgebraOpenSubgroup : OpenSubgroup G :=
  OpenSubgroup.mk (terminalCompletedGroupAlgebraSubgroup G) isOpen_univ

The whole group \(G\) is an open subgroup.

def terminalCompletedGroupAlgebraOpenNormalSubgroup : OpenNormalSubgroup G :=
  OpenNormalSubgroup.mk (terminalCompletedGroupAlgebraOpenSubgroup G)
    (Subgroup.Normal.mk (by
      intro n hn g
      simp only [terminalCompletedGroupAlgebraOpenSubgroup, terminalCompletedGroupAlgebraSubgroup, Subgroup.mem_mk,
  Submonoid.mem_mk, Subsemigroup.mem_mk, Set.mem_univ]))

The whole group \(G\) is an open normal subgroup.

theorem terminalCompletedGroupAlgebraOpenNormalSubgroup_coe :
    ((terminalCompletedGroupAlgebraOpenNormalSubgroup G : OpenNormalSubgroup G) : Subgroup G) =
      ⊤

The terminal all-finite open normal subgroup has underlying subgroup equal to the top subgroup.

Show proof
instance terminalCompletedGroupAlgebraQuotient_subsingleton :
    Subsingleton
      (G ⧸ ((terminalCompletedGroupAlgebraOpenNormalSubgroup G : OpenNormalSubgroup G) :
        Subgroup G)) := by
  rw [terminalCompletedGroupAlgebraOpenNormalSubgroup_coe (G := G)]
  constructor
  intro x y
  rcases QuotientGroup.mk'_surjective (⊤ : Subgroup G) x with ⟨a, rfl⟩
  rcases QuotientGroup.mk'_surjective (⊤ : Subgroup G) y with ⟨b, rflexact (QuotientGroup.eq).2 (by simp only [Subgroup.mem_top])

The terminal completed group-algebra quotient is a subsingleton, since it is the quotient by the whole group.

def terminalCompletedGroupAlgebraSubgroupInClass :
    OpenNormalSubgroupInClass ProCGroups.FiniteGroupClass.allFinite G := by
  refine ⟨terminalCompletedGroupAlgebraOpenNormalSubgroup G, ?_⟩
  letI : Subsingleton
      (G ⧸ ((terminalCompletedGroupAlgebraOpenNormalSubgroup G : OpenNormalSubgroup G) :
        Subgroup G)) :=
    terminalCompletedGroupAlgebraQuotient_subsingleton (G := G)
  exact Finite.of_subsingleton

The terminal open normal subgroup belongs to the finite-quotient indexing family.

def terminalCompletedGroupAlgebraIndex : CompletedGroupAlgebraIndex G :=
  OrderDual.toDual (terminalCompletedGroupAlgebraSubgroupInClass G)

The terminal all-finite index, corresponding to the quotient \(G/G\).

instance instNonemptyCompletedGroupAlgebraIndex :
    Nonempty (CompletedGroupAlgebraIndex G) :=
  ⟨terminalCompletedGroupAlgebraIndex G⟩

The completed group algebra is nonempty, with the terminal quotient or canonical base object as witness.

theorem terminalCompletedGroupAlgebraIndex_le (U : CompletedGroupAlgebraIndex G) :
    terminalCompletedGroupAlgebraIndex G ≤ U

The terminal all-finite index is below every all-finite completed-group-algebra index.

Show proof
def completedGroupAlgebraIndexInClassToAllFinite
    (C : ProCGroups.FiniteGroupClass.{v}) (hC : ProCGroups.FiniteGroupClass.FiniteOnly C)
    (U : CompletedGroupAlgebraIndexInClass G C) : CompletedGroupAlgebraIndex G :=
  OrderDual.toDual ⟨(OrderDual.ofDual U).1, hC (OrderDual.ofDual U).2⟩

A quotient indexed by a finite quotient class is also an all-finite quotient.

theorem completedGroupAlgebraIndexInClassToAllFinite_le
    (C : ProCGroups.FiniteGroupClass.{v}) (hC : ProCGroups.FiniteGroupClass.FiniteOnly C)
    {U V : CompletedGroupAlgebraIndexInClass G C} (hUV : U ≤ V) :
    completedGroupAlgebraIndexInClassToAllFinite G C hC U ≤
      completedGroupAlgebraIndexInClassToAllFinite G C hC V

The comparison of all-finite and class-indexed indices is monotone.

Show proof
def completedGroupAlgebraIndexToInClass
    (C : ProCGroups.FiniteGroupClass.{v}) (hForm : ProCGroups.FiniteGroupClass.Formation C)
    (hG : IsProCGroup C G)
    (U : CompletedGroupAlgebraIndex G) : CompletedGroupAlgebraIndexInClass G C :=
  OrderDual.toDual ⟨(OrderDual.ofDual U).1,
    IsProCGroup.quotient_mem (C := C) hForm hG
      ((OrderDual.ofDual U).1 : OpenNormalSubgroup G)⟩

For a pro-\(C\) group over a formation, every all-finite open-normal quotient is a \(C\)-quotient.

theorem completedGroupAlgebraIndexToInClass_le
    (C : ProCGroups.FiniteGroupClass.{v}) (hForm : ProCGroups.FiniteGroupClass.Formation C)
    (hG : IsProCGroup C G)
    {U V : CompletedGroupAlgebraIndex G} (hUV : U ≤ V) :
    completedGroupAlgebraIndexToInClass G C hForm hG U ≤
      completedGroupAlgebraIndexToInClass G C hForm hG V

The comparison of all-finite and class-indexed indices is monotone.

Show proof
theorem completedGroupAlgebraIndexInClassToAllFinite_indexToInClass
    (C : ProCGroups.FiniteGroupClass.{v}) (hC : ProCGroups.FiniteGroupClass.FiniteOnly C)
    (hForm : ProCGroups.FiniteGroupClass.Formation C) (hG : IsProCGroup C G)
    (U : CompletedGroupAlgebraIndex G) :
    completedGroupAlgebraIndexInClassToAllFinite G C hC
        (completedGroupAlgebraIndexToInClass G C hForm hG U) = U

For a pro-\(C\) group, converting an all-finite completed-group-algebra index to the \(C\)-indexed tower and then back to the all-finite tower returns the original index.

Show proof
theorem completedGroupAlgebraIndexToInClass_indexInClassToAllFinite
    (C : ProCGroups.FiniteGroupClass.{v}) (hC : ProCGroups.FiniteGroupClass.FiniteOnly C)
    (hForm : ProCGroups.FiniteGroupClass.Formation C) (hG : IsProCGroup C G)
    (U : CompletedGroupAlgebraIndexInClass G C) :
    completedGroupAlgebraIndexToInClass G C hForm hG
        (completedGroupAlgebraIndexInClassToAllFinite G C hC U) = U

For a pro-\(C\) group, converting a \(C\)-indexed completed-group-algebra index to the all-finite tower and then back to the \(C\)-indexed tower returns the original index.

Show proof