Documentation

TauCeti.Analysis.Calculus.DifferentialForm.LieDeriv

The Lie derivative of differential forms on normed spaces #

The Lie derivative of a differential form ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F along a vector field V : E โ†’ E is

L_V ฯ‰ (x) (vโ‚€, โ€ฆ, vโ‚–โ‚‹โ‚) = Dฯ‰(x)(V x)(vโ‚€, โ€ฆ, vโ‚–โ‚‹โ‚) + โˆ‘ i, ฯ‰(x)(vโ‚€, โ€ฆ, DV(x) vแตข, โ€ฆ, vโ‚–โ‚‹โ‚).

The second term is the action of DV(x) on ฯ‰(x) as a derivation, which is Mathlib's derivative of g โ†ฆ (ฯ‰ x).compContinuousLinearMap g at the identity, ContinuousAlternatingMap.fderivCompContinuousLinearMap. The definition needs no flow and is total, with junk values where ฯ‰ or V is not differentiable; the within-set version takes derivatives within an arbitrary set, so it applies to chart ranges with boundary or corners.

Two characterizations follow.

Main declarations #

References #

noncomputable def TauCeti.lieDerivFormWithin {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} (V : E โ†’ E) (ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F) (s : Set E) (x : E) :

The Lie derivative within s at x of a differential form ฯ‰ along a vector field V: the derivative of ฯ‰ in the direction V x, plus the action of the derivative of V on ฯ‰ x as a derivation.

Instances For
    noncomputable def TauCeti.lieDerivForm {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} (V : E โ†’ E) (ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F) (x : E) :

    The Lie derivative of a differential form ฯ‰ along a vector field V.

    Instances For
      theorem TauCeti.lieDerivFormWithin_def {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} (V : E โ†’ E) (ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F) (s : Set E) (x : E) :
      lieDerivFormWithin V ฯ‰ s x = (fderivWithin ๐•œ ฯ‰ s x) (V x) + ((ฯ‰ x).fderivCompContinuousLinearMap (ContinuousLinearMap.id ๐•œ E)) (fderivWithin ๐•œ V s x)
      theorem TauCeti.lieDerivForm_def {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} (V : E โ†’ E) (ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F) (x : E) :
      lieDerivForm V ฯ‰ x = (fderiv ๐•œ ฯ‰ x) (V x) + ((ฯ‰ x).fderivCompContinuousLinearMap (ContinuousLinearMap.id ๐•œ E)) (fderiv ๐•œ V x)
      @[simp]
      theorem TauCeti.lieDerivFormWithin_univ {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} (V : E โ†’ E) (ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F) :
      theorem TauCeti.lieDerivFormWithin_apply {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} {V : E โ†’ E} {s : Set E} {x : E} (ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F) (v : Fin k โ†’ E) :
      (lieDerivFormWithin V ฯ‰ s x) v = ((fderivWithin ๐•œ ฯ‰ s x) (V x)) v + โˆ‘ i : Fin k, (ฯ‰ x) (Function.update v i ((fderivWithin ๐•œ V s x) (v i)))

      Evaluation of the Lie derivative on a tuple of vectors.

      theorem TauCeti.lieDerivForm_apply {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} {V : E โ†’ E} {x : E} (ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F) (v : Fin k โ†’ E) :
      (lieDerivForm V ฯ‰ x) v = ((fderiv ๐•œ ฯ‰ x) (V x)) v + โˆ‘ i : Fin k, (ฯ‰ x) (Function.update v i ((fderiv ๐•œ V x) (v i)))

      Evaluation of the Lie derivative on a tuple of vectors.

      Linearity in the form #

      @[simp]
      theorem TauCeti.lieDerivFormWithin_zero {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} (V : E โ†’ E) (s : Set E) (x : E) :
      @[simp]
      theorem TauCeti.lieDerivForm_zero {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} (V : E โ†’ E) :
      theorem TauCeti.lieDerivFormWithin_add {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} {V : E โ†’ E} {s : Set E} {x : E} {ฯ‰ ฮท : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F} (hs : UniqueDiffWithinAt ๐•œ s x) (hฯ‰ : DifferentiableWithinAt ๐•œ ฯ‰ s x) (hฮท : DifferentiableWithinAt ๐•œ ฮท s x) :
      lieDerivFormWithin V (ฯ‰ + ฮท) s x = lieDerivFormWithin V ฯ‰ s x + lieDerivFormWithin V ฮท s x

      The Lie derivative within a set is additive on forms differentiable within the set at the point, wherever derivatives within the set are unique.

      theorem TauCeti.lieDerivForm_add {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} {V : E โ†’ E} {x : E} {ฯ‰ ฮท : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F} (hฯ‰ : DifferentiableAt ๐•œ ฯ‰ x) (hฮท : DifferentiableAt ๐•œ ฮท x) :
      lieDerivForm V (ฯ‰ + ฮท) x = lieDerivForm V ฯ‰ x + lieDerivForm V ฮท x

      The Lie derivative is additive on forms differentiable at the point.

      @[simp]
      theorem TauCeti.lieDerivFormWithin_smul {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} {V : E โ†’ E} {s : Set E} {x : E} (c : ๐•œ) (ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F) (hs : UniqueDiffWithinAt ๐•œ s x) :

      The Lie derivative within a set commutes with scalars wherever derivatives within the set are unique; no differentiability of the form is needed.

      @[simp]
      theorem TauCeti.lieDerivForm_smul {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} {V : E โ†’ E} (c : ๐•œ) (ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F) :

      Linearity in the vector field #

      theorem TauCeti.lieDerivFormWithin_add_left {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} {V : E โ†’ E} {s : Set E} {x : E} {W : E โ†’ E} (ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F) (hs : UniqueDiffWithinAt ๐•œ s x) (hV : DifferentiableWithinAt ๐•œ V s x) (hW : DifferentiableWithinAt ๐•œ W s x) :
      lieDerivFormWithin (V + W) ฯ‰ s x = lieDerivFormWithin V ฯ‰ s x + lieDerivFormWithin W ฯ‰ s x

      The Lie derivative within a set is additive in the vector field, at a point where both fields are differentiable within the set and derivatives within it are unique. No differentiability of the form is needed.

      theorem TauCeti.lieDerivForm_add_left {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} {V : E โ†’ E} {x : E} {W : E โ†’ E} (ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F) (hV : DifferentiableAt ๐•œ V x) (hW : DifferentiableAt ๐•œ W x) :
      lieDerivForm (V + W) ฯ‰ x = lieDerivForm V ฯ‰ x + lieDerivForm W ฯ‰ x

      The Lie derivative is additive in the vector field, at a point where both fields are differentiable.

      theorem TauCeti.lieDerivFormWithin_apply_vectorField {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} {V : E โ†’ E} {s : Set E} {x : E} {ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F} (X : Fin k โ†’ E โ†’ E) (hฯ‰ : DifferentiableWithinAt ๐•œ ฯ‰ s x) (hX : โˆ€ (i : Fin k), DifferentiableWithinAt ๐•œ (X i) s x) (hs : UniqueDiffWithinAt ๐•œ s x) :
      ((lieDerivFormWithin V ฯ‰ s x) fun (x_1 : Fin k) => X x_1 x) = (fderivWithin ๐•œ (fun (y : E) => (ฯ‰ y) fun (x : Fin k) => X x y) s x) (V x) - โˆ‘ i : Fin k, (ฯ‰ x) (Function.update (fun (x_1 : Fin k) => X x_1 x) i (VectorField.lieBracketWithin ๐•œ V (X i) s x))

      The bracket formula for the Lie derivative of a form within a set: evaluated on vector fields Xโ‚€, โ€ฆ, Xโ‚–โ‚‹โ‚, it is the derivative of ฯ‰ (Xโ‚€, โ€ฆ, Xโ‚–โ‚‹โ‚) along V minus the evaluations of ฯ‰ with one field Xแตข replaced by the bracket [V, Xแตข].

      theorem TauCeti.lieDerivForm_apply_vectorField {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} {V : E โ†’ E} {x : E} {ฯ‰ : E โ†’ E [โ‹€^Fin k]โ†’L[๐•œ] F} (X : Fin k โ†’ E โ†’ E) (hฯ‰ : DifferentiableAt ๐•œ ฯ‰ x) (hX : โˆ€ (i : Fin k), DifferentiableAt ๐•œ (X i) x) :
      ((lieDerivForm V ฯ‰ x) fun (x_1 : Fin k) => X x_1 x) = (fderiv ๐•œ (fun (y : E) => (ฯ‰ y) fun (x : Fin k) => X x y) x) (V x) - โˆ‘ i : Fin k, (ฯ‰ x) (Function.update (fun (x_1 : Fin k) => X x_1 x) i (VectorField.lieBracket ๐•œ V (X i) x))

      The bracket formula for the Lie derivative of a form: evaluated on vector fields Xโ‚€, โ€ฆ, Xโ‚–โ‚‹โ‚, it is the derivative of ฯ‰ (Xโ‚€, โ€ฆ, Xโ‚–โ‚‹โ‚) along V minus the evaluations of ฯ‰ with one field Xแตข replaced by the bracket [V, Xแตข].

      theorem TauCeti.lieDerivFormWithin_eq_curryLeft_extDerivWithin_add {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} {V : E โ†’ E} {s : Set E} {x : E} {ฯ‰ : E โ†’ E [โ‹€^Fin (k + 1)]โ†’L[๐•œ] F} (hฯ‰ : DifferentiableWithinAt ๐•œ ฯ‰ s x) (hV : DifferentiableWithinAt ๐•œ V s x) (hs : UniqueDiffWithinAt ๐•œ s x) :
      lieDerivFormWithin V ฯ‰ s x = (extDerivWithin ฯ‰ s x).curryLeft (V x) + extDerivWithin (fun (y : E) => (ฯ‰ y).curryLeft (V y)) s x

      Cartan's formula within a set, L_V ฯ‰ = ฮน_V dฯ‰ + d (ฮน_V ฯ‰), where the interior product ฮน_V inserts V into the first slot.

      theorem TauCeti.lieDerivForm_eq_curryLeft_extDeriv_add {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] {k : โ„•} {V : E โ†’ E} {x : E} {ฯ‰ : E โ†’ E [โ‹€^Fin (k + 1)]โ†’L[๐•œ] F} (hฯ‰ : DifferentiableAt ๐•œ ฯ‰ x) (hV : DifferentiableAt ๐•œ V x) :
      lieDerivForm V ฯ‰ x = (extDeriv ฯ‰ x).curryLeft (V x) + extDeriv (fun (y : E) => (ฯ‰ y).curryLeft (V y)) x

      Cartan's formula L_V ฯ‰ = ฮน_V dฯ‰ + d (ฮน_V ฯ‰), where the interior product ฮน_V inserts V into the first slot.

      theorem TauCeti.lieDerivFormWithin_eq_curryLeft_extDerivWithin {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] (V : E โ†’ E) (ฯ‰ : E โ†’ E [โ‹€^Fin 0]โ†’L[๐•œ] F) (s : Set E) (x : E) :
      lieDerivFormWithin V ฯ‰ s x = (extDerivWithin ฯ‰ s x).curryLeft (V x)

      Cartan's formula in degree zero, L_V f = ฮน_V df, holds for every function and vector field.

      theorem TauCeti.lieDerivForm_eq_curryLeft_extDeriv {๐•œ : Type u_1} {E : Type u_2} {F : Type u_3} [NontriviallyNormedField ๐•œ] [NormedAddCommGroup E] [NormedSpace ๐•œ E] [NormedAddCommGroup F] [NormedSpace ๐•œ F] (V : E โ†’ E) (ฯ‰ : E โ†’ E [โ‹€^Fin 0]โ†’L[๐•œ] F) (x : E) :
      lieDerivForm V ฯ‰ x = (extDeriv ฯ‰ x).curryLeft (V x)

      Cartan's formula in degree zero, L_V f = ฮน_V df, holds for every function and vector field.