Documentation

TauCeti.Geometry.Manifold.VectorField.LieBracket

Model-space and directional-derivative formulas for the manifold Lie bracket #

This file transports Mathlib's normed-space identity fderivWithin_apply_lieBracket through a manifold chart. It identifies the differential of a vector-valued function on the manifold Lie bracket with the commutator of its directional derivatives. It also records that constant vector fields on a model space have zero manifold Lie bracket.

The chart argument follows the pullback idiom used for the manifold bracket in Mathlib/Geometry/Manifold/VectorField/LieBracket.lean. The resulting lemma is a general manifold prerequisite for Deliverable A, Layer 1 of the Lie-groups roadmap.

Main results #

References #

theorem VectorField.mlieBracket_eq_lieBracket {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {F : Type u_3} [NormedAddCommGroup F] [NormedSpace ๐•œ F] {V W : (y : F) โ†’ TangentSpace (modelWithCornersSelf ๐•œ F) y} :
mlieBracket (modelWithCornersSelf ๐•œ F) V W = lieBracket ๐•œ V W

On a normed space, the manifold Lie bracket of two vector fields is their Lie bracket as maps of the space.

@[simp]
theorem VectorField.mlieBracket_const_left_model_space {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {F : Type u_3} [NormedAddCommGroup F] [NormedSpace ๐•œ F] (a : F) (W : (y : F) โ†’ TangentSpace (modelWithCornersSelf ๐•œ F) y) (x : F) :
mlieBracket (modelWithCornersSelf ๐•œ F) (fun (x : F) => a) W x = (fderiv ๐•œ W x) a

The manifold Lie bracket of a constant vector field a with a vector field W on a normed space is the derivative of W in the direction a.

@[simp]
theorem VectorField.mlieBracket_const_model_space {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {F : Type u_3} [NormedAddCommGroup F] [NormedSpace ๐•œ F] (a b x : F) :
mlieBracket (modelWithCornersSelf ๐•œ F) (fun (x : F) => a) (fun (x : F) => b) x = 0

Constant vector fields on a normed vector space have zero manifold Lie bracket.

@[simp]
theorem VectorField.mlieBracket_const_right_model_space {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {F : Type u_3} [NormedAddCommGroup F] [NormedSpace ๐•œ F] (V : (y : F) โ†’ TangentSpace (modelWithCornersSelf ๐•œ F) y) (b x : F) :
mlieBracket (modelWithCornersSelf ๐•œ F) V (fun (x : F) => b) x = -(fderiv ๐•œ V x) b

The manifold Lie bracket of a vector field V with a constant vector field b on a normed space is minus the derivative of V in the direction b.

theorem VectorField.mlieBracket_continuousLinearMap_model_space {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {F : Type u_3} [NormedAddCommGroup F] [NormedSpace ๐•œ F] (A B : F โ†’L[๐•œ] F) (x : F) :
mlieBracket (modelWithCornersSelf ๐•œ F) (fun (y : F) => A y) (fun (y : F) => B y) x = B (A x) - A (B x)

The manifold Lie bracket of the linear vector fields y โ†ฆ A y and y โ†ฆ B y on a normed vector space is the linear vector field x โ†ฆ B (A x) - A (B x).

theorem mvfderiv_mlieBracket {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {n : WithTop โ„•โˆž} {E : Type u_2} [NormedAddCommGroup E] [NormedSpace ๐•œ E] [CompleteSpace E] {F : Type u_3} [NormedAddCommGroup F] [NormedSpace ๐•œ F] {H : Type u_4} [TopologicalSpace H] {I : ModelWithCorners ๐•œ E H} {M : Type u_5} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (minSmoothness ๐•œ 2) M] {f : M โ†’ F} {V W : (x : M) โ†’ TangentSpace I x} {x : M} (hf : ContMDiffAt I (modelWithCornersSelf ๐•œ F) n f x) (hn : minSmoothness ๐•œ 2 โ‰ค n) (hV : (MDiffAt fun (y : M) => โŸจy, V yโŸฉ) x) (hW : (MDiffAt fun (y : M) => โŸจy, W yโŸฉ) x) :
(d% f x) (VectorField.mlieBracket I V W x) = ((d% fun (y : M) => (d% f y) (W y)) x) (V x) - ((d% fun (y : M) => (d% f y) (V y)) x) (W x)

Let f have enough derivatives for symmetry of its second derivative at x, and let V and W be differentiable vector fields there. Then the differential of f on the manifold bracket is the commutator of its directional derivatives. This is the manifold counterpart of Mathlib's fderivWithin_apply_lieBracket.

theorem TauCeti.mvfderiv_div_mvfderiv_sub_eq_mlieBracket {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace ๐•œ E] [CompleteSpace E] {H : Type u_4} [TopologicalSpace H] {I : ModelWithCorners ๐•œ E H} {M : Type u_5} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (minSmoothness ๐•œ 2) M] {n : WithTop โ„•โˆž} {f : M โ†’ ๐•œ} {X Y : (x : M) โ†’ TangentSpace I x} {p : M} (hf : ContMDiffAt I (modelWithCornersSelf ๐•œ ๐•œ) n f p) (hn : minSmoothness ๐•œ 2 โ‰ค n) (hX : (MDiffAt fun (x : M) => โŸจx, X xโŸฉ) p) (hY : (MDiffAt fun (x : M) => โŸจx, Y xโŸฉ) p) (hp : f p โ‰  0) :
((d% fun (x : M) => (d% f x) (Y x) / f x) p) (X p) - ((d% fun (x : M) => (d% f x) (X x) / f x) p) (Y p) = (d% f p) (VectorField.mlieBracket I X Y p) / f p

The second derivatives of a scalar function f cancel in the commutator of the logarithmic differentials df(U) / f: the logarithmic differential is closed, so X (df(Y) / f) - Y (df(X) / f) = df([X, Y]) / f at a point p where f is C^n with minSmoothness ๐•œ 2 โ‰ค n and nonzero and the vector fields X, Y are differentiable.

theorem TauCeti.eq_mlieBracket_of_mvfderiv_extChartAt {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace ๐•œ E] [CompleteSpace E] {H : Type u_4} [TopologicalSpace H] {I : ModelWithCorners ๐•œ E H} {M : Type u_5} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (minSmoothness ๐•œ 2) M] {V W : (y : M) โ†’ TangentSpace I y} {x : M} (hV : (MDiffAt fun (y : M) => โŸจy, V yโŸฉ) x) (hW : (MDiffAt fun (y : M) => โŸจy, W yโŸฉ) x) {v : TangentSpace I x} (hv : (d% โ†‘(extChartAt I x) x) v = ((d% fun (y : M) => (d% โ†‘(extChartAt I x) y) (W y)) x) (V x) - ((d% fun (y : M) => (d% โ†‘(extChartAt I x) y) (V y)) x) (W x)) :

A tangent vector v at x is the Lie bracket of the differentiable vector fields V and W at x as soon as the differential of the extended chart at x sends v to the commutator of the directional derivatives of the chart along V and W, since that differential is injective.

theorem VectorField.lieBracketWithin_mpullbackWithin_extChartAt_symm {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace ๐•œ E] {H : Type u_4} [TopologicalSpace H] {I : ModelWithCorners ๐•œ E H} {M : Type u_5} [TopologicalSpace M] [ChartedSpace H M] (V W : (y : M) โ†’ TangentSpace I y) (s : Set M) (x : M) :
lieBracketWithin ๐•œ (mpullbackWithin (modelWithCornersSelf ๐•œ E) I (โ†‘(extChartAt I x).symm) V (Set.range โ†‘I)) (mpullbackWithin (modelWithCornersSelf ๐•œ E) I (โ†‘(extChartAt I x).symm) W (Set.range โ†‘I)) (โ†‘(extChartAt I x).symm โปยน' s โˆฉ Set.range โ†‘I) (โ†‘(extChartAt I x) x) = mlieBracketWithin I V W s x

At the centre of the preferred chart, the Lie bracket of the inverse-chart pullbacks of two vector fields is their manifold Lie bracket.

theorem VectorField.lieBracketWithin_neg_right {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace ๐•œ E] {V W : E โ†’ E} {s : Set E} {x : E} (hs : UniqueDiffWithinAt ๐•œ s x) :
lieBracketWithin ๐•œ V (-W) s x = -lieBracketWithin ๐•œ V W s x

On a normed space, negating the second vector field negates the Lie bracket at any point where the set has unique derivatives.

theorem VectorField.mlieBracket_neg_right {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace ๐•œ E] {H : Type u_4} [TopologicalSpace H] {I : ModelWithCorners ๐•œ E H} {M : Type u_5} [TopologicalSpace M] [ChartedSpace H M] {V W : (y : M) โ†’ TangentSpace I y} {x : M} :
mlieBracket I V (-W) x = -mlieBracket I V W x

Negating the second vector field negates the manifold Lie bracket.

theorem VectorField.mlieBracket_neg_left {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace ๐•œ E] {H : Type u_4} [TopologicalSpace H] {I : ModelWithCorners ๐•œ E H} {M : Type u_5} [TopologicalSpace M] [ChartedSpace H M] {V W : (y : M) โ†’ TangentSpace I y} {x : M} :
mlieBracket I (-V) W x = -mlieBracket I V W x

Negating the first vector field negates the manifold Lie bracket.

theorem VectorField.jacobi_identity_mlieBracket_apply {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace ๐•œ E] [CompleteSpace E] {H : Type u_4} [TopologicalSpace H] {I : ModelWithCorners ๐•œ E H} {M : Type u_5} [TopologicalSpace M] [ChartedSpace H M] [IsManifold I (minSmoothness ๐•œ 3) M] {U V W : (y : M) โ†’ TangentSpace I y} {x : M} (hU : ContMDiffAt I I.tangent (minSmoothness ๐•œ 2) (fun (y : M) => โŸจy, U yโŸฉ) x) (hV : ContMDiffAt I I.tangent (minSmoothness ๐•œ 2) (fun (y : M) => โŸจy, V yโŸฉ) x) (hW : ContMDiffAt I I.tangent (minSmoothness ๐•œ 2) (fun (y : M) => โŸจy, W yโŸฉ) x) :
mlieBracket I U (mlieBracket I V W) x + mlieBracket I V (mlieBracket I W U) x + mlieBracket I W (mlieBracket I U V) x = 0

The Jacobi identity for the manifold Lie bracket, in cyclic form: [U, [V, W]] + [V, [W, U]] + [W, [U, V]] = 0. This rearranges Mathlib's Leibniz form leibniz_identity_mlieBracket_apply.

theorem VectorField.contMDiff_mlieBracket {๐•œ : Type u_1} [NontriviallyNormedField ๐•œ] {E : Type u_2} [NormedAddCommGroup E] [NormedSpace ๐•œ E] [CompleteSpace E] {H : Type u_4} [TopologicalSpace H] {I : ModelWithCorners ๐•œ E H} {M : Type u_5} [TopologicalSpace M] [ChartedSpace H M] [IsRCLikeNormedField ๐•œ] [IsManifold I (โ†‘โŠค) M] {V W : (y : M) โ†’ TangentSpace I y} (hV : ContMDiff I I.tangent โ†‘โŠค fun (y : M) => โŸจy, V yโŸฉ) (hW : ContMDiff I I.tangent โ†‘โŠค fun (y : M) => โŸจy, W yโŸฉ) :
ContMDiff I I.tangent โ†‘โŠค fun (xโ‚€ : M) => โŸจxโ‚€, mlieBracket I V W xโ‚€โŸฉ

The Lie bracket of two smooth vector fields is smooth.