Skip to content

feat(Analysis/Normed/Module): uniform bounds for compact injective families - #44978

Open
ArtificialZeng wants to merge 3 commits into
leanprover-community:masterfrom
ArtificialZeng:codex/compact-injective-family
Open

ArtificialZeng wants to merge 3 commits into
leanprover-community:masterfrom
ArtificialZeng:codex/compact-injective-family

Conversation

@ArtificialZeng

Copy link
Copy Markdown

A continuous family of injective continuous linear maps, with finite-dimensional source over a complete nontrivially normed field, has a uniform positive lower bound on a compact parameter set. A second lemma gives a uniform operator-norm perturbation radius preserving injectivity; the perturbing family need not be continuous.

These estimates support compact-family derivative perturbation arguments. The proof uses LinearMap.exists_antilipschitzWith and IsCompact.induction_on, adds no imports, and does not require the target to be finite-dimensional or complete.


Local validation on base 4c71e7e7e5f99e938e520c4242aaf2522a594953, Lean 4.36.0-rc1:

  • lake build Mathlib.Analysis.Normed.Module.FiniteDimension passed after refreshing the base's dependency cache.
  • Standard Mathlib source linters and examples covering a nonconstant compact family, empty sets, and a zero-dimensional source passed.
  • A separate fresh compilation and axiom queries passed; both lemmas use only propext, Classical.choice, and Quot.sound.
  • The same new proofs and a downstream derivative-estimate consumer also compiled against the pinned Lean 4.35.0 baseline.

AI disclosure: OpenAI Codex generated and adapted the proofs and performed automated source review and local checks. This draft is pending human review of the mathematics and API choices. Automated checks and AI review do not replace that review. Full upstream CI is still required.

…milies

Add a uniform positive lower bound for a compact continuous family of injective
linear maps with finite-dimensional source, and a uniform injectivity-preserving
operator-norm perturbation radius.

Assisted-by: OpenAI Codex
@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 Oct 17, 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 Zulip and join the Lean community.
Thank you again for joining our community.

@github-actions

github-actions Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

PR summary c9f852f03d

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff (regex)

+ IsCompact.exists_pos_forall_injective_of_norm_sub_lt
+ IsCompact.exists_pos_le_norm_apply

You can run this locally as follows
## from your `mathlib4` directory:
git clone https://github.com/leanprover-community/mathlib-ci.git ../mathlib-ci

## summary with just the declaration names:
../mathlib-ci/scripts/pr_summary/declarations_diff.sh <optional_commit>

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

The doc-module for scripts/pr_summary/declarations_diff.sh in the mathlib-ci repository contains some details about this script.

Declarations diff (Lean)

✅ Lean-aware diff — post-build, computed from the Lean environment (commit c9f852f).

  • +2 new declarations
  • −0 removed declarations
+IsCompact.exists_pos_forall_injective_of_norm_sub_lt
+IsCompact.exists_pos_le_norm_apply

No changes to strong technical debt.
No changes to weak technical debt.

Current commit c9f852f03d
Reference commit c21f07790b

This script lives in the mathlib-ci repository. To run it locally, from your mathlib4 directory:

git clone https://github.com/leanprover-community/mathlib-ci.git ../mathlib-ci
../mathlib-ci/scripts/reporting/technical-debt-metrics.py 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 t-analysis Analysis (normed *, calculus) LLM-generated PRs with substantial input from LLMs - review accordingly labels Oct 17, 2026
@ArtificialZeng
ArtificialZeng marked this pull request as ready for review October 17, 2026 17:14
@ArtificialZeng

Copy link
Copy Markdown
Author

i have read

This branch has not been deployed

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

Labels

LLM-generated PRs with substantial input from LLMs - review accordingly 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.

1 participant