Left invariant derivations #
In this file we define the concept of left invariant derivation for a Lie group. The concept is analogous to the more classical concept of left invariant vector fields, and it holds that the derivation associated to a vector field is left invariant iff the field is.
Moreover we prove that LeftInvariantDerivation I G
has the structure of a Lie algebra, hence
implementing one of the possible definitions of the Lie algebra attached to a Lie group.
Note that one can also define a Lie algebra on the space of left-invariant vector fields
(see instLieAlgebraGroupLieAlgebra
). For finite-dimensional C^∞
real manifolds, the space of
derivations can be canonically identified with the tangent space, and we recover the same Lie
algebra structure (TODO: prove this). In other smoothness classes or on other
fields, this identification is not always true, though, so the derivations point of view does not
work in these settings. The left-invariant vector fields should
therefore be favored to construct a theory of Lie groups in suitable generality.
Left-invariant global derivations.
A global derivation is left-invariant if it is equal to its pullback along left multiplication by
an arbitrary element of G
.
- toFun : ContMDiffMap I (modelWithCornersSelf 𝕜 𝕜) G 𝕜 ↑⊤ → ContMDiffMap I (modelWithCornersSelf 𝕜 𝕜) G 𝕜 ↑⊤
- map_add' (x y : ContMDiffMap I (modelWithCornersSelf 𝕜 𝕜) G 𝕜 ↑⊤) : (↑↑self).toFun (x + y) = (↑↑self).toFun x + (↑↑self).toFun y
- map_smul' (m : 𝕜) (x : ContMDiffMap I (modelWithCornersSelf 𝕜 𝕜) G 𝕜 ↑⊤) : (↑↑self).toFun (m • x) = (RingHom.id 𝕜) m • (↑↑self).toFun x
- leibniz' (a b : ContMDiffMap I (modelWithCornersSelf 𝕜 𝕜) G 𝕜 ↑⊤) : ↑↑self (a * b) = a • ↑↑self b + b • ↑↑self a
- left_invariant'' (g : G) : (hfdifferential ⋯) ((Derivation.evalAt 1) ↑self) = (Derivation.evalAt g) ↑self
Instances For
Equations
- LeftInvariantDerivation.instFunLikeContMDiffMapModelWithCornersSelfSomeENatTop = { coe := fun (f : LeftInvariantDerivation I G) => ⇑↑f, coe_injective' := ⋯ }
Premature version of the lemma. Prefer using left_invariant
instead.
Equations
- LeftInvariantDerivation.instInhabited = { default := 0 }
Equations
- LeftInvariantDerivation.instAdd = { add := fun (X Y : LeftInvariantDerivation I G) => { toDerivation := ↑X + ↑Y, left_invariant'' := ⋯ } }
Equations
- LeftInvariantDerivation.instNeg = { neg := fun (X : LeftInvariantDerivation I G) => { toDerivation := -↑X, left_invariant'' := ⋯ } }
Equations
- LeftInvariantDerivation.instSub = { sub := fun (X Y : LeftInvariantDerivation I G) => { toDerivation := ↑X - ↑Y, left_invariant'' := ⋯ } }
Equations
- LeftInvariantDerivation.hasNatScalar = { smul := fun (r : ℕ) (X : LeftInvariantDerivation I G) => { toDerivation := r • ↑X, left_invariant'' := ⋯ } }
Equations
- LeftInvariantDerivation.hasIntScalar = { smul := fun (r : ℤ) (X : LeftInvariantDerivation I G) => { toDerivation := r • ↑X, left_invariant'' := ⋯ } }
Equations
Equations
- LeftInvariantDerivation.instSMul = { smul := fun (r : 𝕜) (X : LeftInvariantDerivation I G) => { toDerivation := r • ↑X, left_invariant'' := ⋯ } }
The coercion to function is a monoid homomorphism.
Equations
- LeftInvariantDerivation.coeFnAddMonoidHom I G = { toFun := DFunLike.coe, map_zero' := ⋯, map_add' := ⋯ }
Instances For
Evaluation at a point for left invariant derivation. Same thing as for generic global
derivations (Derivation.evalAt
).
Equations
- LeftInvariantDerivation.evalAt g = { toFun := fun (X : LeftInvariantDerivation I G) => (Derivation.evalAt g) ↑X, map_add' := ⋯, map_smul' := ⋯ }
Instances For
Equations
- LeftInvariantDerivation.instBracket = { bracket := fun (X Y : LeftInvariantDerivation I G) => { toDerivation := ⁅↑X, ↑Y⁆, left_invariant'' := ⋯ } }
Equations
- One or more equations did not get rendered due to their size.
Equations
- LeftInvariantDerivation.instLieAlgebra = { toModule := LeftInvariantDerivation.instModule, lie_smul := ⋯ }