Skip to content

feat(LinearAlgebra/Matrix): regularized inverse limit and trace continuity#39735

Draft
allenhaozhu wants to merge 1 commit into
leanprover-community:masterfrom
allenhaozhu:ltfp-matrix-regularized-inv-limit
Draft

feat(LinearAlgebra/Matrix): regularized inverse limit and trace continuity#39735
allenhaozhu wants to merge 1 commit into
leanprover-community:masterfrom
allenhaozhu:ltfp-matrix-regularized-inv-limit

Conversation

@allenhaozhu

Copy link
Copy Markdown

Add Matrix.regularizedInv_mul_tendsto_one and the trace corollaries Matrix.trace_regularizedInv_mul_tendsto and Matrix.trace_regularizedInv_mul_tendsto_card: for a square matrix M over a normed field with det M ≠ 0, the Tikhonov-regularized expression (M + lam • 1)⁻¹ * M tends to the identity matrix as the scalar lam tends to zero, and consequently its trace tends to tr 1 = (Fintype.card d : R). The proofs compose NormedRing.inverse_continuousAt, continuousAt_matrix_inv, Matrix.nonsing_inv_mul, and Continuous.matrix_trace; no new definitions are added. These lemmas are useful in matrix-regularization limit arguments arising in numerical linear algebra (Tikhonov-regularized least squares, ridge regression) and in statistics.


AI-assistance disclosure

Per the Mathlib AI-use policy:

  • Tool. Claude Code (Anthropic) with the Claude Sonnet 4.6 model.
  • Use. I specified the target lemma statements and the proof strategy; the assistant drafted Lean 4 tactic combinations against current Mathlib. I iterated on the proofs, verified each lemma builds under lake build from a clean checkout, and read the final code.
  • Vouching. I have read every declaration in this file and can defend the proofs without further AI assistance. I welcome reviewer feedback on naming, namespace placement, and stylistic alignment with the surrounding Mathlib modules.

…nuity

Add `Matrix.regularizedInv_mul_tendsto_one` and its trace corollaries
`Matrix.trace_regularizedInv_mul_tendsto` and
`Matrix.trace_regularizedInv_mul_tendsto_card` for a square matrix `M`
with nonzero determinant over a normed field: the Tikhonov-regularized
expression `(M + lam • 1)⁻¹ * M` tends to the identity as `lam → 0`,
and its trace tends to `tr 1 = Fintype.card d`.

The proofs compose existing infrastructure (`NormedRing.inverse_continuousAt`,
`continuousAt_matrix_inv`, `Matrix.nonsing_inv_mul`,
`Continuous.matrix_trace`) and add no new definitions.
@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 May 23, 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 github-actions Bot added the t-algebra Algebra (groups, rings, fields, etc) label May 23, 2026
@github-actions

Copy link
Copy Markdown

PR summary f5f0fceeea

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference
Mathlib.LinearAlgebra.Matrix.InverseLimit (new file) 1828

Declarations diff

+ regularizedInv_mul_tendsto_one
+ trace_regularizedInv_mul_tendsto
+ trace_regularizedInv_mul_tendsto_card

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.


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

@grunweg grunweg added the LLM-generated PRs with substantial input from LLMs - review accordingly label May 23, 2026
@mathlib-merge-conflicts mathlib-merge-conflicts Bot added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Jun 5, 2026
@mathlib-merge-conflicts

Copy link
Copy Markdown

This pull request has conflicts, please merge master and resolve them.

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 merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! t-algebra Algebra (groups, rings, fields, etc)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants