File: Mathlib/Algebra/Lie/CartanSubalgebra.lean

full_name: LieSubmodule.IsUcsLimit
code: /-- Given a Lie module `M` of a Lie algebra `L`, `LieSubmodule.IsUcsLimit` is the proposition
that a Lie submodule `N ⊆ M` is the limiting value for the upper central series.

This is a characteristic property of Cartan subalgebras with the roles of `L`, `M`, `N` played by
`H`, `L`, `H`, respectively. See `LieSubalgebra.isCartanSubalgebra_iff_isUcsLimit`. -/
def LieSubmodule.IsUcsLimit {M : Type*} [AddCommGroup M] [Module R M] [LieRingModule L M]
    [LieModule R L M] (N : LieSubmodule R L M) : Prop 
goal: Prop

full_name: LieSubalgebra.IsCartanSubalgebra.self_normalizing
code: /-- A Cartan subalgebra is a nilpotent, self-normalizing subalgebra.

A _splitting_ Cartan subalgebra can be defined by mixing in `LieModule.IsTriangularizable R H L`. -/
class IsCartanSubalgebra : Prop where
  nilpotent : LieAlgebra.IsNilpotent R H
  self_normalizing : H.normalizer = H
goal: H.normalizer = H

full_name: LieSubalgebra.IsCartanSubalgebra.nilpotent
code: /-- A Cartan subalgebra is a nilpotent, self-normalizing subalgebra.

A _splitting_ Cartan subalgebra can be defined by mixing in `LieModule.IsTriangularizable R H L`. -/
class IsCartanSubalgebra : Prop where
  nilpotent : LieAlgebra.IsNilpotent R H
  self_normalizing : H.normalizer = H
goal: LieAlgebra.IsNilpotent R ↥H

full_name: LieSubalgebra.IsCartanSubalgebra
code: /-- A Cartan subalgebra is a nilpotent, self-normalizing subalgebra.

A _splitting_ Cartan subalgebra can be defined by mixing in `LieModule.IsTriangularizable R H L`. -/
class IsCartanSubalgebra : Prop where
  nilpotent : LieAlgebra.IsNilpotent R H
  self_normalizing : H.normalizer = H
goal: Prop

full_name: LieSubalgebra.instIsNilpotentSubtypeMemOfIsCartanSubalgebra
code: instance [H.IsCartanSubalgebra] : LieAlgebra.IsNilpotent R H 
goal: LieAlgebra.IsNilpotent R ↥H

full_name: LieSubalgebra.normalizer_eq_self_of_isCartanSubalgebra
code: @[simp]
theorem normalizer_eq_self_of_isCartanSubalgebra (H : LieSubalgebra R L) [H.IsCartanSubalgebra] :
    H.toLieSubmodule.normalizer = H.toLieSubmodule 
goal: H.toLieSubmodule.normalizer = H.toLieSubmodule

full_name: LieSubalgebra.ucs_eq_self_of_isCartanSubalgebra
code: @[simp]
theorem ucs_eq_self_of_isCartanSubalgebra (H : LieSubalgebra R L) [H.IsCartanSubalgebra] (k : ℕ) :
    H.toLieSubmodule.ucs k = H.toLieSubmodule 
goal: LieSubmodule.ucs k H.toLieSubmodule = H.toLieSubmodule

full_name: LieSubalgebra.isCartanSubalgebra_iff_isUcsLimit
code: theorem isCartanSubalgebra_iff_isUcsLimit : H.IsCartanSubalgebra ↔ H.toLieSubmodule.IsUcsLimit 
goal: H.IsCartanSubalgebra ↔ H.toLieSubmodule.IsUcsLimit

full_name: LieSubalgebra.ne_bot_of_isCartanSubalgebra
code: lemma ne_bot_of_isCartanSubalgebra [Nontrivial L] (H : LieSubalgebra R L) [H.IsCartanSubalgebra] :
    H ≠ ⊥ 
goal: H ≠ ⊥

full_name: LieSubalgebra.instNontrivialSubtypeMemOfIsCartanSubalgebra
code: instance (priority := 500) [Nontrivial L] (H : LieSubalgebra R L) [H.IsCartanSubalgebra] :
    Nontrivial H 
goal: Nontrivial ↥H

full_name: LieIdeal.normalizer_eq_top
code: @[simp]
theorem LieIdeal.normalizer_eq_top {R : Type u} {L : Type v} [CommRing R] [LieRing L]
    [LieAlgebra R L] (I : LieIdeal R L) : (I : LieSubalgebra R L).normalizer = ⊤ 
goal: (lieIdealSubalgebra R L I).normalizer = ⊤

full_name: LieAlgebra.top_isCartanSubalgebra_of_nilpotent
code: /-- A nilpotent Lie algebra is its own Cartan subalgebra. -/
instance LieAlgebra.top_isCartanSubalgebra_of_nilpotent [LieAlgebra.IsNilpotent R L] :
    LieSubalgebra.IsCartanSubalgebra (⊤ : LieSubalgebra R L) 
goal: ⊤.IsCartanSubalgebra