Documentation

Mathlib.GroupTheory.FiniteIndexNormalSubgroup

Finite-index normal subgroups #

This file builds the lattice FiniteIndexNormalSubgroup G of finite-index normal subgroups of a group G, and its additive version FiniteIndexNormalAddSubgroup.

This is used primarily in the definition of the profinite completion of a group.

structure FiniteIndexNormalSubgroup (G : Type u_1) [Group G] extends Subgroup G :
Type u_1

The type of finite-index normal subgroups of a group.

Instances For
    theorem FiniteIndexNormalSubgroup.ext {G : Type u_1} {inst✝ : Group G} {x y : FiniteIndexNormalSubgroup G} (carrier : x.carrier = y.carrier) :
    x = y
    theorem FiniteIndexNormalSubgroup.ext_iff {G : Type u_1} {inst✝ : Group G} {x y : FiniteIndexNormalSubgroup G} :
    x = y ↔ x.carrier = y.carrier
    structure FiniteIndexNormalAddSubgroup (G : Type u_1) [AddGroup G] extends AddSubgroup G :
    Type u_1

    The type of finite-index normal additive subgroups of an additive group.

    Instances For
      theorem FiniteIndexNormalAddSubgroup.ext {G : Type u_1} {inst✝ : AddGroup G} {x y : FiniteIndexNormalAddSubgroup G} (carrier : x.carrier = y.carrier) :
      x = y
      theorem FiniteIndexNormalSubgroup.mem_toSubgroup_iff {G : Type u_1} [Group G] {H : FiniteIndexNormalSubgroup G} {g : G} :
      g ∈ H.toSubgroup ↔ g ∈ H

      Bundle a subgroup with typeclass assumptions of normality and finite index.

      Instances For

        Bundle an additive subgroup with typeclass assumptions of normality and finite index.

        Instances For

          The preimage of a finite-index normal subgroup under a group homomorphism.

          Instances For

            The preimage of a finite-index normal additive subgroup under an additive homomorphism.

            Instances For
              @[simp]
              theorem FiniteIndexNormalSubgroup.comap_comp {G : Type u_1} [Group G] {H : Type u_2} {N : Type u_3} [Group H] [Group N] (f : G β†’* H) (g : H β†’* N) (K : FiniteIndexNormalSubgroup N) :
              comap (g.comp f) K = comap f (comap g K)
              @[simp]
              theorem FiniteIndexNormalAddSubgroup.comap_comp {G : Type u_1} [AddGroup G] {H : Type u_2} {N : Type u_3} [AddGroup H] [AddGroup N] (f : G β†’+ H) (g : H β†’+ N) (K : FiniteIndexNormalAddSubgroup N) :
              comap (g.comp f) K = comap f (comap g K)