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
    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] :
      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
        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
          @[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
            @[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
                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
                  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
                    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
                    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'
                          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
                            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
                              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) :
                                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
                                  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
                                    @[simp]
                                    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'
                                    @[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.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
                                    @[simp]
                                    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)
                                    @[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
                                    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
                                      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
                                        @[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)

                                        The set of 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'
                                          @[deprecated LieSubmodule.disjoint_toSubmodule (since := "2025-04-03")]
                                          theorem LieSubmodule.disjoint_iff_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'
                                          @[deprecated LieSubmodule.codisjoint_toSubmodule (since := "2025-04-03")]
                                          theorem LieSubmodule.codisjoint_iff_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'
                                          @[deprecated LieSubmodule.isCompl_toSubmodule (since := "2025-04-03")]
                                          theorem LieSubmodule.isCompl_iff_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
                                          @[deprecated LieSubmodule.iSupIndep_toSubmodule (since := "2025-04-03")]
                                          theorem LieSubmodule.iSupIndep_iff_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 N iSupIndep fun (i : ι) => (N i)
                                          @[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 =
                                          @[deprecated LieSubmodule.iSup_toSubmodule_eq_top (since := "2025-04-03")]
                                          theorem LieSubmodule.iSup_eq_top_iff_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} {N : ιLieSubmodule R L M} :
                                          ⨆ (i : ι), N i = ⨆ (i : ι), (N i) =
                                          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
                                            instance LieSubmodule.instZero_1 {R : Type u} {L : Type v} {M : Type w} [CommRing R] [LieRing L] [AddCommGroup M] [Module R M] [LieRingModule L M] :
                                            Equations
                                              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
                                                @[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
                                                                                  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 = LinearMap.ker f
                                                                                            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) :
                                                                                                @[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) :
                                                                                                    @[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