-
Notifications
You must be signed in to change notification settings - Fork 1k
feat(Analysis/Distribution): the Laplacian on Schwartz functions #33636
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
PR summary fadadaad32Import changes exceeding 2%
|
| File | Base Count | Head Count | Change |
|---|---|---|---|
| Mathlib.Analysis.Distribution.DerivNotation | 1141 | 2147 | +1006 (+88.17%) |
| Mathlib.Analysis.Distribution.SchwartzSpace.Deriv | 2560 | 2562 | +2 (+0.08%) |
| Mathlib.Analysis.Distribution.TemperedDistribution | 2664 | 2666 | +2 (+0.08%) |
| Mathlib.Analysis.InnerProductSpace.Laplacian | 2204 | 2205 | +1 (+0.05%) |
| Mathlib.Analysis.InnerProductSpace.Harmonic.Basic | 2205 | 2206 | +1 (+0.05%) |
Import changes for all files
| Files | Import difference |
|---|---|
12 filesMathlib.Analysis.Complex.Harmonic.Analytic Mathlib.Analysis.Complex.Harmonic.MeanValue Mathlib.Analysis.Complex.JensenFormula Mathlib.Analysis.Complex.ValueDistribution.CharacteristicFunction Mathlib.Analysis.Complex.ValueDistribution.CountingFunction Mathlib.Analysis.Complex.ValueDistribution.FirstMainTheorem Mathlib.Analysis.InnerProductSpace.Harmonic.Basic Mathlib.Analysis.InnerProductSpace.Harmonic.Constructions Mathlib.Analysis.InnerProductSpace.Laplacian Mathlib.Analysis.Polynomial.MahlerMeasure Mathlib.Analysis.SpecialFunctions.Integrals.PosLogEqCircleAverage Mathlib.NumberTheory.MahlerMeasure |
1 |
26 filesMathlib.Analysis.Distribution.SchwartzSpace.Deriv Mathlib.Analysis.Distribution.SchwartzSpace.Fourier Mathlib.Analysis.Distribution.TemperedDistribution Mathlib.Analysis.Fourier.Convolution Mathlib.Analysis.Fourier.LpSpace Mathlib.Analysis.Fourier.PoissonSummation Mathlib.Analysis.SpecialFunctions.Gaussian.PoissonSummation Mathlib.NumberTheory.EulerProduct.DirichletLSeries Mathlib.NumberTheory.Harmonic.ZetaAsymp Mathlib.NumberTheory.LSeries.DirichletContinuation Mathlib.NumberTheory.LSeries.Dirichlet Mathlib.NumberTheory.LSeries.HurwitzZetaEven Mathlib.NumberTheory.LSeries.HurwitzZetaOdd Mathlib.NumberTheory.LSeries.HurwitzZetaValues Mathlib.NumberTheory.LSeries.HurwitzZeta Mathlib.NumberTheory.LSeries.Nonvanishing Mathlib.NumberTheory.LSeries.PrimesInAP Mathlib.NumberTheory.LSeries.RiemannZeta Mathlib.NumberTheory.LSeries.ZMod Mathlib.NumberTheory.ModularForms.EisensteinSeries.E2.Defs Mathlib.NumberTheory.ModularForms.EisensteinSeries.E2.Summable Mathlib.NumberTheory.ModularForms.EisensteinSeries.QExpansion Mathlib.NumberTheory.ModularForms.JacobiTheta.Bounds Mathlib.NumberTheory.ModularForms.JacobiTheta.Manifold Mathlib.NumberTheory.ModularForms.JacobiTheta.OneVariable Mathlib.NumberTheory.ModularForms.JacobiTheta.TwoVariable |
2 |
Mathlib.Analysis.Distribution.DerivNotation |
1006 |
Declarations diff
+ InnerProduct.laplacian
+ Laplacian
+ LineDerivLeftSMul
+ bilinearLineDerivTwo
+ instLineDerivSMul'
+ integral_bilinear_laplacian_right_eq_left
+ integral_clm_comp_laplacian_right_eq_left
+ integral_mul_laplacian_right_eq_left
+ integral_smul_laplacian_right_eq_left
+ laplacianCLM
+ laplacianCLM_apply
+ laplacianCLM_eq
+ laplacianCLM_eq'
+ laplacianCLM_eq_sum
+ laplacian_apply
+ laplacian_apply_apply
+ laplacian_toTemperedDistributionCLM_eq
+ tensorLineDerivTwo
+ tensorLineDerivTwo_canonicalCovariantTensor_eq_sum
+ tensorLineDerivTwo_eq_lineDerivOp_lineDerivOp
++ instLineDerivLeftSMul
++ laplacian_eq_sum
+++ instLaplacian
- laplacian
You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>
## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>The doc-module for script/declarations_diff.sh contains some details about this script.
No changes to technical debt.
You can run this locally as
./scripts/technical-debt-metrics.sh pr_summary
- The
relativevalue is the weighted sum of the differences with weight given by the inverse of the current value of the statistic. - The
absolutevalue is therelativevalue divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).
sgouezel
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, I am much more happy with the new approach!
|
I think (noting the fact that the basic file for Schwartz functions is too big (again)), that I will factor out all of the derivatives statements and then put the Laplacian in that new file. Seems more sensible from the import graph than just having the Laplacian in a separate file. |
|
This PR/issue depends on: |
We introduce a notation type-class for the Laplacian, change the definition of
InnerProductSpace.laplaciantoLaplacian.laplacianand define the Laplacian using the sum of second derivatives on Schwartz functions.We define an abstract Laplacian for any space with
LineDerivin order to avoid duplication for other function spaces (in particular, this will be reused for the tempered distribution Laplacian).SchwartzSpaceand create new folder #34027