CompletedGroupAlgebra.ProfiniteModules.Basic.Definitions

16 Theorem | 10 Definition | 1 Structure

This module supplies the topological part of the construction. It checks continuity and stagewise neighborhood properties so that the completed object inherits the required topology.

import
Imported by

Declarations

def IsProfiniteRing (Λ : Type u) [Ring Λ] [TopologicalSpace Λ] : Prop :=
  IsTopologicalRing Λ ∧ CompactSpace Λ ∧ T2Space Λ ∧ TotallyDisconnectedSpace Λ

A compact Hausdorff totally disconnected topological ring.

theorem isTopologicalRing (hΛ : IsProfiniteRing Λ) : IsTopologicalRing Λ

A profinite ring carries a topological ring structure.

Show proof
theorem compactSpace (hΛ : IsProfiniteRing Λ) : CompactSpace Λ

The compact-space instance on a profinite ring.

Show proof
theorem t2Space (hΛ : IsProfiniteRing Λ) : T2Space Λ

The Hausdorff space structure on a profinite ring.

Show proof
theorem t1Space (hΛ : IsProfiniteRing Λ) : T1Space Λ

A profinite ring is \(T_1\).

Show proof
theorem totallyDisconnectedSpace (hΛ : IsProfiniteRing Λ) : TotallyDisconnectedSpace Λ

A profinite ring is totally disconnected as a topological space.

Show proof
theorem isProfiniteSpace (hΛ : IsProfiniteRing Λ) :
    ProCGroups.InverseSystems.IsProfiniteSpace Λ

The underlying topological space of a profinite ring is profinite.

Show proof
def IsTopologicalModuleOver (Λ : Type u) (M : Type v) [Ring Λ] [TopologicalSpace Λ]
    [AddCommGroup M] [TopologicalSpace M] [Module Λ M] : Prop :=
  IsTopologicalRing Λ ∧ IsTopologicalAddGroup M ∧ ContinuousSMul Λ M

A topological module over a topological ring.

def IsProfiniteModule (Λ : Type u) (M : Type v) [Ring Λ] [TopologicalSpace Λ]
    [AddCommGroup M] [TopologicalSpace M] [Module Λ M] : Prop :=
  IsProfiniteRing Λ ∧ IsTopologicalAddGroup M ∧ ContinuousSMul Λ M ∧
    CompactSpace M ∧ T2Space M ∧ TotallyDisconnectedSpace M

A profinite module over a profinite ring. This predicate is intentionally a Prop, not a typeclass. The bundled public object for data formulations is ProfiniteModule; theorem statements may keep taking explicit hM: IsProfiniteModule \(\Lambda\) M hypotheses.

def IsFreeProfiniteModuleOn (Λ : Type u) (X : Type v) (M : Type w)
    [Ring Λ] [TopologicalSpace Λ] [TopologicalSpace X] [AddCommGroup M] [TopologicalSpace M]
    [Module Λ M] (ι : X -> M) : Prop :=
  IsProfiniteRing Λ ∧ IsProfiniteModule Λ M ∧ Continuous ι ∧
    closure (Submodule.span Λ (Set.range ι) : Set M) = Set.univ ∧
      ∀ (N : Type w) [AddCommGroup N] [TopologicalSpace N] [Module Λ N],
        IsProfiniteModule Λ N →
          ∀ f : X -> N, Continuous f →
            ∃! F : M →L[Λ] N, ∀ x : X, F (ι x) = f x

The universal property of the free profinite module on a profinite space. This is a minimal public interface used by the completed group algebra universal property. The larger construction libraries live outside the public completed-group-algebra root.

def IsFreeProfiniteModuleOnPointed (Λ : Type u) (X : Type v) (M : Type w)
    [Ring Λ] [TopologicalSpace Λ] [TopologicalSpace X] [AddCommGroup M] [TopologicalSpace M]
    [Module Λ M] (base : X) (ι : X -> M) : Prop :=
  IsProfiniteRing Λ ∧ IsProfiniteModule Λ M ∧ Continuous ι ∧ ι base = 0 ∧
    closure (Submodule.span Λ (Set.range ι) : Set M) = Set.univ ∧
      ∀ (N : Type w) [AddCommGroup N] [TopologicalSpace N] [Module Λ N],
        IsProfiniteModule Λ N →
          ∀ f : X -> N, Continuous f → f base = 0 →
            ∃! F : M →L[Λ] N, ∀ x : X, F (ι x) = f x

This is the pointed version of IsFreeProfiniteModuleOn, with the base point mapped to zero.

structure ProfiniteModule (Λ : Type u) [Ring Λ] [TopologicalSpace Λ] where
  carrier : Type v
  [addCommGroup : AddCommGroup carrier]
  [topologicalSpace : TopologicalSpace carrier]
  [module : Module Λ carrier]
  isProfinite : IsProfiniteModule Λ carrier

This structure bundles profinite modules over a fixed profinite ring. Use this when a public data structure should carry a profinite module as an object rather than as separate carrier data, instances, and \(IsProfiniteModule\) proof fields.

theorem isProfiniteRing (hM : IsProfiniteModule Λ M) : IsProfiniteRing Λ

The scalar ring of a profinite module is a profinite ring.

Show proof
theorem isTopologicalAddGroup (hM : IsProfiniteModule Λ M) : IsTopologicalAddGroup M

The additive group of a profinite module is a topological group.

Show proof
theorem continuousSMul (hM : IsProfiniteModule Λ M) : ContinuousSMul Λ M

The scalar action of a profinite module is continuous.

Show proof
theorem compactSpace (hM : IsProfiniteModule Λ M) : CompactSpace M

The compact-space instance on a profinite module.

Show proof
theorem t2Space (hM : IsProfiniteModule Λ M) : T2Space M

The Hausdorff space structure on a profinite module.

Show proof
theorem t1Space (hM : IsProfiniteModule Λ M) : T1Space M

A profinite module is \(T_1\).

Show proof
theorem totallyDisconnectedSpace (hM : IsProfiniteModule Λ M) :
    TotallyDisconnectedSpace M

A profinite module is totally disconnected as a topological space.

Show proof
theorem isTopologicalModuleOver (hM : IsProfiniteModule Λ M) :
    IsTopologicalModuleOver Λ M

A profinite module is a topological module over its scalar ring.

Show proof
theorem isProfiniteSpace (hM : IsProfiniteModule Λ M) :
    ProCGroups.InverseSystems.IsProfiniteSpace M

The underlying topological space of a profinite module is profinite.

Show proof
def IsDiscreteModule (Λ : Type u) (M : Type v) [Ring Λ] [TopologicalSpace Λ]
    [AddCommGroup M] [TopologicalSpace M] [Module Λ M] : Prop :=
  IsTopologicalModuleOver Λ M ∧ DiscreteTopology M

A topological module whose underlying module topology is discrete.

def IsFiniteSubmodule {Λ : Type u} {M : Type v} [Ring Λ] [AddCommGroup M] [Module Λ M]
    (N : Submodule Λ M) : Prop :=
  (N : Set M).Finite

A submodule whose underlying set is finite.

def IsUnionOfFiniteSubmodules (Λ : Type u) (M : Type v) [Ring Λ] [AddCommGroup M]
    [Module Λ M] : Prop :=
  ∀ m : M, ∃ N : Submodule Λ M, IsFiniteSubmodule N ∧ m ∈ N

Every element lies in a finite submodule.

def HasFiniteIndexSubmoduleBasis (Λ : Type u) (M : Type v) [Ring Λ] [TopologicalSpace M]
    [AddCommGroup M] [Module Λ M] : Prop :=
  ∀ U ∈ 𝓝 (0 : M), ∃ N : Submodule Λ M,
    IsOpen (N : Set M) ∧ (N : Set M) ⊆ U ∧ Nonempty (Fintype (M ⧸ N))

Finite-index submodules form a neighborhood basis at zero.

def IsInverseLimitOfFiniteQuotientModules (Λ : Type u) (M : Type v) [Ring Λ]
    [TopologicalSpace M] [AddCommGroup M] [Module Λ M] : Prop :=
  HasFiniteIndexSubmoduleBasis Λ M ∧
    ∀ U ∈ 𝓝 (0 : M), ∃ N : Submodule Λ M,
      IsOpen (N : Set M) ∧ (N : Set M) ⊆ U ∧ Nonempty (Fintype (M ⧸ N))

A profinite module is represented by its finite quotient modules.

theorem inverseLimitOfFiniteQuotientModules_iff_finiteIndexSubmoduleBasis
    (Λ : Type u) (M : Type v) [Ring Λ] [TopologicalSpace M] [AddCommGroup M]
    [Module Λ M] :
    IsInverseLimitOfFiniteQuotientModules Λ M ↔ HasFiniteIndexSubmoduleBasis Λ M

In Lemma 5.1.1(b), predicate form, in this development the inverse-limit formulation is recorded by a finite-index open-submodule basis at zero.

Show proof