Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(Algebra/Lie): define adjoint action and its ideal image (#12106)
This defines the *adjoint action* of a Lie algebra `L` on itself, when seen as an homomorphism of Lie algebras from `L` to the Lie algebra of its derivations. The adjoint action was also defined in the `Mathlib.Algebra.Lie.OfAssociative.lean` file, under the name `LieAlgebra.ad`, as the homomorphism with values in the endormophisms of `L`. We make the link between both. This design choice was discussed in [this thread](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Derivations.20on.20Lie.20algebras). We also establish elementary properties, such as the fact that the image of the adjoint action is an ideal of the derivations. This is the penultimate step towards proving that all derivations of a finite-dimensional semisimple Lie algebra are inner, a goal described in [this thread](https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Derivations.20on.20Lie.20algebras).
- Loading branch information
1 parent
b8a0f58
commit 9125a09
Showing
5 changed files
with
109 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
/- | ||
Copyright © 2024 Frédéric Marbach. All rights reserved. | ||
Released under Apache 2.0 license as described in the file LICENSE. | ||
Authors: Frédéric Marbach | ||
-/ | ||
import Mathlib.Algebra.Lie.Abelian | ||
import Mathlib.Algebra.Lie.Derivation.Basic | ||
import Mathlib.Algebra.Lie.OfAssociative | ||
|
||
/-! | ||
# Adjoint action of a Lie algebra on itself | ||
This file defines the *adjoint action* of a Lie algebra on itself, and establishes basic properties. | ||
## Main definitions | ||
- `LieDerivation.ad`: The adjoint action of a Lie algebra `L` on itself, seen as a morphism of Lie | ||
algebras from `L` to the Lie algebra of its derivations. The adjoint action is also defined in the | ||
`Mathlib.Algebra.Lie.OfAssociative.lean` file, under the name `LieAlgebra.ad`, as the morphism with | ||
values in the endormophisms of `L`. | ||
## Main statements | ||
- `LieDerivation.coe_ad_apply_eq_ad_apply`: when seen as endomorphisms, both definitions coincide, | ||
- `LieDerivation.ad_ker_eq_center`: the kernel of the adjoint action is the center of `L`, | ||
- `LieDerivation.lie_der_ad_eq_ad_der`: the commutator of a derivation `D` and `ad x` is `ad (D x)`, | ||
- `LieDerivation.ad_isIdealMorphism`: the range of the adjoint action is an ideal of the | ||
derivations. | ||
-/ | ||
|
||
namespace LieDerivation | ||
|
||
section AdjointAction | ||
|
||
variable (R L : Type*) [CommRing R] [LieRing L] [LieAlgebra R L] | ||
|
||
/-- The adjoint action of a Lie algebra `L` on itself, seen as a morphism of Lie algebras from | ||
`L` to its derivations. | ||
Note the minus sign: this is chosen to so that `ad ⁅x, y⁆ = ⁅ad x, ad y⁆`. -/ | ||
@[simps!] | ||
def ad : L →ₗ⁅R⁆ LieDerivation R L L := | ||
{ __ := - inner R L L | ||
map_lie' := by | ||
intro x y | ||
ext z | ||
simp only [AddHom.toFun_eq_coe, LinearMap.coe_toAddHom, LinearMap.neg_apply, coe_neg, | ||
Pi.neg_apply, inner_apply_apply, commutator_apply] | ||
rw [leibniz_lie, neg_lie, neg_lie, ← lie_skew x] | ||
abel } | ||
|
||
variable {R L} | ||
|
||
/-- The definitions `LieDerivation.ad` and `LieAlgebra.ad` agree. -/ | ||
@[simp] lemma coe_ad_apply_eq_ad_apply (x : L) : ad R L x = LieAlgebra.ad R L x := by ext; simp | ||
|
||
variable (R L) in | ||
/-- The kernel of the adjoint action on a Lie algebra is equal to its center. -/ | ||
lemma ad_ker_eq_center : (ad R L).ker = LieAlgebra.center R L := by | ||
ext x | ||
rw [← LieAlgebra.self_module_ker_eq_center, LieHom.mem_ker, LieModule.mem_ker] | ||
simp [DFunLike.ext_iff] | ||
|
||
/-- The commutator of a derivation `D` and a derivation of the form `ad x` is `ad (D x)`. -/ | ||
lemma lie_der_ad_eq_ad_der (D : LieDerivation R L L) (x : L) : ⁅D, ad R L x⁆ = ad R L (D x) := by | ||
ext a | ||
rw [commutator_apply, ad_apply_apply, ad_apply_apply, ad_apply_apply, apply_lie_eq_add, | ||
add_sub_cancel_left] | ||
|
||
variable (R L) in | ||
/-- The range of the adjoint action homomorphism from a Lie algebra `L` to the Lie algebra of its | ||
derivations is an ideal of the latter. -/ | ||
lemma ad_isIdealMorphism : (ad R L).IsIdealMorphism := by | ||
simp_rw [LieHom.isIdealMorphism_iff, lie_der_ad_eq_ad_der] | ||
tauto | ||
|
||
/-- A derivation `D` belongs to the ideal range of the adjoint action iff it is of the form `ad x` | ||
for some `x` in the Lie algebra `L`. -/ | ||
lemma mem_ad_idealRange_iff {D : LieDerivation R L L} : | ||
D ∈ (ad R L).idealRange ↔ ∃ x : L, ad R L x = D := | ||
(ad R L).mem_idealRange_iff (ad_isIdealMorphism R L) | ||
|
||
end AdjointAction | ||
|
||
end LieDerivation |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters