Imports
/- Copyright (c) 2026 Juan Jose Fernandez Morales. All rights reserved. Released under Apache 2.0 license as described in the file LICENSE. Authors: Juan Jose Fernandez Morales -/ module public import PhyslibAlpha.ClassicalFieldTheory.Local.FirstVariation.Support public import Mathlib.Analysis.Calculus.ParametricIntegral

First variation density formulas

i. Overview

This module contains the pointwise and integral first-variation formulas before integration by parts: differentiation of the varied action density, dominated differentiation under the integral, and the corresponding packaged hypotheses.

ii. Key results

    ClassicalFieldTheory.Local.hasPointwiseLinearizedDensityFormula_of_contDiff

    ClassicalFieldTheory.Local.hasActionVariationDerivativeUnderIntegral_of_contDiff_of_regular

iii. Table of contents

    A. Differentiation under the integral sign

    B. Pointwise linearization

iv. References

    J. Cortés and A. Haupt, Lecture Notes on Mathematical Methods of Classical Physics, Chapter 5, Theorem 5.2.

@[expose] public section

A. Differentiation under the integral sign

Differentiation of the varied action under the integral sign, packaged as a hypothesis.

def HasActionVariationDerivativeUnderIntegral (L : Lagrangian d m k) (f : Space d EuclideanSpace (Fin m)) : Prop := η : AdmissibleVariation d (EuclideanSpace (Fin m)), HasFiniteActionVariation L f η HasDerivAt (actionVariation L f η) ( x, deriv (fun s : => actionDensity L (variedField f η s) x) 0) 0

Pointwise linearization of the action density before integration by parts.

def HasPointwiseLinearizedDensityFormula (L : Lagrangian d m k) (f : Space d EuclideanSpace (Fin m)) : Prop := η : AdmissibleVariation d (EuclideanSpace (Fin m)), x : Space d, deriv (fun s : => actionDensity L (variedField f η s) x) 0 = firstVariationDensity L f η x

A direct bridge from Mathlib's dominated differentiation-under-the-integral theorem to the local action variation. This isolates the measure-theoretic input needed to prove HasActionVariationDerivativeUnderIntegral.

lemma actionVariation_hasDerivAt_of_dominated_loc_of_deriv_le (L : Lagrangian d m k) (f : Space d EuclideanSpace (Fin m)) (η : AdmissibleVariation d (EuclideanSpace (Fin m))) {F' : Space d } {bound : Space d } {ε : } ( : 0 < ε) (hmeas : ∀ᶠ s in nhds (0 : ), AEStronglyMeasurable (actionDensity L (variedField f η s)) volume) (hfinite0 : Integrable (actionDensity L (variedField f η 0))) (hF'_meas : AEStronglyMeasurable (F' 0) volume) (hbound : ∀ᵐ x volume, s Metric.ball (0 : ) ε, F' s x bound x) (hbound_int : Integrable bound volume) (hderiv : ∀ᵐ x volume, s Metric.ball (0 : ) ε, HasDerivAt (fun r : => actionDensity L (variedField f η r) x) (F' s x) s) : HasDerivAt (actionVariation L f η) ( x, F' 0 x) 0 := d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))F': Space d bound:Space d ε::0 < εhmeas:∀ᶠ (s : ) in nhds 0, AEStronglyMeasurable (actionDensity L (variedField f η s)) volumehfinite0:Integrable (actionDensity L (variedField f η 0)) volumehF'_meas:AEStronglyMeasurable (F' 0) volumehbound:∀ᵐ (x : Space d), s Metric.ball 0 ε, F' s x bound xhbound_int:Integrable bound volumehderiv:∀ᵐ (x : Space d), s Metric.ball 0 ε, HasDerivAt (fun r => actionDensity L (variedField f η r) x) (F' s x) sHasDerivAt (actionVariation L f η) ( (x : Space d), F' 0 x) 0 d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))F': Space d bound:Space d ε::0 < εhmeas:∀ᶠ (s : ) in nhds 0, AEStronglyMeasurable (actionDensity L (variedField f η s)) volumehfinite0:Integrable (actionDensity L (variedField f η 0)) volumehF'_meas:AEStronglyMeasurable (F' 0) volumehbound:∀ᵐ (x : Space d), s Metric.ball 0 ε, F' s x bound xhbound_int:Integrable bound volumehderiv:∀ᵐ (x : Space d), s Metric.ball 0 ε, HasDerivAt (fun r => actionDensity L (variedField f η r) x) (F' s x) shs:Metric.ball 0 ε nhds 0HasDerivAt (actionVariation L f η) ( (x : Space d), F' 0 x) 0 All goals completed! 🐙

A dominated bound for the pointwise first variation along the varied-field family near s = 0. This packages the analytic domination needed to differentiate the action under the integral sign.

def HasDominatedVariationDerivativeNear (L : Lagrangian d m k) (f : Space d EuclideanSpace (Fin m)) (η : AdmissibleVariation d (EuclideanSpace (Fin m))) : Prop := ε > 0, bound : Space d , AEStronglyMeasurable (firstVariationDensity L f η) volume Integrable bound volume ∀ᵐ x volume, s Metric.ball (0 : ) ε, firstVariationDensity L (variedField f η s) η x bound x
d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))hcont: (I : DerivativeIndex d k) (a : Fin m), Continuous fun p => L.coordDeriv I a (jetAt k (variedField f η p.1) p.2)I:DerivativeIndex d ka:Fin mhpair:Continuous fun x => (0, x)hcoeff0:Continuous fun x => L.coordDeriv I a (jetAt k (variedField f η 0) x)Continuous fun x => L.coordDeriv I a (jetAt k f x) All goals completed! 🐙d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))ψ:DerivativeIndex d k Fin m Space d : (I : DerivativeIndex d k) (a : Fin m) (x : Space d), ψ I a x = Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) xC:DerivativeIndex d k Fin m K:DerivativeIndex d k Fin m Set (Space d)hKzero: (I : DerivativeIndex d k) (a : Fin m), x K I a, ψ I a x = 0hC: (I : DerivativeIndex d k) (a : Fin m), p Metric.closedBall 0 1 ×ˢ K I a, L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) C I ax:Space ds:hs:s Metric.ball 0 1I:DerivativeIndex d ka:Fin mhx:x K I ahψzero:Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) x = 0firstVariationDensityTerm L (variedField f η s) η I a x C I a * Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) x All goals completed! 🐙d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))ψ:DerivativeIndex d k Fin m Space d : (I : DerivativeIndex d k) (a : Fin m) (x : Space d), ψ I a x = Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) xC:DerivativeIndex d k Fin m K:DerivativeIndex d k Fin m Set (Space d)hKzero: (I : DerivativeIndex d k) (a : Fin m), x K I a, ψ I a x = 0hC: (I : DerivativeIndex d k) (a : Fin m), p Metric.closedBall 0 1 ×ˢ K I a, L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) C I ax:Space ds:hs:s Metric.ball 0 1houter: I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, firstVariationDensityTerm L (variedField f η s) η I a xfirstVariationDensity L (variedField f η s) η x I, a, C I a * ψ I a x calc firstVariationDensity L (variedField f η s) η x = I : DerivativeIndex d k, a : Fin m, firstVariationDensityTerm L (variedField f η s) η I a x := d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))ψ:DerivativeIndex d k Fin m Space d : (I : DerivativeIndex d k) (a : Fin m) (x : Space d), ψ I a x = Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) xC:DerivativeIndex d k Fin m K:DerivativeIndex d k Fin m Set (Space d)hKzero: (I : DerivativeIndex d k) (a : Fin m), x K I a, ψ I a x = 0hC: (I : DerivativeIndex d k) (a : Fin m), p Metric.closedBall 0 1 ×ˢ K I a, L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) C I ax:Space ds:hs:s Metric.ball 0 1houter: I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, firstVariationDensityTerm L (variedField f η s) η I a xfirstVariationDensity L (variedField f η s) η x = I, a, firstVariationDensityTerm L (variedField f η s) η I a x All goals completed! 🐙 _ I : DerivativeIndex d k, a : Fin m, firstVariationDensityTerm L (variedField f η s) η I a x := houter _ I : DerivativeIndex d k, a : Fin m, firstVariationDensityTerm L (variedField f η s) η I a x := d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))ψ:DerivativeIndex d k Fin m Space d : (I : DerivativeIndex d k) (a : Fin m) (x : Space d), ψ I a x = Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) xC:DerivativeIndex d k Fin m K:DerivativeIndex d k Fin m Set (Space d)hKzero: (I : DerivativeIndex d k) (a : Fin m), x K I a, ψ I a x = 0hC: (I : DerivativeIndex d k) (a : Fin m), p Metric.closedBall 0 1 ×ˢ K I a, L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) C I ax:Space ds:hs:s Metric.ball 0 1houter: I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, firstVariationDensityTerm L (variedField f η s) η I a x d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))ψ:DerivativeIndex d k Fin m Space d : (I : DerivativeIndex d k) (a : Fin m) (x : Space d), ψ I a x = Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) xC:DerivativeIndex d k Fin m K:DerivativeIndex d k Fin m Set (Space d)hKzero: (I : DerivativeIndex d k) (a : Fin m), x K I a, ψ I a x = 0hC: (I : DerivativeIndex d k) (a : Fin m), p Metric.closedBall 0 1 ×ˢ K I a, L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) C I ax:Space ds:hs:s Metric.ball 0 1houter: I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, firstVariationDensityTerm L (variedField f η s) η I a x i Finset.univ, a, firstVariationDensityTerm L (variedField f η s) η i a x a, firstVariationDensityTerm L (variedField f η s) η i a x d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))ψ:DerivativeIndex d k Fin m Space d : (I : DerivativeIndex d k) (a : Fin m) (x : Space d), ψ I a x = Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) xC:DerivativeIndex d k Fin m K:DerivativeIndex d k Fin m Set (Space d)hKzero: (I : DerivativeIndex d k) (a : Fin m), x K I a, ψ I a x = 0hC: (I : DerivativeIndex d k) (a : Fin m), p Metric.closedBall 0 1 ×ˢ K I a, L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) C I ax:Space ds:hs:s Metric.ball 0 1houter: I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, firstVariationDensityTerm L (variedField f η s) η I a xI:DerivativeIndex d ka✝:I Finset.univ a, firstVariationDensityTerm L (variedField f η s) η I a x a, firstVariationDensityTerm L (variedField f η s) η I a x All goals completed! 🐙 _ I : DerivativeIndex d k, a : Fin m, C I a * ψ I a x := d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))ψ:DerivativeIndex d k Fin m Space d : (I : DerivativeIndex d k) (a : Fin m) (x : Space d), ψ I a x = Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) xC:DerivativeIndex d k Fin m K:DerivativeIndex d k Fin m Set (Space d)hKzero: (I : DerivativeIndex d k) (a : Fin m), x K I a, ψ I a x = 0hC: (I : DerivativeIndex d k) (a : Fin m), p Metric.closedBall 0 1 ×ˢ K I a, L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) C I ax:Space ds:hs:s Metric.ball 0 1houter: I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, C I a * ψ I a x d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))ψ:DerivativeIndex d k Fin m Space d : (I : DerivativeIndex d k) (a : Fin m) (x : Space d), ψ I a x = Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) xC:DerivativeIndex d k Fin m K:DerivativeIndex d k Fin m Set (Space d)hKzero: (I : DerivativeIndex d k) (a : Fin m), x K I a, ψ I a x = 0hC: (I : DerivativeIndex d k) (a : Fin m), p Metric.closedBall 0 1 ×ˢ K I a, L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) C I ax:Space ds:hs:s Metric.ball 0 1houter: I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, firstVariationDensityTerm L (variedField f η s) η I a x i Finset.univ, a, firstVariationDensityTerm L (variedField f η s) η i a x a, C i a * ψ i a x d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))ψ:DerivativeIndex d k Fin m Space d : (I : DerivativeIndex d k) (a : Fin m) (x : Space d), ψ I a x = Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) xC:DerivativeIndex d k Fin m K:DerivativeIndex d k Fin m Set (Space d)hKzero: (I : DerivativeIndex d k) (a : Fin m), x K I a, ψ I a x = 0hC: (I : DerivativeIndex d k) (a : Fin m), p Metric.closedBall 0 1 ×ˢ K I a, L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) C I ax:Space ds:hs:s Metric.ball 0 1houter: I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, firstVariationDensityTerm L (variedField f η s) η I a xI:DerivativeIndex d ka✝:I Finset.univ a, firstVariationDensityTerm L (variedField f η s) η I a x a, C I a * ψ I a x d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))ψ:DerivativeIndex d k Fin m Space d : (I : DerivativeIndex d k) (a : Fin m) (x : Space d), ψ I a x = Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) xC:DerivativeIndex d k Fin m K:DerivativeIndex d k Fin m Set (Space d)hKzero: (I : DerivativeIndex d k) (a : Fin m), x K I a, ψ I a x = 0hC: (I : DerivativeIndex d k) (a : Fin m), p Metric.closedBall 0 1 ×ˢ K I a, L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) C I ax:Space ds:hs:s Metric.ball 0 1houter: I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, firstVariationDensityTerm L (variedField f η s) η I a xI:DerivativeIndex d ka✝:I Finset.univ i Finset.univ, firstVariationDensityTerm L (variedField f η s) η I i x C I i * ψ I i x d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))ψ:DerivativeIndex d k Fin m Space d : (I : DerivativeIndex d k) (a : Fin m) (x : Space d), ψ I a x = Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) xC:DerivativeIndex d k Fin m K:DerivativeIndex d k Fin m Set (Space d)hKzero: (I : DerivativeIndex d k) (a : Fin m), x K I a, ψ I a x = 0hC: (I : DerivativeIndex d k) (a : Fin m), p Metric.closedBall 0 1 ×ˢ K I a, L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) C I ax:Space ds:hs:s Metric.ball 0 1houter: I, a, firstVariationDensityTerm L (variedField f η s) η I a x I, a, firstVariationDensityTerm L (variedField f η s) η I a xI:DerivativeIndex d ka✝¹:I Finset.univa:Fin ma✝:a Finset.univfirstVariationDensityTerm L (variedField f η s) η I a x C I a * ψ I a x All goals completed! 🐙

A concrete dominated bound for the varied first-variation density, obtained from continuity of the jet-coordinate coefficient family in (s, x). The compact support of the iterated derivatives of the admissible variation supplies the integrable majorant.

d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))hcont: (I : DerivativeIndex d k) (a : Fin m), Continuous fun p => L.coordDeriv I a (jetAt k (variedField f η p.1) p.2)ψ:DerivativeIndex d k Fin m Space d := fun I a x => Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) x: (I : DerivativeIndex d k) (a : Fin m), IsTestFunction (ψ I a)hψ_eval: (I : DerivativeIndex d k) (a : Fin m) (x : Space d), ψ I a x = Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) xK:DerivativeIndex d k Fin m Set (Space d)hKcompact: (I : DerivativeIndex d k) (a : Fin m), IsCompact (K I a)hKzero: (I : DerivativeIndex d k) (a : Fin m), x K I a, ψ I a x = 0C:DerivativeIndex d k Fin m := fun I a => Classical.choose hC: (I : DerivativeIndex d k) (a : Fin m), p Metric.closedBall 0 1 ×ˢ K I a, L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) C I abound:Space d := fun x => I, a, C I a * ψ I a xhbound_int:Integrable bound volumehfirst_int:Integrable (firstVariationDensity L f η) volumehbound: (x : Space d), s Metric.ball 0 1, firstVariationDensity L (variedField f η s) η x bound xHasDominatedVariationDerivativeNear L f η d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)η:AdmissibleVariation d (EuclideanSpace (Fin m))hcont: (I : DerivativeIndex d k) (a : Fin m), Continuous fun p => L.coordDeriv I a (jetAt k (variedField f η p.1) p.2)ψ:DerivativeIndex d k Fin m Space d := fun I a x => Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) x: (I : DerivativeIndex d k) (a : Fin m), IsTestFunction (ψ I a)hψ_eval: (I : DerivativeIndex d k) (a : Fin m) (x : Space d), ψ I a x = Space.iteratedDeriv (↑I) (fun y => (η.toFun y).ofLp a) xK:DerivativeIndex d k Fin m Set (Space d)hKcompact: (I : DerivativeIndex d k) (a : Fin m), IsCompact (K I a)hKzero: (I : DerivativeIndex d k) (a : Fin m), x K I a, ψ I a x = 0C:DerivativeIndex d k Fin m := fun I a => Classical.choose hC: (I : DerivativeIndex d k) (a : Fin m), p Metric.closedBall 0 1 ×ˢ K I a, L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) C I abound:Space d := fun x => I, a, C I a * ψ I a xhbound_int:Integrable bound volumehfirst_int:Integrable (firstVariationDensity L f η) volumehbound: (x : Space d), s Metric.ball 0 1, firstVariationDensity L (variedField f η s) η x bound x∀ᵐ (x : Space d), s Metric.ball 0 1, firstVariationDensity L (variedField f η s) η x bound x All goals completed! 🐙

B. Pointwise linearization

d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hf:ContDiff fη:AdmissibleVariation d (EuclideanSpace (Fin m))x:Space dhjet: (s : ), jetAt k (variedField f η s) x = (jetAt k f x).lineMap (jetDirectionAt k η.toFun x) shfun:(fun s => actionDensity L (variedField f η s) x) = fun s => L.toFun ((jetAt k f x).lineMap (jetDirectionAt k η.toFun x) s)HasDerivAt (fun s => L.toFun ((jetAt k f x).lineMap (jetDirectionAt k η.toFun x) s)) (firstVariationDensity L f η x) 0 All goals completed! 🐙d:m:k✝:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hf:ContDiff fη:AdmissibleVariation d (EuclideanSpace (Fin m))x:Space ds:hzero:HasDerivAt (fun t => actionDensity L (variedField (variedField f η s) η t) x) (firstVariationDensity L (variedField f η s) η x) 0hshift:HasDerivAt (fun t => actionDensity L (variedField f η (t + s)) x) (firstVariationDensity L (variedField f η s) η x) 0k: := fun t => actionDensity L (variedField f η (t + s)) xhk:HasDerivAt k (firstVariationDensity L (variedField f η s) η x) (s - s)HasDerivAt (fun r => actionDensity L (variedField f η r) x) (firstVariationDensity L (variedField f η s) η x) s All goals completed! 🐙lemma hasPointwiseLinearizedDensityFormula_of_contDiff (L : Lagrangian d m k) (f : Space d EuclideanSpace (Fin m)) (hf : ContDiff f) : HasPointwiseLinearizedDensityFormula L f := d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hf:ContDiff fHasPointwiseLinearizedDensityFormula L f d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hf:ContDiff fη:AdmissibleVariation d (EuclideanSpace (Fin m))x:Space dderiv (fun s => actionDensity L (variedField f η s) x) 0 = firstVariationDensity L f η x All goals completed! 🐙d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hf:ContDiff fhdom: (η : AdmissibleVariation d (EuclideanSpace (Fin m))), HasFiniteActionVariation L f η HasDominatedVariationDerivativeNear L f ηη:AdmissibleVariation d (EuclideanSpace (Fin m)):HasFiniteActionVariation L f ηε::ε > 0bound:Space d hF'_meas:AEStronglyMeasurable (firstVariationDensity L f η) volumehbound_int:Integrable bound volumehbound:∀ᵐ (x : Space d), s Metric.ball 0 ε, firstVariationDensity L (variedField f η s) η x bound xF': Space d := fun s => firstVariationDensity L (variedField f η s) ηhmeas:∀ᶠ (s : ) in nhds 0, AEStronglyMeasurable (actionDensity L (variedField f η s)) volumehderiv:∀ᵐ (x : Space d), s Metric.ball 0 ε, HasDerivAt (fun r => actionDensity L (variedField f η r) x) (F' s x) shfinite0:Integrable (actionDensity L (variedField f η 0)) volumehF0_meas:AEStronglyMeasurable (F' 0) volumehresult:HasDerivAt (actionVariation L f η) ( (x : Space d), deriv (fun s => actionDensity L (variedField f η s) x) 0) 0hvalue: (x : Space d), F' 0 x = (x : Space d), deriv (fun s => actionDensity L (variedField f η s) x) 0HasDerivAt (actionVariation L f η) ( (x : Space d), deriv (fun s => actionDensity L (variedField f η s) x) 0) 0 All goals completed! 🐙lemma hasActionVariationDerivativeUnderIntegral_of_contDiff_of_continuous_coordDeriv (L : Lagrangian d m k) (f : Space d EuclideanSpace (Fin m)) (hf : ContDiff f) (hcontVar : η : AdmissibleVariation d (EuclideanSpace (Fin m)), I : DerivativeIndex d k, a : Fin m, Continuous (fun p : × Space d => L.coordDeriv I a (jetAt k (variedField f η p.1) p.2))) : HasActionVariationDerivativeUnderIntegral L f := d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hf:ContDiff fhcontVar: (η : AdmissibleVariation d (EuclideanSpace (Fin m))) (I : DerivativeIndex d k) (a : Fin m), Continuous fun p => L.coordDeriv I a (jetAt k (variedField f η p.1) p.2)HasActionVariationDerivativeUnderIntegral L f d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hf:ContDiff fhcontVar: (η : AdmissibleVariation d (EuclideanSpace (Fin m))) (I : DerivativeIndex d k) (a : Fin m), Continuous fun p => L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) (η : AdmissibleVariation d (EuclideanSpace (Fin m))), HasFiniteActionVariation L f η HasDominatedVariationDerivativeNear L f η d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hf:ContDiff fhcontVar: (η : AdmissibleVariation d (EuclideanSpace (Fin m))) (I : DerivativeIndex d k) (a : Fin m), Continuous fun p => L.coordDeriv I a (jetAt k (variedField f η p.1) p.2)η:AdmissibleVariation d (EuclideanSpace (Fin m))_hη:HasFiniteActionVariation L f ηHasDominatedVariationDerivativeNear L f η All goals completed! 🐙lemma hasActionVariationDerivativeUnderIntegral_of_contDiff_of_regular (L : Lagrangian d m k) (f : Space d EuclideanSpace (Fin m)) (hf : ContDiff f) (hcontVar : η : AdmissibleVariation d (EuclideanSpace (Fin m)), Lagrangian.ContinuousCoordDerivAlongFamily L (fun s : => variedField f η s)) : HasActionVariationDerivativeUnderIntegral L f := d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hf:ContDiff fhcontVar: (η : AdmissibleVariation d (EuclideanSpace (Fin m))), L.ContinuousCoordDerivAlongFamily fun s => variedField f η sHasActionVariationDerivativeUnderIntegral L f d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hf:ContDiff fhcontVar: (η : AdmissibleVariation d (EuclideanSpace (Fin m))), L.ContinuousCoordDerivAlongFamily fun s => variedField f η s (η : AdmissibleVariation d (EuclideanSpace (Fin m))) (I : DerivativeIndex d k) (a : Fin m), Continuous fun p => L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hf:ContDiff fhcontVar: (η : AdmissibleVariation d (EuclideanSpace (Fin m))), L.ContinuousCoordDerivAlongFamily fun s => variedField f η sη:AdmissibleVariation d (EuclideanSpace (Fin m))I:DerivativeIndex d ka:Fin mContinuous fun p => L.coordDeriv I a (jetAt k (variedField f η p.1) p.2) All goals completed! 🐙