Documentation

Mathlib.GroupTheory.Commutator.Basic

Commutators of Subgroups #

If G is a group and H₁ H₂ : Subgroup G then the commutator ⁅H₁, H₂⁆ : Subgroup G is the subgroup of G generated by the commutators h₁ * h₂ * h₁⁻¹ * h₂⁻¹.

Main definitions #

theorem commutatorElement_eq_one_iff_mul_comm {G : Type u_1} [Group G] {g₁ g₂ : G} :
⁅g₁, g₂⁆ = 1 ↔ g₁ * g₂ = g₂ * g₁
theorem commutatorElement_eq_one_iff_commute {G : Type u_1} [Group G] {g₁ g₂ : G} :
⁅g₁, g₂⁆ = 1 ↔ Commute g₁ g₂
theorem Commute.commutator_eq {G : Type u_1} [Group G] {g₁ g₂ : G} (h : Commute g₁ g₂) :
⁅g₁, g₂⁆ = 1
@[simp]
theorem commutatorElement_one_right {G : Type u_1} [Group G] (g : G) :
⁅g, 1⁆ = 1
@[simp]
theorem commutatorElement_one_left {G : Type u_1} [Group G] (g : G) :
⁅1, g⁆ = 1
@[simp]
theorem commutatorElement_self {G : Type u_1} [Group G] (g : G) :
⁅g, g⁆ = 1
@[simp]
theorem commutatorElement_inv {G : Type u_1} [Group G] (g₁ g₂ : G) :
⁅g₁, g₂⁆⁻¹ = ⁅g₂, g₁⁆
theorem map_commutatorElement {G : Type u_1} {G' : Type u_2} {F : Type u_3} [Group G] [Group G'] [FunLike F G G'] [MonoidHomClass F G G'] (f : F) (g₁ g₂ : G) :
f ⁅g₁, g₂⁆ = ⁅f g₁, f g₂⁆
theorem conjugate_commutatorElement {G : Type u_1} [Group G] (g₁ g₂ g₃ : G) :
g₃ * ⁅g₁, g₂⁆ * g₃⁻¹ = ⁅g₃ * g₁ * g₃⁻¹, g₃ * g₂ * g₃⁻¹⁆
@[implicit_reducible]
instance Subgroup.commutator {G : Type u_1} [Group G] :

The commutator of two subgroups H₁ and H₂.

Equations
theorem Subgroup.commutator_def {G : Type u_1} [Group G] (H₁ H₂ : Subgroup G) :
⁅H₁, H₂⁆ = closure {g : G | ∃ g₁ ∈ H₁, ∃ g₂ ∈ H₂, ⁅g₁, g₂⁆ = g}
theorem Subgroup.commutator_mem_commutator {G : Type u_1} [Group G] {g₁ g₂ : G} {H₁ H₂ : Subgroup G} (h₁ : g₁ ∈ H₁) (h₂ : g₂ ∈ H₂) :
⁅g₁, g₂⁆ ∈ ⁅H₁, H₂⁆
theorem Subgroup.commutator_le {G : Type u_1} [Group G] {H₁ H₂ H₃ : Subgroup G} :
⁅H₁, H₂⁆ ≤ H₃ ↔ ∀ g₁ ∈ H₁, ∀ g₂ ∈ H₂, ⁅g₁, g₂⁆ ∈ H₃
theorem Subgroup.commutator_mono {G : Type u_1} [Group G] {H₁ H₂ K₁ K₂ : Subgroup G} (h₁ : H₁ ≤ K₁) (h₂ : H₂ ≤ K₂) :
⁅H₁, H₂⁆ ≤ ⁅K₁, K₂⁆
theorem Subgroup.commutator_eq_bot_iff_le_centralizer {G : Type u_1} [Group G] {H₁ H₂ : Subgroup G} :
⁅H₁, H₂⁆ = ⊥ ↔ H₁ ≤ centralizer ↑H₂
theorem Subgroup.commutator_commutator_eq_bot_of_rotate {G : Type u_1} [Group G] {H₁ H₂ H₃ : Subgroup G} (h1 : ⁅⁅H₂, H₃⁆, H₁⁆ = ⊥) (h2 : ⁅⁅H₃, H₁⁆, H₂⁆ = ⊥) :
⁅⁅H₁, H₂⁆, H₃⁆ = ⊥

The Three Subgroups Lemma (via the Hall-Witt identity)

theorem Subgroup.commutator_comm_le {G : Type u_1} [Group G] (H₁ H₂ : Subgroup G) :
⁅H₁, H₂⁆ ≤ ⁅H₂, H₁⁆
theorem Subgroup.commutator_comm {G : Type u_1} [Group G] (H₁ H₂ : Subgroup G) :
⁅H₁, H₂⁆ = ⁅H₂, H₁⁆
instance Subgroup.commutator_normal {G : Type u_1} [Group G] (H₁ H₂ : Subgroup G) [h₁ : H₁.Normal] [h₂ : H₂.Normal] :
⁅H₁, H₂⁆.Normal
theorem Subgroup.commutator_def' {G : Type u_1} [Group G] (H₁ H₂ : Subgroup G) [H₁.Normal] [H₂.Normal] :
⁅H₁, H₂⁆ = normalClosure {g : G | ∃ g₁ ∈ H₁, ∃ g₂ ∈ H₂, ⁅g₁, g₂⁆ = g}
theorem Subgroup.commutator_le_right {G : Type u_1} [Group G] (H₁ H₂ : Subgroup G) [h : H₂.Normal] :
⁅H₁, H₂⁆ ≤ H₂
theorem Subgroup.commutator_le_left {G : Type u_1} [Group G] (H₁ H₂ : Subgroup G) [H₁.Normal] :
⁅H₁, H₂⁆ ≤ H₁
@[simp]
theorem Subgroup.commutator_bot_left {G : Type u_1} [Group G] (H₁ : Subgroup G) :
@[simp]
theorem Subgroup.commutator_bot_right {G : Type u_1} [Group G] (H₁ : Subgroup G) :
theorem Subgroup.commutator_le_inf {G : Type u_1} [Group G] (H₁ H₂ : Subgroup G) [H₁.Normal] [H₂.Normal] :
⁅H₁, H₂⁆ ≤ H₁ ⊓ H₂
theorem Subgroup.map_commutator {G : Type u_1} {G' : Type u_2} [Group G] [Group G'] (H₁ H₂ : Subgroup G) (f : G →* G') :
map f ⁅H₁, H₂⁆ = ⁅map f H₁, map f H₂⁆
theorem Subgroup.commutator_le_map_commutator {G : Type u_1} {G' : Type u_2} [Group G] [Group G'] {H₁ H₂ : Subgroup G} {f : G →* G'} {K₁ K₂ : Subgroup G'} (h₁ : K₁ ≤ map f H₁) (h₂ : K₂ ≤ map f H₂) :
⁅K₁, K₂⁆ ≤ map f ⁅H₁, H₂⁆
instance Subgroup.commutator_characteristic {G : Type u_1} [Group G] (H₁ H₂ : Subgroup G) [h₁ : H₁.Characteristic] [h₂ : H₂.Characteristic] :
theorem Subgroup.commutator_prod_prod {G : Type u_1} {G' : Type u_2} [Group G] [Group G'] (H₁ H₂ : Subgroup G) (K₁ K₂ : Subgroup G') :
⁅H₁.prod K₁, H₂.prod K₂⁆ = ⁅H₁, H₂⁆.prod ⁅K₁, K₂⁆
theorem Subgroup.commutator_pi_pi_le {η : Type u_4} {Gs : η → Type u_5} [(i : η) → Group (Gs i)] (H K : (i : η) → Subgroup (Gs i)) :
⁅pi Set.univ H, pi Set.univ K⁆ ≤ pi Set.univ fun (i : η) => ⁅H i, K i⁆

The commutator of direct product is contained in the direct product of the commutators.

See commutator_pi_pi_of_finite for equality given Fintype η.

def commutatorSet (G : Type u_1) [Group G] :
Set G

The set of commutator elements ⁅g₁, g₂⁆ in G.

Equations
Instances For
    theorem commutatorSet_def (G : Type u_1) [Group G] :
    commutatorSet G = {g : G | ∃ (g₁ : G) (g₂ : G), ⁅g₁, g₂⁆ = g}
    theorem mem_commutatorSet_iff {G : Type u_1} [Group G] {g : G} :
    g ∈ commutatorSet G ↔ ∃ (g₁ : G) (g₂ : G), ⁅g₁, g₂⁆ = g
    theorem commutator_mem_commutatorSet {G : Type u_1} [Group G] (g₁ g₂ : G) :
    def commutator (G : Type u_1) [Group G] :

    The commutator subgroup of a group G is the normal subgroup generated by the commutators [p,q]=p*q*p⁻¹*q⁻¹.

    Equations
    Instances For
      @[implicit_reducible]
      instance instNormalCommutator (G : Type u_1) [Group G] :
      Equations
      • ⋯ = ⋯
      @[implicit_reducible]
      Equations
      • ⋯ = ⋯
      theorem Subgroup.commutator_le_self {G : Type u_1} [Group G] (H : Subgroup G) :
      theorem mem_commutatorSet_of_isConj_sq (G : Type u_1) [Group G] {g : G} (hg : IsConj g (g ^ 2)) :

      If g is conjugate to g ^ 2, then g is a commutator

      theorem map_commutator_eq (G : Type u_1) [Group G] {H : Type u_4} [Group H] (f : G →* H) :
      def commutatorRepresentatives (G : Type u_1) [Group G] :
      Set (G × G)

      Representatives (g₁, g₂) : G × G of commutators ⁅g₁, g₂⁆ ∈ G.

      Equations
      Instances For

        Subgroup generated by representatives g₁ g₂ : G of commutators ⁅g₁, g₂⁆ ∈ G.

        Equations
        Instances For

          If N is a normal subgroup of G and H a commutative subgroup such that H ⊔ N = ⊤, then N contains commutator G.