Skip to content

feat(Analysis/Distribution): define canonical maps between Schwartz/test functions, distributions/tempered distributions#37350

Open
aditya-ramabadran wants to merge 10 commits intoleanprover-community:masterfrom
aditya-ramabadran:distributionSchwartzMaps
Open

feat(Analysis/Distribution): define canonical maps between Schwartz/test functions, distributions/tempered distributions#37350
aditya-ramabadran wants to merge 10 commits intoleanprover-community:masterfrom
aditya-ramabadran:distributionSchwartzMaps

Conversation

@aditya-ramabadran
Copy link
Copy Markdown
Contributor

@aditya-ramabadran aditya-ramabadran commented Mar 30, 2026

Defines these canonical maps: (1) continuous linear map from $\mathcal D$ to $\mathcal S$, and (2) induced (linear) restriction map from $\mathcal S'$ to $\mathcal D'$, as assigned by @ADedecker.


Put in a separate file since Distribution.lean only imports TestFunction right now and I thought it was cleaner to do in a new bridge file with both the maps. Open to changing this though.

The main important defs are ContDiffMapSupportedIn.toSchwartzMapCLM which is the local fixed-support part, then TestFunction.toSchwartzMapCLM (where the continuity uses limitCLM to glue the local continuous linear maps on each $\mathcal D_K$), and TemperedDistribution.toDistributionLM which is the linear map from tempered distributions to ordinary distributions.

Tested with lake env lean Mathlib/Analysis/Distribution/TestFunctionSchwartz.lean

Open in Gitpod

@github-actions github-actions bot added the new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! label Mar 30, 2026
@github-actions
Copy link
Copy Markdown

Welcome new contributor!

Thank you for contributing to Mathlib! If you haven't done so already, please review our contribution guidelines, as well as the style guide and naming conventions. In particular, we kindly remind contributors that we have guidelines regarding the use of AI when making pull requests.

We use a review queue to manage reviews. If your PR does not appear there, it is probably because it is not successfully building (i.e., it doesn't have a green checkmark), has the awaiting-author tag, or another reason described in the Lifecycle of a PR. The review dashboard has a dedicated webpage which shows whether your PR is on the review queue, and (if not), why.

If you haven't already done so, please come to https://leanprover.zulipchat.com/, introduce yourself, and mention your new PR.

Thank you again for joining our community.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 30, 2026

PR summary ea0501174b

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference
Mathlib.Analysis.Distribution.TestFunctionSchwartz (new file) 2688

Declarations diff

+ norm_pow_le_bound_on_compact
+ powNormBound
+ restrictToTestFunctionsCLM
+ restrictToTestFunctionsCLM_apply
+ schwartzSeminorm_le_localSeminorm
+ toComplexSchwartzMapCLM
+ toComplexSchwartzMapCLM_apply
+ toComplexSchwartzMapCLM_real_smul
+ toDistribution
+ toDistributionLM
+ toDistributionLM_apply_apply
+ toDistribution_apply
++ toSchwartzMap
++ toSchwartzMapCLM
++ toSchwartzMapCLM_apply
++ toSchwartzMap_apply

You can run this locally as follows
## summary with just the declaration names:
./scripts/pr_summary/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/pr_summary/declarations_diff.sh long <optional_commit>

The doc-module for scripts/pr_summary/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/reporting/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

@github-actions github-actions bot added the t-analysis Analysis (normed *, calculus) label Mar 30, 2026
@aditya-ramabadran aditya-ramabadran marked this pull request as ready for review March 30, 2026 04:49
@ADedecker ADedecker self-assigned this Mar 30, 2026
@github-actions github-actions bot added large-import Automatically added label for PRs with a significant increase in transitive imports file-removed A Lean module was (re)moved without a `deprecated_module` annotation labels Apr 1, 2026
@aditya-ramabadran aditya-ramabadran force-pushed the distributionSchwartzMaps branch from aef3b81 to 6a04105 Compare April 1, 2026 15:08
@github-actions github-actions bot removed large-import Automatically added label for PRs with a significant increase in transitive imports file-removed A Lean module was (re)moved without a `deprecated_module` annotation labels Apr 1, 2026
@aditya-ramabadran
Copy link
Copy Markdown
Contributor Author

fixed the linter/comment errors, should be good to go

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! t-analysis Analysis (normed *, calculus)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants