Add criticality transfer API to PhyslibAlpha - #1314
Conversation
|
Thank you for this PR, which will now be reviewed. If submitting to ./Physlib or ./QuantumInfo, please see our review guidelines if you are not familiar with the process. You should expect a back and forth with a reviewer before your PR is merged. See also that link for how to add appropriate labels to your PR. The PR will also go through a number of automated checks. You can learn more about these here, including how to run them locally. If you are submitting to ./PhyslibAlpha there will be a lighter review process, though your PR must still pass the automated checks. If you want to bring attention to this PR, please write a message on this thread of the Lean Zulip. Important: If a reviewer adds an |
jstoobysmith
left a comment
There was a problem hiding this comment.
Approved. Will merge now.
This PR adds a small transfer API around
IsEulerLagrangeEquivalentandTotalDivergenceEquivalencein the local Classical Field Theory Alpha stack.It builds directly on #1307 and introduces:
IsEulerLagrangeEquivalent.eulerLagrangeOp_eq, exposing the defining equality as a namespaced lemma;IsEulerLagrangeEquivalent.eulerLagrangeOp_eq_zero_iff, transferring Euler--Lagrange vanishing across equivalent lagrangians;TotalDivergenceEquivalence.This PR does not add new mathematical objects or symbolic calculus. It only packages the immediate consequences of the already-approved equivalence predicate, so downstream Alpha files can use named transfer lemmas rather than repeatedly destructing the same
iff.Validation:
lake build PhyslibAlpha.ClassicalFieldTheory.Local.TotalDivergenceEquivalencelake build PhyslibAlphalake exe runPhyslibAlphaLinters./scripts/PhyslibAlpha/alphaPythonLinters.shpython3 ./scripts/PhyslibAlpha/alphaFileImports.pypython3 ./scripts/PhyslibAlpha/noAlphaImports.py