Documentation

Mathlib.Algebra.Group.Subgroup.MulOpposite

Mul-opposite subgroups #

Tags #

subgroup, subgroups

def Subgroup.op {G : Type u_2} [Group G] (H : Subgroup G) :

Pull a subgroup back to an opposite subgroup along MulOpposite.unop

Equations
  • H.op = { carrier := MulOpposite.unop ⁻¹' ↑H, mul_mem' := ⋯, one_mem' := ⋯, inv_mem' := ⋯ }
Instances For

    Pull an additive subgroup back to an opposite additive subgroup along AddOpposite.unop

    Equations
    • H.op = { carrier := AddOpposite.unop ⁻¹' ↑H, add_mem' := ⋯, zero_mem' := ⋯, neg_mem' := ⋯ }
    Instances For
      theorem AddSubgroup.op.proof_1 {G : Type u_1} [AddGroup G] (H : AddSubgroup G) :
      ∀ {a b : Gᵃᵒᵖ}, a ∈ AddOpposite.unop ⁻¹' ↑H → b ∈ AddOpposite.unop ⁻¹' ↑H → AddOpposite.unop b + AddOpposite.unop a ∈ H
      @[simp]
      theorem Subgroup.op_coe {G : Type u_2} [Group G] (H : Subgroup G) :
      ↑H.op = MulOpposite.unop ⁻¹' ↑H
      @[simp]
      theorem AddSubgroup.op_coe {G : Type u_2} [AddGroup G] (H : AddSubgroup G) :
      ↑H.op = AddOpposite.unop ⁻¹' ↑H
      instance Subgroup.instSMul {G : Type u_2} [Group G] (H : Subgroup G) :
      SMul (↥H.op) G
      Equations
      • H.instSMul = H.op.smul
      instance AddSubgroup.instVAdd {G : Type u_2} [AddGroup G] (H : AddSubgroup G) :
      VAdd (↥H.op) G
      Equations
      • H.instVAdd = H.op.vadd
      @[simp]
      theorem Subgroup.mem_op {G : Type u_2} [Group G] {x : Gᵐᵒᵖ} {S : Subgroup G} :
      @[simp]
      theorem AddSubgroup.mem_op {G : Type u_2} [AddGroup G] {x : Gᵃᵒᵖ} {S : AddSubgroup G} :
      @[simp]
      theorem Subgroup.op_toSubmonoid {G : Type u_2} [Group G] (H : Subgroup G) :
      H.op.toSubmonoid = H.op
      @[simp]
      theorem AddSubgroup.op_toAddSubmonoid {G : Type u_2} [AddGroup G] (H : AddSubgroup G) :
      H.op.toAddSubmonoid = H.op
      def Subgroup.unop {G : Type u_2} [Group G] (H : Subgroup Gᵐᵒᵖ) :

      Pull an opposite subgroup back to a subgroup along MulOpposite.op

      Equations
      • H.unop = { carrier := MulOpposite.op ⁻¹' ↑H, mul_mem' := ⋯, one_mem' := ⋯, inv_mem' := ⋯ }
      Instances For
        theorem AddSubgroup.unop.proof_1 {G : Type u_1} [AddGroup G] (H : AddSubgroup Gᵃᵒᵖ) :
        ∀ {a b : G}, a ∈ AddOpposite.op ⁻¹' ↑H → b ∈ AddOpposite.op ⁻¹' ↑H → { unop' := b } + { unop' := a } ∈ H

        Pull an opposite additive subgroup back to an additive subgroup along AddOpposite.op

        Equations
        • H.unop = { carrier := AddOpposite.op ⁻¹' ↑H, add_mem' := ⋯, zero_mem' := ⋯, neg_mem' := ⋯ }
        Instances For
          @[simp]
          theorem Subgroup.unop_coe {G : Type u_2} [Group G] (H : Subgroup Gᵐᵒᵖ) :
          ↑H.unop = MulOpposite.op ⁻¹' ↑H
          @[simp]
          theorem AddSubgroup.unop_coe {G : Type u_2} [AddGroup G] (H : AddSubgroup Gᵃᵒᵖ) :
          ↑H.unop = AddOpposite.op ⁻¹' ↑H
          @[simp]
          theorem Subgroup.mem_unop {G : Type u_2} [Group G] {x : G} {S : Subgroup Gᵐᵒᵖ} :
          x ∈ S.unop ↔ MulOpposite.op x ∈ S
          @[simp]
          theorem AddSubgroup.mem_unop {G : Type u_2} [AddGroup G] {x : G} {S : AddSubgroup Gᵃᵒᵖ} :
          x ∈ S.unop ↔ AddOpposite.op x ∈ S
          @[simp]
          theorem Subgroup.unop_toSubmonoid {G : Type u_2} [Group G] (H : Subgroup Gᵐᵒᵖ) :
          H.unop.toSubmonoid = H.unop
          @[simp]
          theorem AddSubgroup.unop_toAddSubmonoid {G : Type u_2} [AddGroup G] (H : AddSubgroup Gᵃᵒᵖ) :
          H.unop.toAddSubmonoid = H.unop
          @[simp]
          theorem Subgroup.unop_op {G : Type u_2} [Group G] (S : Subgroup G) :
          S.op.unop = S
          @[simp]
          theorem AddSubgroup.unop_op {G : Type u_2} [AddGroup G] (S : AddSubgroup G) :
          S.op.unop = S
          @[simp]
          theorem Subgroup.op_unop {G : Type u_2} [Group G] (S : Subgroup Gᵐᵒᵖ) :
          S.unop.op = S
          @[simp]
          theorem AddSubgroup.op_unop {G : Type u_2} [AddGroup G] (S : AddSubgroup Gᵃᵒᵖ) :
          S.unop.op = S

          Lattice results #

          theorem Subgroup.op_le_iff {G : Type u_2} [Group G] {S₁ : Subgroup G} {S₂ : Subgroup Gᵐᵒᵖ} :
          S₁.op ≤ S₂ ↔ S₁ ≤ S₂.unop
          theorem AddSubgroup.op_le_iff {G : Type u_2} [AddGroup G] {S₁ : AddSubgroup G} {S₂ : AddSubgroup Gᵃᵒᵖ} :
          S₁.op ≤ S₂ ↔ S₁ ≤ S₂.unop
          theorem Subgroup.le_op_iff {G : Type u_2} [Group G] {S₁ : Subgroup Gᵐᵒᵖ} {S₂ : Subgroup G} :
          S₁ ≤ S₂.op ↔ S₁.unop ≤ S₂
          theorem AddSubgroup.le_op_iff {G : Type u_2} [AddGroup G] {S₁ : AddSubgroup Gᵃᵒᵖ} {S₂ : AddSubgroup G} :
          S₁ ≤ S₂.op ↔ S₁.unop ≤ S₂
          @[simp]
          theorem Subgroup.op_le_op_iff {G : Type u_2} [Group G] {S₁ : Subgroup G} {S₂ : Subgroup G} :
          S₁.op ≤ S₂.op ↔ S₁ ≤ S₂
          @[simp]
          theorem AddSubgroup.op_le_op_iff {G : Type u_2} [AddGroup G] {S₁ : AddSubgroup G} {S₂ : AddSubgroup G} :
          S₁.op ≤ S₂.op ↔ S₁ ≤ S₂
          @[simp]
          theorem Subgroup.unop_le_unop_iff {G : Type u_2} [Group G] {S₁ : Subgroup Gᵐᵒᵖ} {S₂ : Subgroup Gᵐᵒᵖ} :
          S₁.unop ≤ S₂.unop ↔ S₁ ≤ S₂
          @[simp]
          theorem AddSubgroup.unop_le_unop_iff {G : Type u_2} [AddGroup G] {S₁ : AddSubgroup Gᵃᵒᵖ} {S₂ : AddSubgroup Gᵃᵒᵖ} :
          S₁.unop ≤ S₂.unop ↔ S₁ ≤ S₂

          A subgroup H of G determines a subgroup H.op of the opposite group Gᵐᵒᵖ.

          Equations
          • Subgroup.opEquiv = { toFun := Subgroup.op, invFun := Subgroup.unop, left_inv := ⋯, right_inv := ⋯, map_rel_iff' := ⋯ }
          Instances For

            An additive subgroup H of G determines an additive subgroup H.op of the opposite additive group Gᵃᵒᵖ.

            Equations
            • AddSubgroup.opEquiv = { toFun := AddSubgroup.op, invFun := AddSubgroup.unop, left_inv := ⋯, right_inv := ⋯, map_rel_iff' := ⋯ }
            Instances For
              @[simp]
              theorem Subgroup.opEquiv_apply {G : Type u_2} [Group G] (H : Subgroup G) :
              Subgroup.opEquiv H = H.op
              @[simp]
              theorem AddSubgroup.opEquiv_apply {G : Type u_2} [AddGroup G] (H : AddSubgroup G) :
              AddSubgroup.opEquiv H = H.op
              @[simp]
              theorem AddSubgroup.opEquiv_symm_apply {G : Type u_2} [AddGroup G] (H : AddSubgroup Gᵃᵒᵖ) :
              (RelIso.symm AddSubgroup.opEquiv) H = H.unop
              @[simp]
              theorem Subgroup.opEquiv_symm_apply {G : Type u_2} [Group G] (H : Subgroup Gᵐᵒᵖ) :
              (RelIso.symm Subgroup.opEquiv) H = H.unop
              theorem Subgroup.op_injective {G : Type u_2} [Group G] :
              Function.Injective Subgroup.op
              theorem AddSubgroup.op_injective {G : Type u_2} [AddGroup G] :
              Function.Injective AddSubgroup.op
              theorem Subgroup.unop_injective {G : Type u_2} [Group G] :
              Function.Injective Subgroup.unop
              theorem AddSubgroup.unop_injective {G : Type u_2} [AddGroup G] :
              Function.Injective AddSubgroup.unop
              @[simp]
              theorem Subgroup.op_inj {G : Type u_2} [Group G] {S : Subgroup G} {T : Subgroup G} :
              S.op = T.op ↔ S = T
              @[simp]
              theorem AddSubgroup.op_inj {G : Type u_2} [AddGroup G] {S : AddSubgroup G} {T : AddSubgroup G} :
              S.op = T.op ↔ S = T
              @[simp]
              theorem Subgroup.unop_inj {G : Type u_2} [Group G] {S : Subgroup Gᵐᵒᵖ} {T : Subgroup Gᵐᵒᵖ} :
              S.unop = T.unop ↔ S = T
              @[simp]
              theorem AddSubgroup.unop_inj {G : Type u_2} [AddGroup G] {S : AddSubgroup Gᵃᵒᵖ} {T : AddSubgroup Gᵃᵒᵖ} :
              S.unop = T.unop ↔ S = T
              @[simp]
              theorem Subgroup.op_bot {G : Type u_2} [Group G] :
              ⊥.op = ⊥
              @[simp]
              theorem AddSubgroup.op_bot {G : Type u_2} [AddGroup G] :
              ⊥.op = ⊥
              @[simp]
              theorem Subgroup.op_eq_bot {G : Type u_2} [Group G] {S : Subgroup G} :
              S.op = ⊥ ↔ S = ⊥
              @[simp]
              theorem AddSubgroup.op_eq_bot {G : Type u_2} [AddGroup G] {S : AddSubgroup G} :
              S.op = ⊥ ↔ S = ⊥
              @[simp]
              theorem Subgroup.unop_bot {G : Type u_2} [Group G] :
              ⊥.unop = ⊥
              @[simp]
              theorem AddSubgroup.unop_bot {G : Type u_2} [AddGroup G] :
              ⊥.unop = ⊥
              @[simp]
              theorem Subgroup.unop_eq_bot {G : Type u_2} [Group G] {S : Subgroup Gᵐᵒᵖ} :
              S.unop = ⊥ ↔ S = ⊥
              @[simp]
              theorem AddSubgroup.unop_eq_bot {G : Type u_2} [AddGroup G] {S : AddSubgroup Gᵃᵒᵖ} :
              S.unop = ⊥ ↔ S = ⊥
              @[simp]
              theorem Subgroup.op_top {G : Type u_2} [Group G] :
              ⊤.op = ⊤
              @[simp]
              theorem AddSubgroup.op_top {G : Type u_2} [AddGroup G] :
              ⊤.op = ⊤
              @[simp]
              theorem Subgroup.op_eq_top {G : Type u_2} [Group G] {S : Subgroup G} :
              S.op = ⊤ ↔ S = ⊤
              @[simp]
              theorem AddSubgroup.op_eq_top {G : Type u_2} [AddGroup G] {S : AddSubgroup G} :
              S.op = ⊤ ↔ S = ⊤
              @[simp]
              theorem Subgroup.unop_top {G : Type u_2} [Group G] :
              ⊤.unop = ⊤
              @[simp]
              theorem AddSubgroup.unop_top {G : Type u_2} [AddGroup G] :
              ⊤.unop = ⊤
              @[simp]
              theorem Subgroup.unop_eq_top {G : Type u_2} [Group G] {S : Subgroup Gᵐᵒᵖ} :
              S.unop = ⊤ ↔ S = ⊤
              @[simp]
              theorem AddSubgroup.unop_eq_top {G : Type u_2} [AddGroup G] {S : AddSubgroup Gᵃᵒᵖ} :
              S.unop = ⊤ ↔ S = ⊤
              theorem Subgroup.op_sup {G : Type u_2} [Group G] (S₁ : Subgroup G) (S₂ : Subgroup G) :
              (S₁ ⊔ S₂).op = S₁.op ⊔ S₂.op
              theorem AddSubgroup.op_sup {G : Type u_2} [AddGroup G] (S₁ : AddSubgroup G) (S₂ : AddSubgroup G) :
              (S₁ ⊔ S₂).op = S₁.op ⊔ S₂.op
              theorem Subgroup.unop_sup {G : Type u_2} [Group G] (S₁ : Subgroup Gᵐᵒᵖ) (S₂ : Subgroup Gᵐᵒᵖ) :
              (S₁ ⊔ S₂).unop = S₁.unop ⊔ S₂.unop
              theorem AddSubgroup.unop_sup {G : Type u_2} [AddGroup G] (S₁ : AddSubgroup Gᵃᵒᵖ) (S₂ : AddSubgroup Gᵃᵒᵖ) :
              (S₁ ⊔ S₂).unop = S₁.unop ⊔ S₂.unop
              theorem Subgroup.op_inf {G : Type u_2} [Group G] (S₁ : Subgroup G) (S₂ : Subgroup G) :
              (S₁ ⊓ S₂).op = S₁.op ⊓ S₂.op
              theorem AddSubgroup.op_inf {G : Type u_2} [AddGroup G] (S₁ : AddSubgroup G) (S₂ : AddSubgroup G) :
              (S₁ ⊓ S₂).op = S₁.op ⊓ S₂.op
              theorem Subgroup.unop_inf {G : Type u_2} [Group G] (S₁ : Subgroup Gᵐᵒᵖ) (S₂ : Subgroup Gᵐᵒᵖ) :
              (S₁ ⊓ S₂).unop = S₁.unop ⊓ S₂.unop
              theorem AddSubgroup.unop_inf {G : Type u_2} [AddGroup G] (S₁ : AddSubgroup Gᵃᵒᵖ) (S₂ : AddSubgroup Gᵃᵒᵖ) :
              (S₁ ⊓ S₂).unop = S₁.unop ⊓ S₂.unop
              theorem Subgroup.op_sSup {G : Type u_2} [Group G] (S : Set (Subgroup G)) :
              (sSup S).op = sSup (Subgroup.unop ⁻¹' S)
              theorem AddSubgroup.op_sSup {G : Type u_2} [AddGroup G] (S : Set (AddSubgroup G)) :
              (sSup S).op = sSup (AddSubgroup.unop ⁻¹' S)
              theorem Subgroup.unop_sSup {G : Type u_2} [Group G] (S : Set (Subgroup Gᵐᵒᵖ)) :
              (sSup S).unop = sSup (Subgroup.op ⁻¹' S)
              theorem AddSubgroup.unop_sSup {G : Type u_2} [AddGroup G] (S : Set (AddSubgroup Gᵃᵒᵖ)) :
              (sSup S).unop = sSup (AddSubgroup.op ⁻¹' S)
              theorem Subgroup.op_sInf {G : Type u_2} [Group G] (S : Set (Subgroup G)) :
              (sInf S).op = sInf (Subgroup.unop ⁻¹' S)
              theorem AddSubgroup.op_sInf {G : Type u_2} [AddGroup G] (S : Set (AddSubgroup G)) :
              (sInf S).op = sInf (AddSubgroup.unop ⁻¹' S)
              theorem Subgroup.unop_sInf {G : Type u_2} [Group G] (S : Set (Subgroup Gᵐᵒᵖ)) :
              (sInf S).unop = sInf (Subgroup.op ⁻¹' S)
              theorem AddSubgroup.unop_sInf {G : Type u_2} [AddGroup G] (S : Set (AddSubgroup Gᵃᵒᵖ)) :
              (sInf S).unop = sInf (AddSubgroup.op ⁻¹' S)
              theorem Subgroup.op_iSup {ι : Sort u_1} {G : Type u_2} [Group G] (S : ι → Subgroup G) :
              (iSup S).op = ⨆ (i : ι), (S i).op
              theorem AddSubgroup.op_iSup {ι : Sort u_1} {G : Type u_2} [AddGroup G] (S : ι → AddSubgroup G) :
              (iSup S).op = ⨆ (i : ι), (S i).op
              theorem Subgroup.unop_iSup {ι : Sort u_1} {G : Type u_2} [Group G] (S : ι → Subgroup Gᵐᵒᵖ) :
              (iSup S).unop = ⨆ (i : ι), (S i).unop
              theorem AddSubgroup.unop_iSup {ι : Sort u_1} {G : Type u_2} [AddGroup G] (S : ι → AddSubgroup Gᵃᵒᵖ) :
              (iSup S).unop = ⨆ (i : ι), (S i).unop
              theorem Subgroup.op_iInf {ι : Sort u_1} {G : Type u_2} [Group G] (S : ι → Subgroup G) :
              (iInf S).op = ⨅ (i : ι), (S i).op
              theorem AddSubgroup.op_iInf {ι : Sort u_1} {G : Type u_2} [AddGroup G] (S : ι → AddSubgroup G) :
              (iInf S).op = ⨅ (i : ι), (S i).op
              theorem Subgroup.unop_iInf {ι : Sort u_1} {G : Type u_2} [Group G] (S : ι → Subgroup Gᵐᵒᵖ) :
              (iInf S).unop = ⨅ (i : ι), (S i).unop
              theorem AddSubgroup.unop_iInf {ι : Sort u_1} {G : Type u_2} [AddGroup G] (S : ι → AddSubgroup Gᵃᵒᵖ) :
              (iInf S).unop = ⨅ (i : ι), (S i).unop
              theorem Subgroup.op_closure {G : Type u_2} [Group G] (s : Set G) :
              (Subgroup.closure s).op = Subgroup.closure (MulOpposite.unop ⁻¹' s)
              theorem AddSubgroup.op_closure {G : Type u_2} [AddGroup G] (s : Set G) :
              (AddSubgroup.closure s).op = AddSubgroup.closure (AddOpposite.unop ⁻¹' s)
              theorem Subgroup.unop_closure {G : Type u_2} [Group G] (s : Set Gᵐᵒᵖ) :
              (Subgroup.closure s).unop = Subgroup.closure (MulOpposite.op ⁻¹' s)
              theorem AddSubgroup.unop_closure {G : Type u_2} [AddGroup G] (s : Set Gᵃᵒᵖ) :
              (AddSubgroup.closure s).unop = AddSubgroup.closure (AddOpposite.op ⁻¹' s)
              def Subgroup.equivOp {G : Type u_2} [Group G] (H : Subgroup G) :
              ↥H ≃ ↥H.op

              Bijection between a subgroup H and its opposite.

              Equations
              • H.equivOp = MulOpposite.opEquiv.subtypeEquiv ⋯
              Instances For
                def AddSubgroup.equivOp {G : Type u_2} [AddGroup G] (H : AddSubgroup G) :
                ↥H ≃ ↥H.op

                Bijection between an additive subgroup H and its opposite.

                Equations
                • H.equivOp = AddOpposite.opEquiv.subtypeEquiv ⋯
                Instances For
                  theorem AddSubgroup.equivOp.proof_1 {G : Type u_1} [AddGroup G] (H : AddSubgroup G) :
                  ∀ (x : G), x ∈ H ↔ x ∈ H
                  @[simp]
                  theorem Subgroup.equivOp_symm_apply_coe {G : Type u_2} [Group G] (H : Subgroup G) (b : ↥H.op) :
                  ↑(H.equivOp.symm b) = MulOpposite.unop ↑b
                  @[simp]
                  theorem AddSubgroup.equivOp_symm_apply_coe {G : Type u_2} [AddGroup G] (H : AddSubgroup G) (b : ↥H.op) :
                  ↑(H.equivOp.symm b) = AddOpposite.unop ↑b
                  @[simp]
                  theorem AddSubgroup.equivOp_apply_coe {G : Type u_2} [AddGroup G] (H : AddSubgroup G) (a : ↥H) :
                  ↑(H.equivOp a) = AddOpposite.op ↑a
                  @[simp]
                  theorem Subgroup.equivOp_apply_coe {G : Type u_2} [Group G] (H : Subgroup G) (a : ↥H) :
                  ↑(H.equivOp a) = MulOpposite.op ↑a
                  Equations
                  Equations
                  Equations
                  • ⋯ = ⋯
                  Equations
                  • ⋯ = ⋯
                  theorem Subgroup.smul_opposite_mul {G : Type u_2} [Group G] {H : Subgroup G} (x : G) (g : G) (h : ↥H.op) :
                  h • (g * x) = g * h • x
                  theorem AddSubgroup.vadd_opposite_add {G : Type u_2} [AddGroup G] {H : AddSubgroup G} (x : G) (g : G) (h : ↥H.op) :
                  h +ᵥ (g + x) = g + (h +ᵥ x)
                  theorem Subgroup.op_normalizer {G : Type u_2} [Group G] (H : Subgroup G) :
                  H.normalizer.op = H.op.normalizer
                  theorem AddSubgroup.op_normalizer {G : Type u_2} [AddGroup G] (H : AddSubgroup G) :
                  H.normalizer.op = H.op.normalizer
                  theorem Subgroup.unop_normalizer {G : Type u_2} [Group G] (H : Subgroup Gᵐᵒᵖ) :
                  H.normalizer.unop = H.unop.normalizer
                  theorem AddSubgroup.unop_normalizer {G : Type u_2} [AddGroup G] (H : AddSubgroup Gᵃᵒᵖ) :
                  H.normalizer.unop = H.unop.normalizer
                  @[simp]
                  theorem Subgroup.normal_op {G : Type u_2} [Group G] {H : Subgroup G} :
                  H.op.Normal ↔ H.Normal
                  @[simp]
                  theorem AddSubgroup.normal_op {G : Type u_2} [AddGroup G] {H : AddSubgroup G} :
                  H.op.Normal ↔ H.Normal
                  theorem Subgroup.Normal.op {G : Type u_2} [Group G] {H : Subgroup G} :
                  H.Normal → H.op.Normal

                  Alias of the reverse direction of Subgroup.normal_op.

                  theorem Subgroup.Normal.of_op {G : Type u_2} [Group G] {H : Subgroup G} :
                  H.op.Normal → H.Normal

                  Alias of the forward direction of Subgroup.normal_op.

                  theorem AddSubgroup.Normal.op {G : Type u_2} [AddGroup G] {H : AddSubgroup G} :
                  H.Normal → H.op.Normal
                  theorem AddSubgroup.Normal.of_op {G : Type u_2} [AddGroup G] {H : AddSubgroup G} :
                  H.op.Normal → H.Normal
                  instance Subgroup.op.instNormal {G : Type u_2} [Group G] {H : Subgroup G} [H.Normal] :
                  H.op.Normal
                  Equations
                  • ⋯ = ⋯
                  instance AddSubgroup.op.instNormal {G : Type u_2} [AddGroup G] {H : AddSubgroup G} [H.Normal] :
                  H.op.Normal
                  Equations
                  • ⋯ = ⋯
                  @[simp]
                  theorem Subgroup.normal_unop {G : Type u_2} [Group G] {H : Subgroup Gᵐᵒᵖ} :
                  H.unop.Normal ↔ H.Normal
                  @[simp]
                  theorem AddSubgroup.normal_unop {G : Type u_2} [AddGroup G] {H : AddSubgroup Gᵃᵒᵖ} :
                  H.unop.Normal ↔ H.Normal
                  theorem Subgroup.Normal.unop {G : Type u_2} [Group G] {H : Subgroup Gᵐᵒᵖ} :
                  H.Normal → H.unop.Normal

                  Alias of the reverse direction of Subgroup.normal_unop.

                  theorem Subgroup.Normal.of_unop {G : Type u_2} [Group G] {H : Subgroup Gᵐᵒᵖ} :
                  H.unop.Normal → H.Normal

                  Alias of the forward direction of Subgroup.normal_unop.

                  theorem AddSubgroup.Normal.of_unop {G : Type u_2} [AddGroup G] {H : AddSubgroup Gᵃᵒᵖ} :
                  H.unop.Normal → H.Normal
                  theorem AddSubgroup.Normal.unop {G : Type u_2} [AddGroup G] {H : AddSubgroup Gᵃᵒᵖ} :
                  H.Normal → H.unop.Normal
                  instance Subgroup.unop.instNormal {G : Type u_2} [Group G] {H : Subgroup Gᵐᵒᵖ} [H.Normal] :
                  H.unop.Normal
                  Equations
                  • ⋯ = ⋯
                  instance AddSubgroup.unop.instNormal {G : Type u_2} [AddGroup G] {H : AddSubgroup Gᵃᵒᵖ} [H.Normal] :
                  H.unop.Normal
                  Equations
                  • ⋯ = ⋯