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

First variation regularity

i. Overview

This module contains regularity consequences used in the local Euler-Lagrange criterion: continuity of the Euler-Lagrange operator from coefficient regularity, and the bridge from coordinate regularity of the local Lagrangian to the packaged smooth-regularity statement.

ii. Key results

    ClassicalFieldTheory.Local.continuous_eulerLagrangeOp_of_regular

    ClassicalFieldTheory.Local.hasSmoothEulerLagrangeRegularity_of_contDiffCoordDerivInCoordinates

iii. Table of contents

    A. Continuity of the Euler-Lagrange operator

    B. Smooth regularity in coordinates

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. Continuity of the Euler-Lagrange operator

The combined regularity package currently needed to derive the local Euler-Lagrange criterion for a field f: smooth coefficient functions along f, and continuity of the corresponding coefficient families along every admissible varied-field family based at f.

def HasEulerLagrangeRegularityAt (L : Lagrangian d m k) (f : Space d EuclideanSpace (Fin m)) : Prop := Lagrangian.ContDiffCoordDerivAlongField L f η : AdmissibleVariation d (EuclideanSpace (Fin m)), Lagrangian.ContinuousCoordDerivAlongFamily L (fun s : => variedField f η s)

A local Lagrangian has smooth Euler-Lagrange regularity if every smooth field satisfies the regularity package currently needed by the local first-variation proof.

def HasSmoothEulerLagrangeRegularity (L : Lagrangian d m k) : Prop := f : Space d EuclideanSpace (Fin m), ContDiff f HasEulerLagrangeRegularityAt L f
d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hcoeff:L.ContDiffCoordDerivAlongField fI:DerivativeIndex d ka:Fin mhtd:ContDiff (iteratedTotalDerivative k (↑I) (L.coordDeriv I a) f)hsign:ContDiff fun x => (-1) ^ (↑I).orderContinuous (eulerLagrangeTerm L I a f) All goals completed! 🐙lemma continuous_eulerLagrangeComponent_of_regular (L : Lagrangian d m k) (f : Space d EuclideanSpace (Fin m)) (hcoeff : Lagrangian.ContDiffCoordDerivAlongField L f) (a : Fin m) : Continuous (eulerLagrangeComponent L a f) := d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hcoeff:L.ContDiffCoordDerivAlongField fa:Fin mContinuous (eulerLagrangeComponent L a f) d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hcoeff:L.ContDiffCoordDerivAlongField fa:Fin m i Finset.univ, Continuous (eulerLagrangeTerm L i a f) d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hcoeff:L.ContDiffCoordDerivAlongField fa:Fin mI:DerivativeIndex d ka✝:I Finset.univContinuous (eulerLagrangeTerm L I a f) All goals completed! 🐙lemma continuous_eulerLagrangeOp_of_regular (L : Lagrangian d m k) (f : Space d EuclideanSpace (Fin m)) (hcoeff : Lagrangian.ContDiffCoordDerivAlongField L f) : Continuous (eulerLagrangeOp L f) := d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hcoeff:L.ContDiffCoordDerivAlongField fContinuous (eulerLagrangeOp L f) d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hcoeff:L.ContDiffCoordDerivAlongField fg:Space d Fin m := fun x a => eulerLagrangeComponent L a f xContinuous (eulerLagrangeOp L f) d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hcoeff:L.ContDiffCoordDerivAlongField fg:Space d Fin m := fun x a => eulerLagrangeComponent L a f xhg:Continuous gContinuous (eulerLagrangeOp L f) d:m:k:L:Lagrangian d m kf:Space d EuclideanSpace (Fin m)hcoeff:L.ContDiffCoordDerivAlongField fg:Space d Fin m := fun x a => eulerLagrangeComponent L a f xhg:Continuous gContinuous fun x => WithLp.toLp 2 (g x) All goals completed! 🐙

B. Smooth regularity in coordinates

theorem hasSmoothEulerLagrangeRegularity_of_contDiffCoordDerivInCoordinates (L : Lagrangian d m k) (hcoord : Lagrangian.ContDiffCoordDerivInCoordinates L) : HasSmoothEulerLagrangeRegularity L := d:m:k:L:Lagrangian d m khcoord:L.ContDiffCoordDerivInCoordinatesHasSmoothEulerLagrangeRegularity L d:m:k:L:Lagrangian d m khcoord:L.ContDiffCoordDerivInCoordinatesf:Space d EuclideanSpace (Fin m)hf:ContDiff fHasEulerLagrangeRegularityAt L f d:m:k:L:Lagrangian d m khcoord:L.ContDiffCoordDerivInCoordinatesf:Space d EuclideanSpace (Fin m)hf:ContDiff f (η : AdmissibleVariation d (EuclideanSpace (Fin m))), L.ContinuousCoordDerivAlongFamily fun s => variedField f η s d:m:k:L:Lagrangian d m khcoord:L.ContDiffCoordDerivInCoordinatesf:Space d EuclideanSpace (Fin m)hf:ContDiff fη:AdmissibleVariation d (EuclideanSpace (Fin m))L.ContinuousCoordDerivAlongFamily fun s => variedField f η s All goals completed! 🐙