Documentation

Mathlib.Algebra.Lie.Submodule

Lie submodules of a Lie algebra #

In this file we define Lie submodules, we construct the lattice structure on Lie submodules and we use it to define various important operations, notably the Lie span of a subset of a Lie module.

Main definitions #

Tags #

lie algebra, lie submodule, lie ideal, lattice structure

structure LieSubmodule (R : Type u) (L : Type v) (M : Type w) [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] extends Submodule R M :

A Lie submodule of a Lie module is a submodule that is closed under the Lie bracket. This is a sufficient condition for the subset itself to form a Lie module.

Instances For
    @[implicit_reducible]
    instance LieSubmodule.instSetLike {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
    Equations
    instance LieSubmodule.instSMulMemClass {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
    @[implicit_reducible]
    instance LieSubmodule.instZero {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :

    The zero module is a Lie submodule of any Lie module.

    Equations
    @[implicit_reducible]
    instance LieSubmodule.instInhabited {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
    Equations
    @[implicit_reducible, instance 10000]
    instance LieSubmodule.coeSort {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
    Equations
    @[implicit_reducible, instance 500]
    instance LieSubmodule.coeSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
    Equations
    instance LieSubmodule.instCanLiftSubmoduleToSubmoduleForallForallForallMemBracket {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
    CanLift (Submodule R M) (LieSubmodule R L M) (fun (x : LieSubmodule R L M) => x) fun (N : Submodule R M) => ∀ {x : L} {m : M}, m Nx, m N
    theorem LieSubmodule.coe_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
    N = N
    theorem LieSubmodule.mem_carrier {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) {x : M} :
    x (↑N).carrier x N
    theorem LieSubmodule.mem_mk_iff {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (S : Set M) (h₁ : ∀ {a b : M}, a Sb Sa + b S) (h₂ : S 0) (h₃ : ∀ (c : R) {x : M}, x { carrier := S, add_mem' := h₁, zero_mem' := h₂ }.carrierc x { carrier := S, add_mem' := h₁, zero_mem' := h₂ }.carrier) (h₄ : ∀ {x : L} {m : M}, m { carrier := S, add_mem' := h₁, zero_mem' := h₂, smul_mem' := h₃ }.carrierx, m { carrier := S, add_mem' := h₁, zero_mem' := h₂, smul_mem' := h₃ }.carrier) {x : M} :
    x { carrier := S, add_mem' := h₁, zero_mem' := h₂, smul_mem' := h₃, lie_mem := h₄ } x S
    @[simp]
    theorem LieSubmodule.mem_mk_iff' {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (p : Submodule R M) (h : ∀ {x : L} {m : M}, m p.carrierx, m p.carrier) {x : M} :
    x { toSubmodule := p, lie_mem := h } x p
    @[simp]
    theorem LieSubmodule.mem_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) {x : M} :
    x N x N
    theorem LieSubmodule.mem_coe {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) {x : M} :
    x N x N
    theorem LieSubmodule.zero_mem {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
    0 N
    @[simp]
    theorem LieSubmodule.mk_eq_zero {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) {x : M} (h : x N) :
    x, h = 0 x = 0
    @[simp]
    theorem LieSubmodule.coe_toSet_mk {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (S : Set M) (h₁ : ∀ {a b : M}, a Sb Sa + b S) (h₂ : S 0) (h₃ : ∀ (c : R) {x : M}, x { carrier := S, add_mem' := h₁, zero_mem' := h₂ }.carrierc x { carrier := S, add_mem' := h₁, zero_mem' := h₂ }.carrier) (h₄ : ∀ {x : L} {m : M}, m { carrier := S, add_mem' := h₁, zero_mem' := h₂, smul_mem' := h₃ }.carrierx, m { carrier := S, add_mem' := h₁, zero_mem' := h₂, smul_mem' := h₃ }.carrier) :
    { carrier := S, add_mem' := h₁, zero_mem' := h₂, smul_mem' := h₃, lie_mem := h₄ } = S
    theorem LieSubmodule.toSubmodule_mk {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (p : Submodule R M) (h : ∀ {x : L} {m : M}, m p.carrierx, m p.carrier) :
    { toSubmodule := p, lie_mem := h } = p
    theorem LieSubmodule.ext {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N N' : LieSubmodule R L M) (h : ∀ (m : M), m N m N') :
    N = N'
    theorem LieSubmodule.ext_iff {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N N' : LieSubmodule R L M} :
    N = N' ∀ (m : M), m N m N'
    @[simp]
    theorem LieSubmodule.toSubmodule_inj {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N N' : LieSubmodule R L M) :
    N = N' N = N'
    def LieSubmodule.copy {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) (s : Set M) (hs : s = N) :

    Copy of a LieSubmodule with a new carrier equal to the old one. Useful to fix definitional equalities.

    Equations
    • N.copy s hs = { carrier := s, add_mem' := , zero_mem' := , smul_mem' := , lie_mem := }
    Instances For
      @[simp]
      theorem LieSubmodule.coe_copy {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (S : LieSubmodule R L M) (s : Set M) (hs : s = S) :
      (S.copy s hs) = s
      theorem LieSubmodule.copy_eq {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (S : LieSubmodule R L M) (s : Set M) (hs : s = S) :
      S.copy s hs = S
      @[implicit_reducible]
      instance LieSubmodule.instLieRingModuleSubtypeMem {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
      Equations
      @[simp]
      theorem LieSubmodule.coe_zero {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
      0 = 0
      @[simp]
      theorem LieSubmodule.coe_add {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) (m m' : N) :
      ↑(m + m') = m + m'
      @[simp]
      theorem LieSubmodule.coe_neg {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) (m : N) :
      ↑(-m) = -m
      @[simp]
      theorem LieSubmodule.coe_sub {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) (m m' : N) :
      ↑(m - m') = m - m'
      @[simp]
      theorem LieSubmodule.coe_smul {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) (t : R) (m : N) :
      ↑(t m) = t m
      @[simp]
      theorem LieSubmodule.coe_bracket {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) (x : L) (m : N) :
      x, m = x, m
      instance LieSubmodule.instIsNoetherianSubtypeMem {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [IsNoetherian R M] (N : LieSubmodule R L M) :
      instance LieSubmodule.instIsArtinianSubtypeMem {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [IsArtinian R M] (N : LieSubmodule R L M) :
      IsArtinian R N
      def LieSubmodule.restr {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [LieAlgebra R L] (N : LieSubmodule R L M) (H : LieSubalgebra R L) :
      LieSubmodule R (↥H) M

      Given a Lie submodule N of a Lie module M over a Lie algebra L, and a Lie subalgebra H ≤ L, N.restr H is the same submodule but viewed as a Lie submodule over H.

      Equations
      • N.restr H = { carrier := N, add_mem' := , zero_mem' := , smul_mem' := , lie_mem := }
      Instances For
        @[simp]
        theorem LieSubmodule.mem_restr {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [LieAlgebra R L] {N : LieSubmodule R L M} {H : LieSubalgebra R L} {m : M} :
        m N.restr H m N
        @[simp]
        theorem LieSubmodule.restr_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [LieAlgebra R L] (N : LieSubmodule R L M) (H : LieSubalgebra R L) :
        (N.restr H) = N
        instance LieSubmodule.instLieModule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) [LieAlgebra R L] [LieModule R L M] :
        LieModule R L N
        @[implicit_reducible]
        Equations
        theorem Submodule.exists_lieSubmodule_coe_eq_iff {R : Type u} (L : Type v) {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (p : Submodule R M) :
        (∃ (N : LieSubmodule R L M), N = p) ∀ (x : L), mp, x, m p
        def LieSubalgebra.toLieSubmodule {R : Type u} {L : Type v} [CommRing R] [LieRing L] [LieAlgebra R L] (K : LieSubalgebra R L) :
        LieSubmodule R (↥K) L

        Given a Lie subalgebra K ⊆ L, if we view L as a K-module by restriction, it contains a distinguished Lie submodule for the action of K, namely K itself.

        Equations
        Instances For
          @[simp]
          theorem LieSubalgebra.mem_toLieSubmodule {R : Type u} {L : Type v} [CommRing R] [LieRing L] [LieAlgebra R L] {K : LieSubalgebra R L} (x : L) :
          @[simp]
          theorem LieSubmodule.toSubmodule_le_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N N' : LieSubmodule R L M) :
          N N' N N'
          @[implicit_reducible]
          instance LieSubmodule.instBot {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
          Equations
          @[implicit_reducible]
          instance LieSubmodule.instUniqueBot {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
          Equations
          @[simp]
          theorem LieSubmodule.bot_coe {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
          = {0}
          @[simp]
          theorem LieSubmodule.bot_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
          =
          @[simp]
          theorem LieSubmodule.toSubmodule_eq_bot {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
          N = N =
          @[simp]
          theorem LieSubmodule.mk_eq_bot_iff {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N : Submodule R M} {h : ∀ {x : L} {m : M}, m N.carrierx, m N.carrier} :
          { toSubmodule := N, lie_mem := h } = N =
          @[simp]
          theorem LieSubmodule.mem_bot {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (x : M) :
          x x = 0
          @[implicit_reducible]
          instance LieSubmodule.instTop {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
          Equations
          @[simp]
          theorem LieSubmodule.top_coe {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
          @[simp]
          theorem LieSubmodule.top_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
          =
          @[simp]
          theorem LieSubmodule.toSubmodule_eq_top {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
          N = N =
          @[simp]
          theorem LieSubmodule.mk_eq_top_iff {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N : Submodule R M} {h : ∀ {x : L} {m : M}, m N.carrierx, m N.carrier} :
          { toSubmodule := N, lie_mem := h } = N =
          @[simp]
          theorem LieSubmodule.mem_top {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (x : M) :
          @[implicit_reducible]
          instance LieSubmodule.instMin {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
          Equations
          @[implicit_reducible]
          instance LieSubmodule.instInfSet {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
          Equations
          • One or more equations did not get rendered due to their size.
          @[simp]
          theorem LieSubmodule.coe_inf {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N N' : LieSubmodule R L M) :
          (NN') = N N'
          @[deprecated LieSubmodule.coe_inf (since := "2025-08-31")]
          theorem LieSubmodule.inf_coe {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N N' : LieSubmodule R L M) :
          (NN') = N N'

          Alias of LieSubmodule.coe_inf.

          @[simp]
          theorem LieSubmodule.inf_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N N' : LieSubmodule R L M) :
          (NN') = NN'
          @[simp]
          theorem LieSubmodule.sInf_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (S : Set (LieSubmodule R L M)) :
          (sInf S) = sInf {x : Submodule R M | sS, s = x}
          theorem LieSubmodule.sInf_toSubmodule_eq_iInf {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (S : Set (LieSubmodule R L M)) :
          (sInf S) = NS, N
          @[simp]
          theorem LieSubmodule.iInf_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {ι : Sort u_1} (p : ιLieSubmodule R L M) :
          (⨅ (i : ι), p i) = ⨅ (i : ι), (p i)
          @[simp]
          theorem LieSubmodule.coe_sInf {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (S : Set (LieSubmodule R L M)) :
          (sInf S) = sS, s
          @[deprecated LieSubmodule.coe_sInf (since := "2025-08-31")]
          theorem LieSubmodule.sInf_coe {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (S : Set (LieSubmodule R L M)) :
          (sInf S) = sS, s

          Alias of LieSubmodule.coe_sInf.

          @[simp]
          theorem LieSubmodule.coe_iInf {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {ι : Sort u_1} (p : ιLieSubmodule R L M) :
          (⨅ (i : ι), p i) = ⋂ (i : ι), (p i)
          @[deprecated LieSubmodule.coe_iInf (since := "2025-08-31")]
          theorem LieSubmodule.iInf_coe {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {ι : Sort u_1} (p : ιLieSubmodule R L M) :
          (⨅ (i : ι), p i) = ⋂ (i : ι), (p i)

          Alias of LieSubmodule.coe_iInf.

          @[simp]
          theorem LieSubmodule.mem_iInf {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {ι : Sort u_1} (p : ιLieSubmodule R L M) {x : M} :
          x ⨅ (i : ι), p i ∀ (i : ι), x p i
          @[implicit_reducible]
          instance LieSubmodule.instMax {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
          Equations
          @[implicit_reducible]
          instance LieSubmodule.instSupSet {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
          Equations
          • One or more equations did not get rendered due to their size.
          @[simp]
          theorem LieSubmodule.sup_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N N' : LieSubmodule R L M) :
          (NN') = NN'
          @[simp]
          theorem LieSubmodule.sSup_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (S : Set (LieSubmodule R L M)) :
          (sSup S) = sSup {x : Submodule R M | sS, s = x}
          theorem LieSubmodule.sSup_toSubmodule_eq_iSup {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (S : Set (LieSubmodule R L M)) :
          (sSup S) = NS, N
          @[simp]
          theorem LieSubmodule.iSup_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {ι : Sort u_1} (p : ιLieSubmodule R L M) :
          (⨆ (i : ι), p i) = ⨆ (i : ι), (p i)
          @[implicit_reducible]

          The Lie submodules of a Lie module form a complete lattice.

          Equations
          theorem LieSubmodule.mem_iSup_of_mem {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {ι : Sort u_1} {b : M} {N : ιLieSubmodule R L M} (i : ι) (h : b N i) :
          b ⨆ (i : ι), N i
          theorem LieSubmodule.iSup_induction {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {ι : Sort u_1} (N : ιLieSubmodule R L M) {motive : MProp} {x : M} (hx : x ⨆ (i : ι), N i) (mem : ∀ (i : ι), yN i, motive y) (zero : motive 0) (add : ∀ (y z : M), motive ymotive zmotive (y + z)) :
          motive x
          theorem LieSubmodule.iSup_induction' {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {ι : Sort u_1} (N : ιLieSubmodule R L M) {motive : (x : M) → x ⨆ (i : ι), N iProp} (mem : ∀ (i : ι) (x : M) (hx : x N i), motive x ) (zero : motive 0 ) (add : ∀ (x y : M) (hx : x ⨆ (i : ι), N i) (hy : y ⨆ (i : ι), N i), motive x hxmotive y hymotive (x + y) ) {x : M} (hx : x ⨆ (i : ι), N i) :
          motive x hx
          @[simp]
          theorem LieSubmodule.disjoint_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N N' : LieSubmodule R L M} :
          Disjoint N N' Disjoint N N'
          @[simp]
          theorem LieSubmodule.codisjoint_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N N' : LieSubmodule R L M} :
          Codisjoint N N' Codisjoint N N'
          @[simp]
          theorem LieSubmodule.isCompl_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N N' : LieSubmodule R L M} :
          IsCompl N N' IsCompl N N'
          @[simp]
          theorem LieSubmodule.iSupIndep_toSubmodule {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {ι : Type u_1} {N : ιLieSubmodule R L M} :
          (iSupIndep fun (i : ι) => (N i)) iSupIndep N
          @[simp]
          theorem LieSubmodule.iSup_toSubmodule_eq_top {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {ι : Sort u_1} {N : ιLieSubmodule R L M} :
          ⨆ (i : ι), (N i) = ⨆ (i : ι), N i =
          @[implicit_reducible]
          instance LieSubmodule.instAdd {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
          Equations
          @[implicit_reducible]
          instance LieSubmodule.instAddCommMonoid {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
          Equations
          • One or more equations did not get rendered due to their size.
          @[simp]
          theorem LieSubmodule.add_eq_sup {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N N' : LieSubmodule R L M) :
          N + N' = NN'
          @[simp]
          theorem LieSubmodule.mem_inf {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N N' : LieSubmodule R L M) (x : M) :
          x NN' x N x N'
          theorem LieSubmodule.mem_sup {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N N' : LieSubmodule R L M) (x : M) :
          x NN' yN, zN', y + z = x
          theorem LieSubmodule.eq_bot_iff {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
          N = mN, m = 0

          The natural functor that forgets the action of L as an order embedding.

          Equations
          Instances For
            @[simp]
            theorem LieSubmodule.toSubmodule_orderEmbedding_apply (R : Type u) (L : Type v) (M : Type w) [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (self : LieSubmodule R L M) :
            (toSubmodule_orderEmbedding R L M) self = self
            @[simp]
            theorem LieSubmodule.nontrivial_iff_ne_bot (R : Type u) (L : Type v) (M : Type w) [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N : LieSubmodule R L M} :
            def LieSubmodule.incl {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
            N →ₗ⁅R,L M

            The inclusion of a Lie submodule into its ambient space is a morphism of Lie modules.

            Equations
            Instances For
              @[simp]
              theorem LieSubmodule.incl_coe {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
              N.incl = (↑N).subtype
              @[simp]
              theorem LieSubmodule.incl_apply {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) (m : N) :
              N.incl m = m
              theorem LieSubmodule.incl_eq_val {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
              theorem LieSubmodule.injective_incl {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
              def LieSubmodule.inclusion {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N N' : LieSubmodule R L M} (h : N N') :
              N →ₗ⁅R,L N'

              Given two nested Lie submodules N ⊆ N', the inclusion N ↪ N' is a morphism of Lie modules.

              Equations
              Instances For
                @[simp]
                theorem LieSubmodule.coe_inclusion {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N N' : LieSubmodule R L M} (h : N N') (m : N) :
                ((inclusion h) m) = m
                theorem LieSubmodule.inclusion_apply {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N N' : LieSubmodule R L M} (h : N N') (m : N) :
                (inclusion h) m = m,
                theorem LieSubmodule.inclusion_injective {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N N' : LieSubmodule R L M} (h : N N') :
                def LieSubmodule.lieSpan (R : Type u) (L : Type v) {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (s : Set M) :

                The lieSpan of a set s ⊆ M is the smallest Lie submodule of M that contains s.

                Equations
                Instances For
                  theorem LieSubmodule.mem_lieSpan {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {s : Set M} {x : M} :
                  x lieSpan R L s ∀ (N : LieSubmodule R L M), s Nx N
                  theorem LieSubmodule.subset_lieSpan {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {s : Set M} :
                  s (lieSpan R L s)
                  theorem LieSubmodule.submodule_span_le_lieSpan {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {s : Set M} :
                  Submodule.span R s (lieSpan R L s)
                  @[simp]
                  theorem LieSubmodule.lieSpan_le {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {s : Set M} {N : LieSubmodule R L M} :
                  lieSpan R L s N s N
                  theorem LieSubmodule.lieSpan_mono {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {s t : Set M} (h : s t) :
                  lieSpan R L s lieSpan R L t
                  theorem LieSubmodule.lieSpan_eq {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
                  lieSpan R L N = N
                  theorem LieSubmodule.coe_lieSpan_submodule_eq_iff {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {p : Submodule R M} :
                  (lieSpan R L p) = p ∃ (N : LieSubmodule R L M), N = p

                  lieSpan forms a Galois insertion with the coercion from LieSubmodule to Set.

                  Equations
                  Instances For
                    @[simp]
                    theorem LieSubmodule.span_empty (R : Type u) (L : Type v) (M : Type w) [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
                    @[simp]
                    theorem LieSubmodule.span_univ (R : Type u) (L : Type v) (M : Type w) [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
                    theorem LieSubmodule.lieSpan_eq_bot_iff (R : Type u) (L : Type v) (M : Type w) [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {s : Set M} :
                    lieSpan R L s = ms, m = 0
                    theorem LieSubmodule.span_union (R : Type u) (L : Type v) {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (s t : Set M) :
                    lieSpan R L (s t) = lieSpan R L slieSpan R L t
                    theorem LieSubmodule.span_iUnion (R : Type u) (L : Type v) {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {ι : Sort u_1} (s : ιSet M) :
                    lieSpan R L (⋃ (i : ι), s i) = ⨆ (i : ι), lieSpan R L (s i)
                    theorem LieSubmodule.lieSpan_induction (R : Type u) (L : Type v) {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {s : Set M} {p : (x : M) → x lieSpan R L sProp} (mem : ∀ (x : M) (h : x s), p x ) (zero : p 0 ) (add : ∀ (x y : M) (hx : x lieSpan R L s) (hy : y lieSpan R L s), p x hxp y hyp (x + y) ) (smul : ∀ (a : R) (x : M) (hx : x lieSpan R L s), p x hxp (a x) ) {x : M} (lie : ∀ (x : L) (y : M) (hy : y lieSpan R L s), p y hyp x, y ) (hx : x lieSpan R L s) :
                    p x hx

                    An induction principle for span membership. If p holds for 0 and all elements of s, and is preserved under addition, scalar multiplication and the Lie bracket, then p holds for all elements of the Lie submodule spanned by s.

                    @[simp]
                    theorem LieSubmodule.sSup_image_lieSpan_singleton (R : Type u) (L : Type v) {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
                    sSup ((fun (x : M) => lieSpan R L {x}) '' N) = N
                    def LieSubmodule.map {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] (f : M →ₗ⁅R,L M') (N : LieSubmodule R L M) :

                    A morphism of Lie modules f : M → M' pushes forward Lie submodules of M to Lie submodules of M'.

                    Equations
                    Instances For
                      @[simp]
                      theorem LieSubmodule.coe_map {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] (f : M →ₗ⁅R,L M') (N : LieSubmodule R L M) :
                      (map f N) = f '' N
                      @[simp]
                      theorem LieSubmodule.toSubmodule_map {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] (f : M →ₗ⁅R,L M') (N : LieSubmodule R L M) :
                      (map f N) = Submodule.map f N
                      def LieSubmodule.comap {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] (f : M →ₗ⁅R,L M') (N' : LieSubmodule R L M') :

                      A morphism of Lie modules f : M → M' pulls back Lie submodules of M' to Lie submodules of M.

                      Equations
                      Instances For
                        @[simp]
                        theorem LieSubmodule.toSubmodule_comap {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] (f : M →ₗ⁅R,L M') (N' : LieSubmodule R L M') :
                        (comap f N') = Submodule.comap f N'
                        theorem LieSubmodule.map_le_iff_le_comap {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} {N : LieSubmodule R L M} {N' : LieSubmodule R L M'} :
                        map f N N' N comap f N'
                        theorem LieSubmodule.gc_map_comap {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] (f : M →ₗ⁅R,L M') :
                        theorem LieSubmodule.map_inf_le {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} {N N₂ : LieSubmodule R L M} :
                        map f (NN₂) map f Nmap f N₂
                        theorem LieSubmodule.map_inf {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} {N N₂ : LieSubmodule R L M} (hf : Function.Injective f) :
                        map f (NN₂) = map f Nmap f N₂
                        @[simp]
                        theorem LieSubmodule.map_sup {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} {N N₂ : LieSubmodule R L M} :
                        map f (NN₂) = map f Nmap f N₂
                        @[simp]
                        theorem LieSubmodule.comap_inf {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} {N' N₂' : LieSubmodule R L M'} :
                        comap f (N'N₂') = comap f N'comap f N₂'
                        @[simp]
                        theorem LieSubmodule.map_iSup {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} {ι : Sort u_1} (N : ιLieSubmodule R L M) :
                        map f (⨆ (i : ι), N i) = ⨆ (i : ι), map f (N i)
                        @[simp]
                        theorem LieSubmodule.mem_map {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} {N : LieSubmodule R L M} (m' : M') :
                        m' map f N mN, f m = m'
                        theorem LieSubmodule.mem_map_of_mem {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} {N : LieSubmodule R L M} {m : M} (h : m N) :
                        f m map f N
                        @[simp]
                        theorem LieSubmodule.mem_comap {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} {N' : LieSubmodule R L M'} {m : M} :
                        m comap f N' f m N'
                        theorem LieSubmodule.comap_incl_eq_top {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N N₂ : LieSubmodule R L M} :
                        comap N.incl N₂ = N N₂
                        theorem LieSubmodule.comap_incl_eq_bot {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N N₂ : LieSubmodule R L M} :
                        comap N.incl N₂ = NN₂ =
                        theorem LieSubmodule.map_mono {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} {N N₂ : LieSubmodule R L M} (h : N N₂) :
                        map f N map f N₂
                        theorem LieSubmodule.map_comp {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} {N : LieSubmodule R L M} {M'' : Type u_1} [AddCommGroup M''] [Module R M''] [LieRingModule L M''] {g : M' →ₗ⁅R,L M''} :
                        map (g.comp f) N = map g (map f N)
                        @[simp]
                        theorem LieSubmodule.map_id {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N : LieSubmodule R L M} :
                        @[simp]
                        theorem LieSubmodule.map_bot {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} :
                        theorem LieSubmodule.map_le_map_iff {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} {N N₂ : LieSubmodule R L M} (hf : Function.Injective f) :
                        map f N map f N₂ N N₂
                        theorem LieSubmodule.map_injective_of_injective {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} (hf : Function.Injective f) :
                        def LieSubmodule.mapOrderEmbedding {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} (hf : Function.Injective f) :

                        An injective morphism of Lie modules embeds the lattice of submodules of the domain into that of the target.

                        Equations
                        Instances For
                          @[simp]
                          theorem LieSubmodule.mapOrderEmbedding_apply {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} (hf : Function.Injective f) (N : LieSubmodule R L M) :
                          noncomputable def LieSubmodule.equivMapOfInjective {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] {f : M →ₗ⁅R,L M'} (N : LieSubmodule R L M) (hf : Function.Injective f) :
                          N ≃ₗ⁅R,L (map f N)

                          For an injective morphism of Lie modules, any Lie submodule is equivalent to its image.

                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            def LieSubmodule.orderIsoMapComap {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] (e : M ≃ₗ⁅R,L M') :

                            An equivalence of Lie modules yields an order-preserving equivalence of their lattices of Lie Submodules.

                            Equations
                            Instances For
                              @[simp]
                              theorem LieSubmodule.orderIsoMapComap_apply {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] (e : M ≃ₗ⁅R,L M') (N : LieSubmodule R L M) :
                              @[simp]
                              theorem LieSubmodule.orderIsoMapComap_symm_apply {R : Type u} {L : Type v} {M : Type w} {M' : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup M'] [Module R M'] [LieRingModule L M'] (e : M ≃ₗ⁅R,L M') (N' : LieSubmodule R L M') :
                              def LieModuleHom.ker {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] (f : M →ₗ⁅R,L N) :

                              The kernel of a morphism of Lie algebras, as an ideal in the domain.

                              Equations
                              Instances For
                                @[simp]
                                theorem LieModuleHom.ker_toSubmodule {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] (f : M →ₗ⁅R,L N) :
                                f.ker = (↑f).ker
                                theorem LieModuleHom.ker_eq_bot {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] (f : M →ₗ⁅R,L N) :
                                @[simp]
                                theorem LieModuleHom.mem_ker {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] {f : M →ₗ⁅R,L N} {m : M} :
                                m f.ker f m = 0
                                @[simp]
                                theorem LieModuleHom.ker_id {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
                                @[simp]
                                theorem LieModuleHom.comp_ker_incl {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] {f : M →ₗ⁅R,L N} :
                                f.comp f.ker.incl = 0
                                theorem LieModuleHom.le_ker_iff_map {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] {f : M →ₗ⁅R,L N} (M' : LieSubmodule R L M) :
                                def LieModuleHom.range {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] (f : M →ₗ⁅R,L N) :

                                The range of a morphism of Lie modules f : M → N is a Lie submodule of N. See Note [range copy pattern].

                                Equations
                                Instances For
                                  @[simp]
                                  theorem LieModuleHom.coe_range {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] (f : M →ₗ⁅R,L N) :
                                  f.range = Set.range f
                                  @[simp]
                                  theorem LieModuleHom.toSubmodule_range {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] (f : M →ₗ⁅R,L N) :
                                  f.range = (↑f).range
                                  @[simp]
                                  theorem LieModuleHom.mem_range {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] (f : M →ₗ⁅R,L N) (n : N) :
                                  n f.range ∃ (m : M), f m = n
                                  @[simp]
                                  theorem LieModuleHom.map_top {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] (f : M →ₗ⁅R,L N) :
                                  theorem LieModuleHom.range_eq_top {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] (f : M →ₗ⁅R,L N) :
                                  def LieModuleHom.codRestrict {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] (P : LieSubmodule R L N) (f : M →ₗ⁅R,L N) (h : ∀ (m : M), f m P) :
                                  M →ₗ⁅R,L P

                                  A morphism of Lie modules f : M → N whose values lie in a Lie submodule P ⊆ N can be restricted to a morphism of Lie modules M → P.

                                  Equations
                                  Instances For
                                    @[simp]
                                    theorem LieModuleHom.codRestrict_apply {R : Type u} {L : Type v} {M : Type w} {N : Type w₁} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] [AddCommGroup N] [Module R N] [LieRingModule L N] (P : LieSubmodule R L N) (f : M →ₗ⁅R,L N) (h : ∀ (m : M), f m P) (m : M) :
                                    ((codRestrict P f h) m) = f m
                                    @[simp]
                                    theorem LieSubmodule.ker_incl {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
                                    @[simp]
                                    theorem LieSubmodule.range_incl {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
                                    @[simp]
                                    theorem LieSubmodule.comap_incl_self {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
                                    theorem LieSubmodule.map_incl_top {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) :
                                    theorem LieSubmodule.map_restrictLie_incl_top {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] (N : LieSubmodule R L M) [LieAlgebra R L] (H : LieSubalgebra R L) :
                                    @[simp]
                                    theorem LieSubmodule.map_le_range {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N : LieSubmodule R L M} {M' : Type u_1} [AddCommGroup M'] [Module R M'] [LieRingModule L M'] (f : M →ₗ⁅R,L M') :
                                    map f N f.range
                                    @[simp]
                                    theorem LieSubmodule.map_incl_lt_iff_lt_top {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N : LieSubmodule R L M} {N' : LieSubmodule R L N} :
                                    map N.incl N' < N N' <
                                    @[simp]
                                    theorem LieSubmodule.map_incl_le {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] {N : LieSubmodule R L M} {N' : LieSubmodule R L N} :
                                    map N.incl N' N
                                    def LieModuleEquiv.ofTop (R : Type u) (L : Type v) [CommRing R] [LieRing L] (M : Type u_1) [AddCommGroup M] [Module R M] [LieRingModule L M] :

                                    The natural equivalence between the 'top' Lie submodule and the enclosing Lie module.

                                    Equations
                                    Instances For
                                      theorem LieModuleEquiv.ofTop_apply {R : Type u} {L : Type v} [CommRing R] [LieRing L] (M : Type u_1) [AddCommGroup M] [Module R M] [LieRingModule L M] (x : ) :
                                      (ofTop R L M) x = x
                                      @[simp]
                                      theorem LieModuleEquiv.range_coe {R : Type u} {L : Type v} [CommRing R] [LieRing L] (M : Type u_1) [AddCommGroup M] [Module R M] [LieRingModule L M] {M' : Type u_2} [AddCommGroup M'] [Module R M'] [LieRingModule L M'] (e : M ≃ₗ⁅R,L M') :
                                      def LieSubalgebra.topEquiv {R : Type u} {L : Type v} [CommRing R] [LieRing L] [LieAlgebra R L] :

                                      The natural equivalence between the 'top' Lie subalgebra and the enclosing Lie algebra.

                                      This is the Lie subalgebra version of Submodule.topEquiv.

                                      Equations
                                      Instances For
                                        @[simp]
                                        theorem LieSubalgebra.topEquiv_apply {R : Type u} {L : Type v} [CommRing R] [LieRing L] [LieAlgebra R L] (x : ) :
                                        topEquiv x = x