Welcome to the mathlib review page. Everybody's help with reviewing is appreciated. Reviewing contributions is important, and everybody is welcome to review pull requests! If you're not sure how, the pull request review guide is there to help you.
This page is the main reviewer-facing queue: if a PR is ready for review, it belongs here. The triage page contains additional triage-oriented views, but it is not the primary review queue.
This page contains tables of
| Number |
Author |
Title |
Description |
Labels |
+/- |
Modified files (first 100) |
📝 |
💬 |
All users who commented or reviewed |
Assignee(s) |
Updated |
Last status change |
total time in review |
blocks |
| 33928 |
jsm28 author:jsm28 |
feat(Combinatorics/Tiling/TileSet): indexed families of tiles |
Define the type `TileSet` for indexed families of tiles (in a discrete context), and some associated definitions (including `symmetryGroup`) and API lemmas.
`TileSet` can be used for tilings of the whole space; for tilings of part of the space; for patches of tiles (extracted from a tiling by considering tiles meeting some set of points, or considered on their own without extracting from a tiling); for multiple tilings (covering the space more than once). In particular, the fact that people study multiple tilings provides a clear justification for using indexed families rather than sets of tiles, and basic definitions and API lemmas generally work for all these different uses of `TileSet` (sometimes with weak constraints such as tiles being finite, nonempty and only having finitely many tiles meeting any point of the space).
Definitions for saying e.g. "this `TileSet` is a tiling of the whole space" are to be included in subsequent files in subsequent PRs.
From AperiodicMonotilesLean.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
460/0 |
Mathlib.lean,Mathlib/Combinatorics/Tiling/TileSet.lean |
2 |
23 |
['Parcly-Taxel', 'b-mehta', 'eric-wieser', 'github-actions', 'jsm28', 'vihdzp'] |
nobody |
174-49558 5 months ago |
280-77995 280 days ago |
299-54823 299 days |
0 |
| 36719 |
NoneMore author:NoneMore |
feat(ModelTheory): add `PartialType` for first-order theories |
This PR adds the definitions of partial types over theories and over parameter sets, and proves several equivalent characterizations.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #36667
[](https://gitpod.io/from-referrer/)
|
t-logic
new-contributor
|
432/17 |
Mathlib.lean,Mathlib/ModelTheory/PartialTypes.lean,Mathlib/ModelTheory/Semantics.lean |
3 |
7 |
['NoneMore', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] |
nobody |
116-47280 3 months ago |
116-47367 116 days ago |
124-27426 124 days |
0 |
| 41583 |
kim-em author:kim-em |
chore: move simple_obj into Functor namespace, golf proofs, tidy docstring |
This PR moves `CategoryTheory.simple_obj` and `CategoryTheory.simple_obj_iff` into the `Functor` namespace (matching their sibling `Functor.simple_of_simple_obj` and enabling dot notation), golf `Functor.simple_obj` and the forward direction of `isSimpleModule_iff_eq_zero_or_injective` via the existing `LinearMap.injective_or_eq_zero`, remove unused `variable` binders in `RingTheory/SimpleRing/DivisionRing.lean`, and fix inverted heading levels and an "an unique" typo in that file's module docstring. The one call site of the renamed lemmas is updated; no deprecated aliases are added since the declarations merged a week ago.
Follow-up to [#41233 (feat(SimpleRing/DivisionRing): simple module is preserved by ModuleCat equivs)](https://github.com/leanprover-community/mathlib4/pull/41233).
🤖 Prepared with Claude Code
|
LLM-generated |
16/19 |
Mathlib/CategoryTheory/Simple.lean,Mathlib/RingTheory/SimpleRing/DivisionRing.lean |
2 |
1 |
['github-actions'] |
nobody |
113-81834 3 months ago |
113-81834 113 days ago |
113-81761 113 days |
0 |
| 42513 |
plp127 author:plp127 |
feat(ModelTheory): typeclass for theory to have nonempty models |
We add a typeclass for a theory to have nonempty models. We provide instances for `nonemptyTheory`, `infiniteTheory`, and `completeTheory`.
---
- [x] depends on: #42508
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic |
51/0 |
Mathlib/ModelTheory/Algebra/Ring/Basic.lean,Mathlib/ModelTheory/Semantics.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
94-8598 3 months ago |
94-8669 94 days ago |
94-17552 94 days |
1 |
| 42639 |
Raph-DG author:Raph-DG |
feat(Order): krullDimLE characterisation |
In this PR, we show that a preorder has krull dim at most n if and only if every element with coheight greater than n is minimal (+ the dual version and some small corollaries).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
42/0 |
Mathlib/Order/KrullDimension.lean |
1 |
2 |
['github-actions'] |
nobody |
89-23175 2 months ago |
89-23264 89 days ago |
89-23191 89 days |
0 |
| 42718 |
justinhalford author:justinhalford |
feat(Combinatorics/SetFamily): the linear algebra method and the Oddtown theorem |
Adds the basic form of the **linear algebra method** for set families (Babai–Frankl) together with its standard first application, the **Oddtown theorem** (Berlekamp, 1969).
### What's here
- `linearIndependent_of_dotProduct_eq_ite` — a family of vectors whose pairwise dot products form the identity matrix is linearly independent. Stated over an arbitrary field, so it does not rely on positivity; this is the engine of the method.
- `Finset.charVec` — the characteristic vector of a finset, valued in a semiring, with `charVec_apply`.
- `Finset.charVec_dotProduct_charVec` — the dot product of two characteristic vectors is the cardinality of the intersection.
- `Finset.card_le_card_of_odd_card_of_even_card_inter` — **Oddtown**: a family of finsets of odd cardinality, any two of which meet in an even number of elements, has at most `Fintype.card α` members.
### Why
I could not find the linear algebra method anywhere in Mathlib. Searching for `Oddtown`, `Eventown`, Fisher's inequality, `RayChaudhuri` and `FranklWilson` returns nothing, and exactly one file under `Mathlib/Combinatorics/` uses `finrank`/`LinearIndependent` (`SimpleGraph/LapMatrix.lean`, for spectral graph theory). Since the technique underlies a large family of extremal results, the general lemma is stated separately from Oddtown so that Eventown, Fisher's inequality and Ray-Chaudhuri–Wilson can be added on top later.
If this does already exist under a formulation I did not think to search for, I would be glad to be pointed at it.
### Verification
Compiles against `master` (Lean 4.34.0-rc1) with no errors or warnings. `#print axioms` on each of the three results reports only `[propext, Classical.choice, Quot.sound]`. No `sorry`, no new axioms, no `set_option` overrides.
### Disclosure
This file was written with AI assistance (Claude Opus 5) and then checked against the Lean kernel; that is noted in the module docstring as well. Every statement, proof and docstring has been read through by me before submission. Happy to adjust naming, generality or placement to whatever the maintainers prefer.
### Process note
I am a first-time contributor and I am aware the usual convention is to raise a new file on Zulip before opening a PR. Apologies for going in the other order — I am glad to move the discussion to `#mathlib4` if that is preferred, or to close this if the material is not wanted.
---
[](https://gitpod.io/#https://github.com/leanprover-community/mathlib4)
|
t-combinatorics
new-contributor
|
144/0 |
Mathlib.lean,Mathlib/Combinatorics/SetFamily/Oddtown.lean |
2 |
3 |
['D-Thomine', 'github-actions'] |
nobody |
88-13226 2 months ago |
88-17236 88 days ago |
88-17163 88 days |
0 |
| 42540 |
shaikidris author:shaikidris |
feat(Combinatorics): asymptotic / natural density and linear-growth bridge |
Redefines asymptotic / natural density around a shared finite relative-density profile, instead of density along `SummationFilter`s.
* `Set.partialDensity S A b` — proportion of `A ∩ Iio b` in `S`
* `Set.lowerDensity` / `Set.upperDensity` — liminf / limsup of that profile
* `Set.HasDensity` — convergence of the profile; `Set.HasNaturalDensity` — `ℕ` case with `A = univ`
* Basic API: `[0,1]` bounds, empty/univ, finite sets have density `0`, `Finset.range` characterizations
* Drops the filter-parametric layer and the junk-valued `naturalDensity`
* Opt-in `Mathlib.Combinatorics.AsymptoticDensity.LinearGrowth`: exact lower/upper density equalities for the counting function `n ↦ #{x ∈ Finset.range n | x ∈ S}`, with no `LinearGrowth` dependency on the core density module
* Retargets the Schnirelmann TODO to this module; Schnirelmann-density comparison proofs are left for follow-up (the linear-growth bridge is proved here)
AI disclosure: this PR is primarily LLM-generated (OpenAI Codex). I reviewed the design (with review comments feedback), public APIs and edge-cases.
I primarily used these as part of my other project on quantitative descent and I think there is a merit in reusability.
---
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
LLM-generated
|
358/2 |
Mathlib.lean,Mathlib/Combinatorics/AsymptoticDensity.lean,Mathlib/Combinatorics/AsymptoticDensity/LinearGrowth.lean,Mathlib/Combinatorics/Schnirelmann.lean |
4 |
16 |
['D-Thomine', 'b-mehta', 'github-actions', 'jcommelin', 'mathlib-bors', 'shaikidris', 'wwylele'] |
nobody |
84-17088 2 months ago |
84-17148 84 days ago |
93-33015 93 days |
0 |
| 42956 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Walk/Chord): chords of `Walk.map` |
---
Not sure if `Chord.lean` should import `Maps.lean` or vice versa.
Importing both from `Copy.lean` would avoid `large-import`, but I don't think that's right.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
large-import
|
38/2 |
Mathlib/Combinatorics/SimpleGraph/Walk/Chord.lean |
1 |
1 |
['github-actions'] |
nobody |
79-75557 2 months ago |
79-77668 79 days ago |
81-61453 81 days |
0 |
| 40470 |
gasparattila author:gasparattila |
feat(Order/Partition/Finpartition): generalize `atomise` to `GeneralizedBooleanAlgebra` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #40276
[](https://gitpod.io/from-referrer/)
|
t-order |
141/66 |
Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Order/Partition/Finpartition.lean |
2 |
4 |
['gasparattila', 'github-actions', 'mathlib-dependent-issues'] |
nobody |
76-84066 2 months ago |
88-63173 88 days ago |
88-70911 88 days |
0 |
| 40620 |
SnirBroshi author:SnirBroshi |
feat(Order/SuccPred/CompleteLinearOrder): `sSup s = ⊤` iff theorems for `WithTop` |
For a `[ConditionallyCompleteLinearOrderBot α]` with `(s : Set (WithTop α))`:
- `sSup s = ⊤ ↔ ∀ a : α, ∃ b ∈ s, a < b`
- `[NoMaxOrder α] → sSup s = ⊤ ↔ ∀ a : α, ∃ b ∈ s, a ≤ b`
and the matching `iSup` theorems.
These can't be dualized because `ConditionallyCompleteLinearOrderBot` has no dual.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #38612
[](https://gitpod.io/from-referrer/)
|
t-order |
26/0 |
Mathlib/Order/SuccPred/CompleteLinearOrder.lean,Mathlib/Order/WithBot.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
75-57836 2 months ago |
75-57884 75 days ago |
75-60009 75 days |
1 |
| 43123 |
harahu author:harahu |
chore(Testing): tidy markdown headers |
This PR ensures files in `Mathlib/Testing` have one and only one H1 header.
In the cases where the file did not already have an obvious H1 header candidate, a new header was authored by Claude Opus 5.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
5/1 |
Mathlib/Testing/Plausible/Functions.lean,Mathlib/Testing/Plausible/Sampleable.lean,Mathlib/Testing/Plausible/Testable.lean |
3 |
1 |
['github-actions'] |
nobody |
75-21012 2 months ago |
75-21143 75 days ago |
75-21070 75 days |
0 |
| 43258 |
ScottCarnahan author:ScottCarnahan |
feat(Algebra/MonoidAlgebra/PointwiseSMul): add smulAntidiagonal and API |
Given actions of `R` on `V` and `G` on `P`, the `smulAntidiagonal` of `f : MonoidAlgebra R G` and `x : P → V` at `p : P` is the finset in `G × P` whose elements scalar-multiply to `p` and whose components lie in the support of `f` and `x`. This PR defines the `smulAntidiagonal` and shows that convolutional scalar multiplication coincides with monoid algebra multiplication when `V = R` and `P = G`.
---
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
49/0 |
Mathlib/Algebra/MonoidAlgebra/PointwiseSMul.lean |
1 |
1 |
['github-actions'] |
nobody |
69-57583 2 months ago |
69-57635 69 days ago |
70-4881 70 days |
0 |
| 42590 |
AntoineduFresne author:AntoineduFresne |
feat(Order/UpperLower/Closure): the upper and lower closures of a maximal antichain cover the order |
I add `IsMaxAntichain.upperClosure_union_lowerClosure`. It says that the upper and lower closures of a maximal antichain cover the whole order.
I put it right after `ordConnected_iff_upperClosure_inter_lowerClosure`, next to `upperClosure_inter_lowerClosure`, which seems the right spot.
The lemma is about antichains, so `Mathlib/Order/Antichain.lean` would have looked like the natural file to modify, but `upperClosure` is defined in `Mathlib/Order/UpperLower/Closure.lean`, which imports `Mathlib.Order.Interval.Set.OrdConnected`, which imports `Mathlib.Order.Antichain`. So to avoid an import loop I put it in `Closure.lean`.
I split this out of #40741, where a reviewer suggested it. Nothing in that PR uses the lemma.
|
t-order
new-contributor
|
13/0 |
Mathlib/Order/Antichain.lean,Mathlib/Order/UpperLower/Closure.lean |
2 |
12 |
['AntoineduFresne', 'Ruben-VandeVelde', 'SnirBroshi', 'github-actions', 'tdwag123'] |
nobody |
69-22927 2 months ago |
69-22994 69 days ago |
85-8233 85 days |
0 |
| 43095 |
plp127 author:plp127 |
chore(Data/PFunctor): reduce defeq abuse around `PFunctor.W` |
Reduce the defeq abuse around `PFunctor.W` by adding some API.
---
- [x] depends on: #43056
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data
tech debt
|
88/52 |
Mathlib/Data/PFunctor/Multivariate/W.lean,Mathlib/Data/PFunctor/Univariate/Basic.lean,Mathlib/Data/QPF/Univariate/Basic.lean |
3 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
66-70636 2 months ago |
66-70779 66 days ago |
66-80773 66 days |
0 |
| 43407 |
thomaskwaring author:thomaskwaring |
feat(Order/Hom/CompleteLattice): order adjoints for `{sSup/sInf}Hom` |
This PR defines the order adjoint of a `sSup` or `sInf` preserving function, which defines an equivalence `sSupHom α β ≃ sInfHom β α`, and an order isomorphism `sSupHom α β ≃o (sInfHom β α)ᵒᵈ` (plus duals).
---
I'm not 100% certain on the naming here, and would very much appreciate any advice & help with `to_dual` — an alternative option is `upperAdj` and `lowerAdj`, which `to_dual`-ises automatically.
[](https://gitpod.io/from-referrer/)
|
t-order |
69/0 |
Mathlib/Order/Hom/CompleteLattice.lean |
1 |
4 |
['SnirBroshi', 'github-actions', 'thomaskwaring'] |
nobody |
66-13023 2 months ago |
66-67057 66 days ago |
66-76456 66 days |
0 |
| 43461 |
mcdoll author:mcdoll |
feat(Analysis/SchwartzMap): missing lemmas about inverse Fourier transform |
Adds lemmas that are already present for the Fourier transform, plus a pair of lemmas for the relation to the `L1` Fourier transform.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis |
54/0 |
Mathlib/Analysis/Distribution/SchwartzSpace/Fourier.lean |
1 |
1 |
['github-actions'] |
nobody |
65-10762 2 months ago |
65-11602 65 days ago |
65-11529 65 days |
1 |
| 43464 |
gasparattila author:gasparattila |
fix(LinearAlgebra/Projectivization/Subspace): fix non-defeq `Min` instances |
The `CompleteLattice` instance of `Projectivization.Subspace` is currently defined using `completeLatticeOfInf`, which conflicts with the `Min` instance defined earlier. This PR fixes this by overriding the `inf` field. To avoid possible issues with `⊥` and `⊤`, they are also redefined to have good defeqs.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
17/20 |
Mathlib/LinearAlgebra/Projectivization/Subspace.lean |
1 |
1 |
['github-actions'] |
nobody |
65-7001 2 months ago |
65-7256 65 days ago |
65-7183 65 days |
0 |
| 43478 |
plp127 author:plp127 |
feat(Data/PFunctor): pointfree lemmas for map |
Prove `PFunctor.map_id` and `PFunctor.map_comp_map`, pointfree analogues of `PFunctor.id_map` and `PFunctor.map_map`. The names are chosen to match the corresponding lemmas for `LawfulFunctor`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
5/0 |
Mathlib/Data/PFunctor/Univariate/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
64-40362 2 months ago |
64-40569 64 days ago |
64-40496 64 days |
0 |
| 43507 |
SnirBroshi author:SnirBroshi |
fix(Combinatorics/SimpleGraph): namespace `completeBipartiteGraph` under `SimpleGraph` |
and fix the names of `CompleteBipartiteGraph.bicoloring` and `CompleteBipartiteGraph.chromaticNumber`.
---
Moved the `namespace SimpleGraph` in `Basic.lean` to right after the definition of `SimpleGraph`, to avoid putting things outside of the namespace.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
29/20 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Vertex.lean |
2 |
1 |
['github-actions'] |
nobody |
63-31608 2 months ago |
63-31699 63 days ago |
63-45062 63 days |
0 |
| 43360 |
metakunt author:metakunt |
feat(RingTheory/AdjoinRoot/MapCyclotomic): define algebra isomorphism isAdjoinRoot for roots of unity |
From #43343
Section is deliberately not exposed. I think the API developed should be enough. But if needed it can always be exposed later. |
t-ring-theory
LLM-generated
|
111/7 |
Mathlib.lean,Mathlib/RingTheory/AdjoinRoot/MapCyclotomic.lean,Mathlib/RingTheory/IsAdjoinRoot.lean |
3 |
19 |
['github-actions', 'mathlib-bors', 'metakunt', 'tb65536'] |
nobody |
62-78218 2 months ago |
62-78784 62 days ago |
64-67897 64 days |
0 |
| 43401 |
thomaskwaring author:thomaskwaring |
feat(Order): counterparts of `iSupIndep.disjoint_biSup_biSup{'}` for `sSup` |
Transfer `iSupIndep.disjoint_biSup_biSup'` and `iSupIndep.disjoint_biSup_biSup` to `sSupIndep.disjoint_sSup_sSup'` and `sSupIndep.disjoint_sSup_sSup`. Also add the supporting rewrite lemma `biSup_preimage`, roughly dual to `sSup_image`.
---
Used downstream for working with `Partition`, whose fields are stated in terms of `sSupIndep`.
[](https://gitpod.io/from-referrer/)
|
t-order |
22/0 |
Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/SupIndep.lean |
3 |
5 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
61-26231 2 months ago |
61-26369 61 days ago |
66-22576 66 days |
0 |
| 42724 |
kim-em author:kim-em |
feat(RingTheory/Polynomial/Hermite): derivatives and the generating function |
This PR adds the classical derivative identities, three-term recurrence, parity, and exponential generating function for the probabilists' Hermite polynomials. The algebraic results include `derivative_hermite`, `iterate_derivative_hermite`, `hermite_add_two`, and polynomial and evaluated forms of parity; the analytic results prove `∑' n, Hₙ(x) * tⁿ / n! = exp (x * t - t² / 2)` in complex and real `HasSum` forms, with a real `tsum` corollary. The algebraic and analytic developments live in separate files.
This contribution originated in the [Tau Ceti project](https://github.com/TauCetiProject/TauCeti), an AI-written mathematics repository; it was adapted for Mathlib with Claude Code and reviewed with OpenAI Codex, supervised by Kim Morrison.
:robot: Prepared with OpenAI Codex
|
t-ring-theory
LLM-generated
TauCeti
|
259/0 |
Mathlib.lean,Mathlib/RingTheory/Polynomial/Hermite/Derivative.lean,Mathlib/RingTheory/Polynomial/Hermite/GeneratingFunction.lean |
3 |
3 |
['b-mehta', 'github-actions', 'kim-em'] |
nobody |
60-35536 1 month ago |
67-42374 67 days ago |
67-42301 67 days |
0 |
| 43672 |
javgomzar author:javgomzar |
chore(LinearAlgebra/Matrix): add push tags to transpose lemmas |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
6/5 |
Mathlib/LinearAlgebra/Matrix/Defs.lean |
1 |
3 |
['github-actions'] |
nobody |
60-1082 1 month ago |
60-1245 60 days ago |
60-1172 60 days |
0 |
| 42424 |
lydia-schiff author:lydia-schiff |
feat(Order/Partition/Finpartition): transport a set partition along a type equivalence |
- Adds `Finpartition.congr` to transport a `Finpartition` along a type equivalence.
- We can use `Finpartition.map` if we have an order-iso, and the equivalence induces one via the new `Finset.congrOrderIso` which is based on `Equiv.finsetCongr`.
- Includes parts, card, refl, and round-trip lemmas.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- `Equiv.finsetCongr` already gives us an equivalence of Finsets, so the new `Finset.congrOrderIso` just adds that the power-set lattice structure is also preserved.
- Includes lemmas showing that the parts are e-images of the old ones, card is preserved, and refl + round-trip for the equivalence.
- The cardinality lemma was the original motivation from some work on Stirling numbers, but I thought that `Finpartition.congr` and `Finset.congrOrderIso` seemed reusable and hopefully useful in their own right, and thought it would make a good first contribution.
- Zulip thread about naming and placement [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60Finpartition.2Econgr.60.20.E2.80.94.20naming.20.26.20placement)
- I used Claude Opus 4.8 to help draft the proofs and explore the API. I have spent several weeks making sure I understand and can justify every line and I've learned a lot which is great.
[](https://gitpod.io/from-referrer/)
|
t-order
LLM-generated
new-contributor
|
61/0 |
Mathlib/Data/Finset/Image.lean,Mathlib/Order/Partition/Finpartition.lean |
2 |
6 |
['github-actions', 'lydia-schiff', 'mathlib-merge-conflicts'] |
nobody |
59-70639 1 month ago |
59-70739 59 days ago |
86-48880 86 days |
0 |
| 43702 |
theebayuser author:theebayuser |
feat(LinearAlgebra/AffineSpace): add Varignon's theorem |
Hello, this PR introduces Varignon's theorem.
Varignon's theorem states that the midpoints of the sides of a quadrilateral form a parallelogram. More precisely, `midpoint_midpoint_midpoint_rotate` states: the two diagonals of the midpoint quadrilateral have the same midpoint.
This PR was written with AI assistance (Claude Code)
|
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
22/2 |
Mathlib/LinearAlgebra/AffineSpace/Midpoint.lean,docs/1000.yaml |
2 |
7 |
['github-actions', 'theebayuser', 'wwylele'] |
nobody |
58-81056 1 month ago |
58-81214 58 days ago |
59-35292 59 days |
0 |
| 43766 |
hawkrobe author:hawkrobe |
feat(LinearAlgebra/SymmetricAlgebra): functoriality |
---
Add `SymmetricAlgebra` functoriality (parallel to `TensorAlgebra` and `ExteriorAlgebra`)
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
31/0 |
Mathlib/LinearAlgebra/SymmetricAlgebra/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
57-22496 1 month ago |
57-22710 57 days ago |
57-22637 57 days |
0 |
| 43767 |
hawkrobe author:hawkrobe |
feat(LinearAlgebra/SymmetricAlgebra): symmetric algebra is graded |
---
I also followed `TensorAlgebra` and `ExteriorAlgebra` here.
I used Claude to initialize the proof.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
55/0 |
Mathlib.lean,Mathlib/LinearAlgebra/SymmetricAlgebra/Grading.lean |
2 |
1 |
['github-actions'] |
nobody |
57-21116 1 month ago |
57-21329 57 days ago |
57-21256 57 days |
0 |
| 43781 |
vlad902 author:vlad902 |
chore(AffineSpace/Independent): remove two `backward.isDefEq.respectTransparency` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
tech debt
label:t-algebra$ |
3/7 |
Mathlib/LinearAlgebra/AffineSpace/Independent.lean |
1 |
1 |
['github-actions'] |
nobody |
56-67090 1 month ago |
56-67141 56 days ago |
56-67068 56 days |
0 |
| 40782 |
tb65536 author:tb65536 |
feat(Combinatorics/SimpleGraph/Coloring/EdgeLabeling): add predicates for monochromatic subsets |
This PR adds predicates for monochromatic subsets, in preparation for Ramsey theory.
Co-authored-by: Bhavik Mehta <bhavikmehta8@gmail.com>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
143/0 |
Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeLabeling.lean |
1 |
28 |
['SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'tb65536'] |
nobody |
55-69611 1 month ago |
55-69851 55 days ago |
132-16073 132 days |
0 |
| 43820 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Maps): dualize `Embedding.completeGraph` and `Copy.topEmbedding` |
Also `Copy.topEmbedding` doesn't need a `Copy`, it can use a `Hom`, unlike its dual `Copy.botEmbedding`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
115/15 |
Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean |
3 |
1 |
['github-actions'] |
nobody |
55-47553 1 month ago |
55-47769 55 days ago |
55-48384 55 days |
0 |
| 38434 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Maps): `map` lemmas about support/top/bot |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #38432
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
16/0 |
Mathlib/Combinatorics/SimpleGraph/Maps.lean |
1 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
55-40197 1 month ago |
55-40482 55 days ago |
59-72035 59 days |
0 |
| 42960 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Trails): an Eulerian walk is chordless |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
4/0 |
Mathlib/Combinatorics/SimpleGraph/Trails.lean |
1 |
4 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
55-39238 1 month ago |
55-39488 55 days ago |
78-7019 78 days |
0 |
| 38499 |
SnirBroshi author:SnirBroshi |
feat(Order/Hom/Basic): `Relation.Map`/`Function.bicompl` form an order isomorphism between relations |
For injective functions `f` and `g`, `Relation.Map · f g` is an order embedding between relations.
For surjective functions `f` and `g`, `Function.bicompl · f g` is an order embedding between relations.
For bijective functions `f` and `g`, `Relation.Map · f g` and `Function.bicompl · f g` form an order isomorphism between relations.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #38432
[](https://gitpod.io/from-referrer/)
|
t-order |
46/0 |
Mathlib/Order/Hom/Basic.lean |
1 |
7 |
['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'plp127', 'wwylele'] |
nobody |
55-35232 1 month ago |
55-35343 55 days ago |
63-71610 63 days |
0 |
| 43793 |
justus-springer author:justus-springer |
doc(Algebra/Group/SelfInv): extend module docstring |
Follow-up to #42611. Explains the original motivation for this.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
7/0 |
Mathlib/Algebra/Group/SelfInv.lean |
1 |
8 |
['SnirBroshi', 'YaelDillies', 'eric-wieser', 'github-actions', 'justus-springer'] |
nobody |
55-29996 1 month ago |
55-75982 55 days ago |
55-82257 55 days |
0 |
| 37878 |
YaelDillies author:YaelDillies |
chore(Combinatorics/SimpleGraph): avoid structure relation predicates |
Relation predicates used to be `def`s over a `forall`, which was optimal for usability in fields of other structures. This changed in #35591 and #35192 as a byproduct of reducing apparent code duplication. Unfortunately, the usability issue was overlooked.
This PR restores usability by dropping the use of those relation classes that are `structure`s, ie `Std.Irrefl` and `Std.Transitive`.
---
- [x] depends on: #38554
I would also be happy to revert #35591 and #35192 since this demonstrates a good use case for the `def` versions of the relation predicates.
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
111/117 |
Archive/Wiedijk100Theorems/Konigsberg.lean,Mathlib/Combinatorics/Graph/Simple.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Dart.lean,Mathlib/Combinatorics/SimpleGraph/Density.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean,Mathlib/Combinatorics/SimpleGraph/Hall.lean,Mathlib/Combinatorics/SimpleGraph/LineGraph.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Prod.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Uniform.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Sum.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Tripartite.lean,Mathlib/ModelTheory/Graph.lean,Mathlib/Order/Cover.lean,Mathlib/Order/RelClasses.lean |
25 |
27 |
['SnirBroshi', 'Vierkantor', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
55-5115 1 month ago |
55-5175 55 days ago |
159-59884 159 days |
0 |
| 41304 |
plp127 author:plp127 |
chore(Data/Set/Lattice): `Sort*` polymorphism |
Generalize some theorems from `Type*` to `Sort*`.
---
- [x] depends on: #39857
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
30/25 |
Mathlib/Data/Set/Lattice/Bounded.lean,Mathlib/Data/Set/Lattice/Indexed.lean |
2 |
6 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
54-65919 1 month ago |
54-65966 54 days ago |
54-74851 54 days |
0 |
| 43819 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/DeleteEdges): morphisms between `deleteEdges` graphs |
Accepting two sets and a proof of `Sym2.map f ⁻¹' t ⊆ s` lets us use the morphisms with `Set.preimage` or `Set.image` or anything else that's convenient.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
74/1 |
Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/DeleteEdges.lean |
2 |
5 |
['SnirBroshi', 'b-mehta', 'github-actions'] |
nobody |
54-26100 1 month ago |
54-26187 54 days ago |
54-69483 54 days |
2 |
| 43861 |
SnirBroshi author:SnirBroshi |
chore(Algebra/Order/Achimedean/Class): use `inferInstanceAs%` for `LinearOrder MulArchimedeanClass` |
---
The motivation is the `TODO`; I don't know if core's `inferInstanceAs` elaborator would be better here.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
1/2 |
Mathlib/Algebra/Order/Archimedean/Class.lean |
1 |
1 |
['github-actions'] |
nobody |
54-24663 1 month ago |
54-24890 54 days ago |
54-24817 54 days |
0 |
| 43770 |
vlad902 author:vlad902 |
feat(AffineSpace/FiniteDimensional): generalize typeclasses |
A number of theorems/instances are stated at the top of the file for `DivisionRing`, but the assumption could be weakened to `Ring` with some theorems further requiring
`Nontrivial`/`StrongRankCondition`/`OrzechProperty`. Weakening to `Ring` also requires renaming some `FiniteDimensional` assumptions to `Module.Finite`.
This PR weakens moves around some theorems/instances to fit their new sections assumptions and renames some theorems/instances to match their new conclusions. No theorems are added/removed.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
164/106 |
Mathlib/LinearAlgebra/AffineSpace/FiniteDimensional.lean |
1 |
7 |
['github-actions', 'grunweg', 'leanprover-radar', 'mathlib-merge-conflicts', 'vlad902'] |
nobody |
52-78473 1 month ago |
52-78556 52 days ago |
56-83084 56 days |
0 |
| 42670 |
harahu author:harahu |
chore(Combinatorics): tidy markdown headers |
Ensure files in `Mathlib/Combinatorics` have one and only one H1 header, thus enforcing the style guide.
Newly created headers in this PR were authored by Claude Opus 5.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
11/5 |
Mathlib/Combinatorics/Enumerative/Catalan/Tree.lean,Mathlib/Combinatorics/Quiver/ConnectedComponent.lean,Mathlib/Combinatorics/Quiver/Subquiver.lean,Mathlib/Combinatorics/Quiver/Symmetric.lean,Mathlib/Combinatorics/SimpleGraph/Cayley.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean |
6 |
1 |
['Multramate', 'github-actions'] |
nobody |
52-77887 1 month ago |
89-14586 89 days ago |
89-15245 89 days |
0 |
| 43957 |
thomaskwaring author:thomaskwaring |
feat(Order/Hom): congruence of order homs by order isos |
Order isomorphisms between domains and codomains induce equivalences between types of order homomorphisms: `{Sup/Inf/Lattice/SupBot/InfTop/BoundedLattice/sSup/sInf/Frame/CompleteLattice}Hom`.
[](https://gitpod.io/from-referrer/)
|
t-order |
78/0 |
Mathlib/Order/Hom/BoundedLattice.lean,Mathlib/Order/Hom/CompleteLattice.lean,Mathlib/Order/Hom/Lattice.lean |
3 |
1 |
['github-actions'] |
nobody |
51-17419 1 month ago |
51-18086 51 days ago |
51-18013 51 days |
1 |
| 43963 |
vihdzp author:vihdzp |
chore(Topology/CantorBendixson): minor cleanup |
`CantorBendixson` is not a type, and the names in this file shouldn't clash with anything else, so we un-namespace the material in this file.
We also rewrap some lines and perform minor golfs.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
I haven't added deprecations since the material here is quite new, but I can add them if they're nevertheless wanted.
[](https://gitpod.io/from-referrer/)
|
t-topology |
18/38 |
Mathlib/Topology/CantorBendixson.lean |
1 |
1 |
['github-actions'] |
nobody |
51-10440 1 month ago |
51-11189 51 days ago |
51-11116 51 days |
0 |
| 43901 |
vlad902 author:vlad902 |
feat(AffineSpace): characterize affine subspaces of dimension 0 and 1 |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry |
94/10 |
Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/LinearAlgebra/AffineSpace/Dimension.lean,Mathlib/Order/WithBot.lean |
3 |
2 |
['github-actions', 'vlad902'] |
nobody |
50-79394 1 month ago |
52-11345 52 days ago |
52-54757 52 days |
0 |
| 42136 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): API for `labelledCopyCount` |
Add API for `SimpleGraph.labelledCopyCount`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
63/1 |
Mathlib/Combinatorics/SimpleGraph/Copy.lean |
1 |
1 |
['github-actions'] |
nobody |
50-17496 1 month ago |
50-18281 50 days ago |
105-6061 105 days |
1 |
| 42137 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): bounds for `extremalNumber` and `turanDensity` |
Add bounds for `extremalNumber` and `turanDensity`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
35/0 |
Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/TuranDensity.lean |
2 |
7 |
['SnirBroshi', 'b-mehta', 'github-actions', 'mitchell-horner'] |
nobody |
50-16899 1 month ago |
50-17595 50 days ago |
105-4327 105 days |
1 |
| 34078 |
joneugster author:joneugster |
feat(scripts/autolabel): add more label dependencies |
Add more label dependencies.
---
- [x] depends on: #34948
- [x] depends on: #34949
- [x] depends on: #34066
- [x] depends on: #34079
- [x] depends on: #34677
- [x] depends on: #34678
- [x] depends on: #34952
- [x] depends on: #36242
[](https://gitpod.io/from-referrer/)
|
CI |
31/11 |
scripts/autolabel.lean |
1 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
49-83443 1 month ago |
82-57825 82 days ago |
82-57752 82 days |
0 |
| 29744 |
espottesmith author:espottesmith |
feat(Combinatorics): define directed hypergraphs |
This PR defines directed hypergraphs:
```
@[ext]
structure DiHypergraph (α : Type*) where
/-- The vertex set -/
vertexSet : Set α
/-- The edge set -/
edgeSet : Set ((Set α) × (Set α))
/-- Each edge is a pair (s, d), where s ⊆ vertexSet and d ⊆ vertexSet -/
edge_src_dst_isSubset_vertexSet' : ∀ ⦃e⦄, e ∈ edgeSet → e.1 ⊆ vertexSet ∧ e.2 ⊆ vertexSet
```
Additional definitions:
- tail/head stars and negative/positive stars
- some special cases (B-Graph, F-Graph, BF-Graph, and what I'm calling a "non-endless" dihypergraph, where neither the source/tail nor the destination/head are empty)
- Vertex and (hyper)edge adjacency
- isolated vertices
- empty and nonempty dihypergraphs
The design employed here is based off of #28613, but this PR does not depend on that one.
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
To indicate co-authors, include at least one commit authored by each
co-author among the commits in the pull request. If necessary, you may
create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
When merging, all the commits will be squashed into a single commit listing all co-authors.
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
290/0 |
Mathlib.lean,Mathlib/Combinatorics/DiHypergraph/Basic.lean |
2 |
12 |
['SnirBroshi', 'b-mehta', 'espottesmith', 'github-actions', 'mathlib4-merge-conflict-bot', 'pimotte'] |
nobody |
49-76776 1 month ago |
139-75399 139 days ago |
277-81749 277 days |
1 |
| 43780 |
SashaIr author:SashaIr |
feat: q-analogs |
An implementation of q-analogs, q-binomials, and counting results.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
965/0 |
Mathlib.lean,Mathlib/Combinatorics/QAnalog/Basic.lean,Mathlib/Combinatorics/QAnalog/Binomial.lean,Mathlib/Combinatorics/QAnalog/Counting.lean,Mathlib/Combinatorics/QAnalog/Subspace.lean |
5 |
7 |
['SashaIr', 'SnirBroshi', 'b-mehta', 'github-actions'] |
nobody |
49-67519 1 month ago |
49-67572 49 days ago |
56-61979 56 days |
0 |
| 38334 |
8e7 author:8e7 |
feat(Combinatorics/SimpleGraph/TreeDecomp): define tree decompositions |
Add definition for tree decompositions on simple graphs. Define the tree width of a simple graph and prove basic statements and conversions.
```lean
structure TreeDecomp (G : SimpleGraph V) (W : Type) where
/-- The set of vertices in each bag. -/
bag : W → Finset V
/-- The graph adjacency relation of bags. -/
tree : SimpleGraph W
/-- T must be a tree. -/
isTree : IsTree tree
/-- All vertices in G must appear in some bag. -/
vertexCover : ∀ v : V, ∃ w : W, v ∈ bag w
/-- For any edge (u, v) in G, there is a bag containing both u and v. -/
edgeCover ⦃u v : V⦄ : G.Adj u v → ∃ w : W, u ∈ bag w ∧ v ∈ bag w
/-- For any vertex v in G, the set of bags that contain v is preconnected. -/
connectedBags : ∀ v : V, (tree.induce ({w | v ∈ bag w})).Preconnected
```
AI Usage: Some proofs are written with the help of Claude Code, and everything has been manually reviewed.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #38027
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
LLM-generated
|
395/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/TreeDecomp.lean |
2 |
42 |
['8e7', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
49-49560 1 month ago |
106-36415 106 days ago |
130-18323 130 days |
1 |
| 44027 |
kim-em author:kim-em |
chore(RingTheory/Unramified/LocalRing): explain the backward.inferInstanceAs.wrap.data option |
This PR adds a comment explaining why `FormallyUnramified.isField_quotient_map_maximalIdeal` needs `set_option backward.inferInstanceAs.wrap.data false`, and that the option can be removed once https://github.com/leanprover/lean4/issues/13408 (Kernel error for `inferInstanceAs` with let declarations) is fixed. A fix is proposed in https://github.com/leanprover/lean4/pull/15245.
🤖 Prepared with Claude Code |
t-ring-theory |
3/0 |
Mathlib/RingTheory/Unramified/LocalRing.lean |
1 |
1 |
['github-actions'] |
nobody |
49-31007 1 month ago |
49-31728 49 days ago |
49-31655 49 days |
0 |
| 43953 |
hasjack author:hasjack |
feat(Combinatorics/SimpleGraph/LapMatrix): bound Laplacian eigenvalues by `|V|` |
Prove that every Laplacian eigenvalue of a finite simple graph is at most
the number of vertices, via comparison of the Rayleigh quotient with the
complete graph. Also record the underlying quadratic-form bound
`xᵀ L x ≤ |V| · ‖x‖²`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---` , otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
Adds `dotProduct_mulVec_lapMatrix_le_card` and `eigenvalues_lapMatrix_le_card`
in `LapMatrix.lean` only. The claim is the uniform bound `λ ≤ |V|` for every
indexed eigenvalue; it does not assert `|V| ∈ spectrum` for every graph.
Searched existing LapMatrix API (PSD, `zero_mem_spectrum_lapMatrix`,
`lapMatrix_top`) and did not find a card upper bound under another name.
Happy to rename if a preferred lemma already exists. |
new-contributor
t-combinatorics
LLM-generated
|
37/1 |
Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Data/Matrix/Mul.lean |
2 |
61 |
['Parcly-Taxel', 'SnirBroshi', 'github-actions', 'hasjack'] |
nobody |
49-7472 1 month ago |
49-8001 49 days ago |
51-32083 51 days |
0 |
| 43187 |
gaetanserre author:gaetanserre |
chore: tag some measurability lemmas with `fun_prop` |
Tag some measurability lemma with `fun_prop`. These lemmas were not tagged most likely because one of the subgoals was of the form `MeasurableSet ...`. However, tagging them and using `fun_prop (disch := measurability)` can close goals that require these lemmas.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
3/0 |
Mathlib/MeasureTheory/MeasurableSpace/Basic.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/Probability/Kernel/Defs.lean |
3 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
48-79137 1 month ago |
48-80004 48 days ago |
72-70715 72 days |
0 |
| 43785 |
kim-em author:kim-em |
chore: point Order/Atoms deprecations at the right replacements |
This PR corrects the replacement named by three deprecations in `Mathlib/Order/Atoms.lean`. `IsStronglyCoatomic.of_wellFounded_gt`, `isAtomic_of_orderBot_wellFounded_lt` and `isCoatomic_of_orderTop_gt_wellFounded` all named `instIsStronglyAtomicOfWellFoundedLT`, which is neither coatomic nor the `IsAtomic`/`IsCoatomic` instance a user of those lemmas wants; they now name `instIsStronglyCoatomicOfWellFoundedGT`, `IsStronglyAtomic.isAtomic` and `IsStronglyCoatomic.toIsCoatomic`.
A Lean nightly has grown a check comparing the type of a deprecated declaration against its replacement, which is how these surfaced.
🤖 Prepared with Claude Code
https://claude.ai/code/session_01FEhDfMiCzEAX4QJdrALfQC |
t-order |
3/3 |
Mathlib/Order/Atoms.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
48-45982 1 month ago |
48-46721 48 days ago |
50-58327 50 days |
0 |
| 41541 |
felixpernegger author:felixpernegger |
chore: prefer `classical` over `open scoped Classical` in proofs |
In #41423 it came up that it is preferable to use `classical` in proofs instead of `open (scoped) Classical`, as its slightly easier to maintain. This PR replaces all such occurences where it can be reasonably done.
This is likely my last PR about this topic.
(I used Claude to fix some git issue, which is why it shows up in the commit)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
111/58 |
Mathlib/Basic/Logic/Basic.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Defs/PartialOrder.lean |
4 |
5 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
48-24808 1 month ago |
48-26579 48 days ago |
93-71632 93 days |
0 |
| 43465 |
TJHeeringa author:TJHeeringa |
feat(Analysis/InnerProductSpace/Reproducing): add bilinearform for Mercer's theorem |
Mercer's theorem provides a spectral representation to kernels satisfying an integrability condition. The proof builds on a Hilbert-Schmidt operator. This PR introduces the bilinear form used to define that operator.
---
PR #42003 introduces the corresponding integral operator.
AI:
Claude and Mistral have helped me get up to speed with how to do the measurability proofs in lean.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis |
157/0 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Reproducing/Mercer.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
48-5556 1 month ago |
60-28243 60 days ago |
63-85815 63 days |
1 |
| 44099 |
xiahongchi author:xiahongchi |
feat: maximize concave functions at stationary points |
Adds two first-order maximum principles for real concave functions:
* `ConcaveOn.le_of_hasDerivAt_eq_zero`
* `ConcaveOn.isGreatest_of_hasDerivAt_eq_zero`
They use the existing secant-slope bounds and require differentiability only at the candidate maximizer.
Tested by compiling `Mathlib/Analysis/Convex/Deriv.lean` locally. |
t-analysis
new-contributor
|
31/0 |
Mathlib/Analysis/Convex/Deriv.lean |
1 |
3 |
['github-actions'] |
nobody |
47-50326 1 month ago |
47-50913 47 days ago |
47-50840 47 days |
0 |
| 44103 |
xiahongchi author:xiahongchi |
feat: equate derivatives of ordered functions at contact points |
This adds Fréchet-derivative and scalar-derivative lemmas saying that two everywhere-ordered real-valued functions have equal derivatives wherever they agree. The proof applies Fermat’s theorem to their nonnegative difference.
This packages and generalizes the scalar envelope argument from Bryan Sanchez’s `NSBlwChain/Caveats/C2_Envelope.lean` at `Brsanch/ns-lean-proofs@b73f537d1646165fbdc0993c5b2e223355dc3469` (MIT).
The new declarations elaborate under the released toolchain; compiling the current master file there reports only one pre-existing current-Lean field-notation incompatibility before the new code. Current-toolchain CI is authoritative. |
t-analysis
new-contributor
|
20/0 |
Mathlib/Analysis/Calculus/LocalExtr/Basic.lean |
1 |
2 |
['github-actions'] |
nobody |
47-48641 1 month ago |
47-49098 47 days ago |
47-49025 47 days |
0 |
| 44064 |
mcdoll author:mcdoll |
chore: tag definitions with `fun_prop` |
No new lemmas are being tagged yet, just the definitions.
To fix the build, some `measurability` attributes had to be changed to `fun_prop` and a test had to be adjusted.
Only slightly controversial change could be the import of `FunProp` in `Mathlib/Logic/Function/Defs.lean`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
large-import |
30/9 |
Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/Calculus/ContDiffHolder/Pointwise.lean,Mathlib/Logic/Function/Defs.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Defs.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/AEStronglyMeasurable.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/Tactic/FunProp.lean,Mathlib/Topology/EMetricSpace/Lipschitz.lean,Mathlib/Topology/MetricSpace/Holder.lean,MathlibTest/FunPropMinimal.lean |
11 |
1 |
['github-actions'] |
nobody |
47-35630 1 month ago |
47-37173 47 days ago |
47-43859 47 days |
0 |
| 44138 |
pechersky author:pechersky |
chore(Topology/Instances/PNat): move topology into its own file, explicitly DiscreteTopology |
Previously, the topology on `PNat` was a by-product of the "subspace metric space" instance, as a subtype of `Nat`. Instead, we now declare the topology independently as the "bot" discrete topology, prior to the `MetricSpace` declaration, and then show the topology agrees to the "subspace metric space" one.
In the future, we will be able to move the topology declaration even earlier, to where the topologies of `Nat` and `Int` live.
Factored out #40785, as requested by
https://github.com/leanprover-community/mathlib4/pull/40785/changes#r3574283818
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Could be somewhat cleaner if #43876 is merged. |
t-topology |
19/5 |
Mathlib/Topology/Instances/PNat.lean |
1 |
4 |
['Ruben-VandeVelde', 'github-actions', 'pechersky'] |
nobody |
46-71149 1 month ago |
46-80716 46 days ago |
46-80643 46 days |
1 |
| 41565 |
grunweg author:grunweg |
chore: specify doc-strings of auto-generated additive declarations di… |
…rectly
There's no need for add_decl_doc any more.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
64/107 |
Mathlib/Algebra/Category/Grp/Basic.lean,Mathlib/Algebra/Group/Action/Basic.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/Hom.lean,Mathlib/Algebra/Group/Hom/Basic.lean,Mathlib/Algebra/Group/Subsemigroup/Basic.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/GroupTheory/Finiteness.lean,Mathlib/MeasureTheory/Group/Action.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/Topology/Algebra/ConstMulAction.lean |
12 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
46-55009 1 month ago |
46-55243 46 days ago |
67-4133 67 days |
0 |
| 43099 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph): `IsSubwalk` is a partial order and more relation properties |
---
The instances for `Symm` and `Irrefl` let us use `symm`/`irrefl` and any other mathlib theorems that expect these properties as typeclass arguments.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
31/4 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Subwalks.lean |
6 |
1 |
['github-actions', 'vlad902'] |
nobody |
45-75418 1 month ago |
45-75889 45 days ago |
75-20210 75 days |
1 |
| 44136 |
SnirBroshi author:SnirBroshi |
chore: clean up a few `have : Std.Symm`s |
and some other relation properties
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
10/26 |
Mathlib/Algebra/Group/Basic.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Data/Finset/NoncommProd.lean,Mathlib/Data/List/MinMax.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/NumberTheory/Divisors.lean,Mathlib/Order/Preorder/Chain.lean,Mathlib/Topology/NatEmbedding.lean |
9 |
1 |
['Parcly-Taxel', 'github-actions'] |
nobody |
45-75387 1 month ago |
46-78221 46 days ago |
46-78148 46 days |
0 |
| 43197 |
SnirBroshi author:SnirBroshi |
feat(Order/Basic): relation properties of complement relations |
The complement turns `Refl` into `Irrefl`, `Total` into `Asymm`, and `Trichotomous` into `Antisymm`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
60/14 |
Mathlib/Basic/Rel/Separated.lean,Mathlib/Order/Antichain.lean,Mathlib/Order/Basic.lean,Mathlib/Topology/MetricSpace/MetricSeparated.lean |
4 |
5 |
['SnirBroshi', 'chenson2018', 'github-actions'] |
nobody |
45-71464 1 month ago |
45-72079 45 days ago |
71-24862 71 days |
0 |
| 43287 |
SnirBroshi author:SnirBroshi |
chore: avoid `Subrelation` where possible |
Following the trend of avoiding `Subrelation` (e.g. #41450) in favor of `_ ≤ _`, this replaces most of its uses in Mathlib.
---
The only ones remaining are `subrelation_iff_le` (`Subrelation r s ↔ r ≤ s`) / `Acc.anti` / `WellFounded.anti` which make sense, and `Subrelation.antisymm` in `Logic/Relation.lean` because it's too early in the import hierarchy.
We could replace it with a `local instance : Std.Antisymm (α := α → α → Prop) LE.le`, but that seems a bit weird.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
33/33 |
Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/Finset/Dedup.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finsupp/Multiset.lean,Mathlib/Data/Fintype/Card.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/RelClasses.lean,Mathlib/Order/WellFounded.lean,Mathlib/Order/WellFoundedSet.lean,Mathlib/RingTheory/Artinian/Module.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Basic.lean,Mathlib/RingTheory/Valuation/Archimedean.lean |
14 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
45-69886 1 month ago |
45-70168 45 days ago |
65-72457 65 days |
0 |
| 42955 |
mpacholski author:mpacholski |
feat(diffgeo): add Hom-bundle support and fix pullback base points in T% elaborator |
# Changes
## `Mathlib/Geometry/Manifold/Notation.lean`
* **Add support for pullback bundles:** Replaced the hardcoded bound variable `x` with the dynamically extracted argument `arg`, which allows for using elaborator `T%` with pullback bundles, where the base point lies in a different manifold, e.g. `v : Π (m : M), E₁ (b m)`, where `b : M → B`.
* **Add support for Hom-bundles:** The elaborator now supports sections of Hom-bundles (`ContinuousLinearMap` between two fiber bundles, e.g. `ϕ : ∀ x, (E₁ x →L[𝕜] E₂ x`). It also supports the case where the base point lies in a different manifold (e.g. `ϕ : ∀ x, (E₁ (b x) →L[𝕜] E₂ (b x))`)
* **Support nested `TangentSpace`:** Modified `findModelFiber?` to natively intercept `TangentSpace` applications and extract the model fiber at index 2. This prevents typeclass synthesis failures when `TangentSpace` is used inside a Hom-bundle.
## `MathlibTest/DifferentialGeometry/Notation/Basic.lean`
* **Added tests for all the new usecases** this includes pullback bundles, Hom-bundles, pullback Hom-bundles, and Hom-bundles where one of the fibers is a `TangentSpace`.
## `Mathlib/Geometry/Manifold/VectorBundle/Hom.lean`
* **Refactor `Hom.lean`:** Replaced verbose `TotalSpace.mk'` boilerplate in with the newly supported `T%` syntax (e.g. `MDiffAt[s] T% ϕ x` instead of `MDiffAt[s] (fun m ↦ TotalSpace.mk' (F₁ →L[𝕜] F₂) (E := fun (x : B) ↦ (E₁ x →L[𝕜] E₂ x)) (b m) (ϕ m)) x)`
# Use of AI
The help of AI was used in writing the code in `Mathlib/Geometry/Manifold/Notation.lean`. It was hence manually edited to simplify the code as much as possible. While the author is not yet an expert in metaprogramming in Lean, he is willing to learn and receive feedback, and put all the effort to understand the presented code. The code was carefully tested with different parts of it changed and removed to make sure that every line serves a purpose to provide the expected functionality.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
new-contributor
LLM-generated
|
127/36 |
Mathlib/Geometry/Manifold/Notation.lean,Mathlib/Geometry/Manifold/VectorBundle/Hom.lean,MathlibTest/DifferentialGeometry/Notation/Basic.lean |
3 |
5 |
['github-actions', 'grunweg', 'mpacholski'] |
nobody |
45-49557 1 month ago |
80-85169 80 days ago |
80-85096 80 days |
3 |
| 44222 |
SamuelSchlesinger author:SamuelSchlesinger |
feat(Analysis/SpecialFunctions/Stirling): asymptotics of the central binomial coefficient |
Upstreaming `n.centralBinom ~ 4 ^ n / √(π * n)` and its `4 ^ n`-normalised corollaries,
needed for a Razborov–Smolensky `AC⁰[p]` lower bound in a circuit-complexity formalization,
together with the Catalan asymptotic `catalan n ~ 4 ^ n / (√π * n ^ (3 / 2))` as a first
application in Mathlib.
Drafted with Claude Code from my existing proof of the same statement, then revised by me
against Mathlib conventions.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis
LLM-generated
new-contributor
|
85/1 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/Combinatorics/Enumerative/Catalan/Asymptotics.lean |
3 |
4 |
['SamuelSchlesinger', 'github-actions'] |
nobody |
44-30231 1 month ago |
44-30560 44 days ago |
44-30487 44 days |
0 |
| 44183 |
kim-em author:kim-em |
feat(Topology/Homotopy): tube neighbourhoods of paths |
This PR adds tube neighbourhoods of paths: given a partition `0 = t₀ ≤ ⋯ ≤ tₙ = 1` (`unitInterval.Partition`) and open sets `Uᵢ` covering the segments of a path, with path-connected open sets `Vⱼ` around the vertices (`Path.Tube`), the paths lying in the tube (`Path.IsInTube`) form an open set in the compact-open topology (`Path.Tube.isOpen_setOf_isInTube`). When each `Uᵢ` is path-homotopy trivial (`IsPathHomotopyTrivial`), any two paths in a common tube are homotopic (`Path.IsInTube.homotopic`), and every path lies in such a tube in a locally path-connected space whenever its points have path-homotopy trivial neighbourhoods (`Path.exists_isInTube`).
Along the way it adds supporting path API: Lebesgue-number partitions of paths (`Path.exists_partition_in_cover`, `Path.exists_partition_with_property`), `Path.initialSegmentFamily`, cast and subpath lemmas, the quotient topology on `Path.Homotopic.Quotient`, and `Path.Homotopic.trans_left_of_nullhomotopic` / `trans_right_of_nullhomotopic`.
This is the first of four PRs constructing the universal cover (split from https://github.com/leanprover-community/mathlib4/pull/38292). It is independent of the second.
🤖 Prepared with Claude Code
|
t-topology
LLM-generated
|
420/1 |
Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Homotopy/Path.lean,Mathlib/Topology/Homotopy/TubeNeighborhood.lean,Mathlib/Topology/Path.lean,Mathlib/Topology/Subpath.lean,Mathlib/Topology/UnitInterval.lean |
8 |
1 |
['github-actions'] |
nobody |
44-18180 1 month ago |
44-18550 44 days ago |
45-8105 45 days |
2 |
| 44184 |
kim-em author:kim-em |
feat(AlgebraicTopology): semilocally simply connected spaces |
This PR defines semilocally simply connected spaces: `SemilocallySimplyConnectedAt x` says `x` has a neighbourhood `U` in which every loop at `x` is nullhomotopic in the ambient space, with `SemilocallySimplyConnectedOn` and the class `SemilocallySimplyConnectedSpace`. It proves the equivalent formulations via the fundamental group (`semilocallySimplyConnectedAt_iff_range_eq_bot`: `π₁(U, x) → π₁(X, x)` is trivial) and via paths (`semilocallySimplyConnectedAt_iff_paths`), and that simply connected spaces are semilocally simply connected.
Supporting additions: `Path.codRestrict`, groupoid lemmas relating homotopic paths to nullhomotopic loops (`Path.Homotopic.paths_homotopic_iff_loops_nullhomotopic` and friends), and `FundamentalGroup.map_fromPath` and `FundamentalGroup.map_range_eq_bot_iff`.
This is the second of four PRs constructing the universal cover (split from https://github.com/leanprover-community/mathlib4/pull/38292). It is independent of the first.
🤖 Prepared with Claude Code
|
t-topology
LLM-generated
|
270/0 |
Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/FundamentalGroup.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SemilocallySimplyConnected.lean,Mathlib/Topology/Path.lean |
5 |
1 |
['github-actions'] |
nobody |
44-4261 1 month ago |
44-4518 44 days ago |
45-6175 45 days |
2 |
| 44217 |
mitchell-horner author:mitchell-horner |
chore(Combinatorics/SimpleGraph): update notation such that `I` is contained `H` is contained in `G` |
Updates the notation in Copy.lean to enforce `I` is contained in `H` is contained in `G`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
I noticed that (1) the variable order of containment was different across this file and (2) the docstrings were incorrect.
This pull request corrects the docstrings and updates the variable order to:
```
(I : SimpleGraph X) ⊑ (H : SimpleGraph W) ⊑ (G : SimpleGraph V)
```
This fixes (2) but I figure the fix for (1) is opinion. I prefer this order (reverse alphabetical for both `G`, `H`, `I` and `V`, `W`, `X`). |
t-combinatorics |
93/93 |
Mathlib/Combinatorics/SimpleGraph/Copy.lean |
1 |
3 |
['Parcly-Taxel', 'SnirBroshi', 'github-actions', 'mitchell-horner'] |
nobody |
43-28636 1 month ago |
43-29160 43 days ago |
44-45403 44 days |
0 |
| 44241 |
thomaskwaring author:thomaskwaring |
feat(Basic/Rel): relation composition preserves unions |
Add the binary counterpart to `SetRel.comp_iUnion` and friends. |
t-data |
6/0 |
Mathlib/Basic/Rel.lean |
1 |
1 |
['github-actions'] |
nobody |
43-15168 1 month ago |
43-15582 43 days ago |
43-15509 43 days |
0 |
| 43153 |
NoahW314 author:NoahW314 |
feat(Data/Finsupp/Basic): range of `equivMapDomain` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
9/0 |
Mathlib/Data/Finsupp/Basic.lean |
1 |
3 |
['BoltonBailey', 'NoahW314', 'github-actions'] |
nobody |
42-77364 1 month ago |
44-42395 44 days ago |
64-27376 64 days |
0 |
| 43569 |
kim-em author:kim-em |
refactor(ModuleCat): state pushforward coherence without identifying functor bracketings |
This PR makes the pushforward of (pre)sheaves of modules along the identity functor and along a composition of functors honestly typed. Currently `pushforwardId` takes `𝟙 S` at the type `S ⟶ (𝟭 C).op ⋙ S` and `pushforwardComp` takes `φ ≫ whiskerLeft F.op ψ` at the type `S ⟶ (F ⋙ G).op ⋙ T`, which only elaborate because `Functor.comp`, `Functor.id` and `Functor.op` unfold. The new `pushforwardIdHom` and `pushforwardCompHom` are the unitor and associator composed with `Functor.opId`/`Functor.opComp` (see `pushforwardIdHom_eq` and `pushforwardCompHom_eq`), and the associativity and unitality isomorphisms of pushforward and pullback are transported along the functor associator and unitors through the new `pushforwardCongr₂`/`pullbackCongr₂` (added at the presheaf level, together with `pushforwardCongr`, `pushforwardNatTrans` and `pushforwardNatIso`). The scheme-level pseudofunctor coherence lemmas in `AlgebraicGeometry.Modules.Sheaf` are reproved from these, and `Adjunction.leftAdjointCompIso_trans` is added for that purpose.
It is extracted from Paul Reichert's experiment making `Functor.comp` and `Functor.id` `instance_reducible` (https://github.com/leanprover-community/mathlib4/compare/master...leanprover-community:mathlib4-nightly-testing:datokrat/functorcomp, discussed at https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/backward.2EisDefEq.2ErespectTransparency), and is the (pre)sheaf-of-modules half of https://github.com/leanprover-community/mathlib4/pull/43566; it is independent of that PR.
🤖 Prepared with Claude Code |
tech debt
t-category-theory
|
480/131 |
Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pullback.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pushforward.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PushforwardContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/AlgebraicGeometry/Modules/Sheaf.lean,Mathlib/CategoryTheory/Adjunction/CompositionIso.lean,Mathlib/Topology/Sheaves/Module.lean |
9 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
42-44330 1 month ago |
42-44777 42 days ago |
60-62263 60 days |
0 |
| 42720 |
justinhalford author:justinhalford |
feat(Order/KrullDimension): level sets of height are antichains |
Adds one lemma to `Mathlib/Order/KrullDimension.lean`, directly after `height_strictMono`:
```lean
lemma isAntichain_lt_height_preimage {n : ℕ∞} (hn : n ≠ ⊤) :
IsAntichain (· < ·) {x : α | height x = n}
```
Elements sharing a common *finite* height are pairwise incomparable — the level sets of `height` are antichains.
### Why
This is the combinatorial content of **Mirsky's theorem**, which partitions a finite-dimensional order into `krullDim + 1` antichains (and is the easy dual of Dilworth's theorem). Neither Mirsky nor Dilworth currently appears in Mathlib — both are on the tracked list in `docs/1000.yaml` without a `decl`, and searching for `Mirsky` and `Dilworth` returns nothing.
Rather than introduce the partition machinery up front, this contributes the underlying fact, which is what any route to Mirsky needs and is independently useful for reasoning about graded and finite-dimensional orders.
### Design
Stated with `(· < ·)` rather than `(· ≤ ·)` so that it lives in the existing `[Preorder α]` section and needs no antisymmetry; in a partial order the two coincide for distinct elements. The hypothesis is `n ≠ ⊤` rather than a finiteness typeclass, which keeps it usable without extra assumptions — `height_strictMono` needs exactly that much.
### Proof
Three lines on `height_strictMono`, immediately above it in the same file.
### Verification
Compiles against `master` with no errors or warnings. `#print axioms` reports only `[propext, Classical.choice, Quot.sound]`. No new imports or definitions — `+11 -0` in one file.
### Disclosure
Written with AI assistance (Claude Opus 5) and checked against the Lean kernel; I have read the statement and proof before submitting. Happy to rename, or to restate as `IsAntichain (· ≤ ·)` in a `PartialOrder` section if that is preferred.
|
t-order
new-contributor
|
11/0 |
Mathlib/Order/KrullDimension.lean |
1 |
5 |
['github-actions', 'theebayuser'] |
nobody |
42-30641 1 month ago |
88-14790 88 days ago |
88-14717 88 days |
0 |
| 44093 |
grunweg author:grunweg |
chore: fix more congruence lemmas |
A `congr` should vary all its explicit arguments, not just some of them. This issue is documented on the docstring of the `@[congr]` attribute, but there is no warning when you write a bad `@[congr]` lemma.
Whenever a lemma seemed used sufficiently often, we fixed the congruence lemma by adding a new variant, with a primed name and the additional arguments varied also.
Found by the linter in #43692; these should be all remaining bad lemmas in mathlib.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
tech debt
label:t-algebra$ |
74/38 |
Mathlib/Algebra/MonoidAlgebra/Module.lean,Mathlib/Data/Finset/Filter.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Find.lean,Mathlib/Data/List/Zip.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Multiset/Find.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Set/NAry.lean,Mathlib/Data/Sym/Basic.lean,Mathlib/Data/Sym/Card.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/LinearAlgebra/Finsupp/Supported.lean,Mathlib/LinearAlgebra/QuadraticForm/Signature.lean |
18 |
5 |
['github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts'] |
nobody |
41-83655 1 month ago |
41-84330 41 days ago |
44-76463 44 days |
0 |
| 44297 |
langston-barrett author:langston-barrett |
feat(Data/FinEnum): `Std.PRange.LawfulUpwardEnumerable` instance |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
I'm not sure how Mathlib feels about interfacing with std constructs, but I was looking for something along the lines of `succMany?` and found `Std.PRange.LawfulUpwardEnumerable`, so I figured I'd implement it and see what the appetite is. Even if we don't decide to use this particular typeclass, the underlying functionality still seems useful.
This is my first ever Lean development, so I would greatly appreciate any tips and feedback on the style!
I wrote all of this by hand, though I asked some questions about Lean to GPT 5.6 Luna along the way.
A `LinearlyUpwardEnumerable` instance would be a good follow-up. |
t-data
new-contributor
|
112/0 |
Mathlib/Data/FinEnum.lean |
1 |
3 |
['github-actions', 'langston-barrett'] |
nobody |
40-64786 1 month ago |
40-65310 40 days ago |
41-68072 41 days |
0 |
| 44328 |
Multramate author:Multramate |
chore: fix misspelling `supsets` in `Set.sUnion_mono_supsets` |
Fixes the misspelling `supsets` in `Set.sUnion_mono_supsets`.
---
🤖 Generated with [Claude Code](https://claude.com/claude-code) |
t-data
LLM-generated
|
3/1 |
Mathlib/Data/Set/Lattice/Bounded.lean |
1 |
5 |
['JX-Mo', 'Multramate', 'github-actions'] |
nobody |
40-61833 1 month ago |
40-68553 40 days ago |
40-68480 40 days |
0 |
| 36086 |
Multramate author:Multramate |
feat(Algebra): add liftEquiv for groups, rings, algebras, and adjoin roots |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
49/1 |
Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean |
4 |
10 |
['CBirkbeck', 'Multramate', 'artie2000', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
40-56134 1 month ago |
45-70857 45 days ago |
69-4370 69 days |
1 |
| 44216 |
peabrainiac author:peabrainiac |
feat(Topology): add `IsCozeroSet` |
Define a predicate `IsCozeroSet` for sets in topological spaces that are the support of some continuous function to $\mathbb R$. We prove:
* Every cozero set is open, and in perfectly normal spaces every open set is a cozero set.
* Finite intersections and locally finite unions of cozero sets are cozero sets.
* Preimages of cozero sets under continuous functions are cozero sets.
* Images and coimages of cozero sets under open proper maps are cozero sets.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Taken from [classifying-bundles](https://peabrainiac.github.io/classifying-bundles/docs/ClassifyingBundles/IsCozeroSet), where this API was useful for working with numerable covers. |
t-topology |
227/0 |
Mathlib.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Order/Group/Indicator.lean,Mathlib/Topology/IsCozeroSet.lean |
4 |
1 |
['github-actions'] |
nobody |
40-48054 1 month ago |
40-48719 40 days ago |
44-45240 44 days |
1 |
| 44354 |
Rob23oba author:Rob23oba |
fix: use a more robust definition for unquot |
`unsafeCast`, and by extension, `cast lcProof`, is quite unstable in the compiler. Instead using an unsound `Quot.lift` is much more stable, since it uses the intended features for `Quot` and translates into an explicit `Quot.lcInv` application in the compiler. You can however not just use `Quot.lcInv` as the definition because the computability check catches it as an application of an axiom.
See also leanprover/lean4#14719 for an issue with the `unsafeCast` definition of `unquot`.
|
t-data |
1/1 |
Mathlib/Data/Quot.lean |
1 |
1 |
['github-actions'] |
nobody |
40-5782 1 month ago |
40-5859 40 days ago |
40-5786 40 days |
0 |
| 43852 |
ZRTMRH author:ZRTMRH |
feat(Combinatorics/Quiver/Schreier): add Schreier Cayley basics |
Defined Cayley graph as a coset Schreier graph. Proved connectivity and vertex-transitivity on Cayley graphs, as promised in #38310.
Follow-up to #38310, this is the 3rd split pr from #35467.
This PR was written with AI assistance (Claude). The code has been reviewed by the author.
P.S. cayley_subsingleton_weaklyConnectedComponent's proof is generic and I can extract it to Quiver/ConnectedComponent.lean as a weak-connectivity lemma, if it is wanted.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
large-import
LLM-generated
|
278/7 |
Mathlib/Combinatorics/Quiver/Schreier.lean |
1 |
10 |
['SnirBroshi', 'ZRTMRH', 'github-actions', 'mathlib-merge-conflicts', 'vlad902'] |
nobody |
40-498 1 month ago |
40-566 40 days ago |
54-45963 54 days |
0 |
| 43362 |
TJHeeringa author:TJHeeringa |
feat(Analysis/InnerProductSpace/Reproducing): add RKHS.SMul.smulSpace |
This PR defines the scalar multiple `c • H` for a given RKHS `H` and shows that it is an RKHS.
---
Can be constructed just as the sumSpace in #41127. However, the discussion below concluded that the current type copy approach was better in this case.
The notation `scoped infix:50 " • " => smulSpace` was not introduced. That caused overload issues that I don't know how to fix.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis |
119/5 |
Mathlib/Analysis/InnerProductSpace/Reproducing.lean,Mathlib/Analysis/InnerProductSpace/Reproducing/Operations.lean |
2 |
9 |
['Maldooor', 'TJHeeringa', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
39-82649 1 month ago |
39-82787 39 days ago |
40-5412 40 days |
1 |
| 36814 |
YaelDillies author:YaelDillies |
refactor(Combinatorics/SimpleGraph): no proof obligation in `rotate` |
If the walk doesn't go through the new vertex, return `nil` instead.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
44/32 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean |
7 |
19 |
['SnirBroshi', 'YaelDillies', 'b-mehta', 'bryangingechen', 'eric-wieser', 'github-actions', 'jcommelin', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
39-76950 1 month ago |
39-77010 39 days ago |
227-73493 227 days |
0 |
| 44351 |
homeowmorphism author:homeowmorphism |
chore(Topology/MetricSpace/Bounded): add grind annotations to lemmas about the diameter |
---
I was browsing this API in the light of #43723 and noticed these possible improvements.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-topology |
6/3 |
Mathlib/Topology/MetricSpace/Bounded.lean |
1 |
3 |
['github-actions', 'homeowmorphism'] |
nobody |
39-59422 1 month ago |
39-80313 39 days ago |
40-7160 40 days |
0 |
| 44145 |
Rida-Hamadani author:Rida-Hamadani |
feat(Analysis): translations preserve harmonicity |
also proves that translations preserves `C^n` regularity.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis |
63/0 |
Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/InnerProductSpace/Harmonic/Basic.lean,Mathlib/Analysis/InnerProductSpace/Laplacian.lean |
3 |
1 |
['github-actions'] |
nobody |
39-7960 1 month ago |
39-8421 39 days ago |
46-54769 46 days |
0 |
| 43695 |
gasparattila author:gasparattila |
feat(Topology/Algebra): define a topology on `Homogenization` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #43339
[](https://gitpod.io/from-referrer/)
|
t-topology |
377/0 |
Mathlib.lean,Mathlib/Topology/Algebra/Homogenization.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
38-86220 1 month ago |
39-63 38 days ago |
39-66161 39 days |
0 |
| 43545 |
gasparattila author:gasparattila |
refactor(Algebra/Order/Ring/Idempotent): introduce bundled types |
This file currently has several instances defined for specific subtypes. This PR replaces these with bundled structures. This also fixes possible typeclass diamonds when the order defined here conflicts with the general one on subtypes.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
242/111 |
Mathlib/Algebra/Order/Ring/Idempotent.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
38-84697 1 month ago |
38-84911 38 days ago |
62-67960 62 days |
0 |
| 42182 |
gasparattila author:gasparattila |
feat(Order/Partition): converting a `Finpartition` into a `Partition` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order
large-import
|
60/2 |
Mathlib/Order/Partition/Basic.lean,Mathlib/Order/Partition/Finpartition.lean,Mathlib/Order/SupIndep.lean |
3 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
38-78569 1 month ago |
38-78628 38 days ago |
100-49008 100 days |
0 |
| 43409 |
gasparattila author:gasparattila |
doc: expand the documentation on `SMul ℕ` defeq issues |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
20/1 |
Mathlib/Algebra/Group/Monoid.lean |
1 |
3 |
['Vierkantor', 'gasparattila', 'github-actions'] |
nobody |
38-73175 1 month ago |
38-73231 38 days ago |
66-71600 66 days |
0 |
| 44396 |
mathlib-splicebot author:mathlib-splicebot |
chore(Analysis/Complex/UnitDisc/Basic): fix instance diamond |
There were two natural number power instances which differed at implicit transparency.
The `NatPowAssoc` instance is not necessary, hence can be removed.
Found by the linter in #38781.
Co-authored-by: Jovan Gerbscheid <jovan.gerbscheid@gmail.com>
-------- |
tech debt
t-analysis
|
11/16 |
Mathlib/Analysis/Complex/UnitDisc/Basic.lean |
1 |
3 |
['github-actions', 'grunweg', 'leanprover-radar'] |
nobody |
38-69963 1 month ago |
38-71659 38 days ago |
38-71586 38 days |
0 |
| 36406 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Matching): `#verts = 2 * #edgeSet` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #36442
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
44/0 |
Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/SetTheory/Cardinal/Finite.lean |
3 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
38-54856 1 month ago |
38-54912 38 days ago |
39-53488 39 days |
1 |
| 44032 |
kim-em author:kim-em |
chore: remove backward.privateInPublic by wrapping proofs with private_decl% |
This PR removes 171 uses of `backward.privateInPublic` across 37 files. Wherever a public declaration used a private lemma in a proof position, the proof is wrapped with core's `private_decl%` elaborator, or with the `field := private proof` structure-instance syntax where the proof fills a structure field. Both elaborate the proof in a private context and hide it behind an auxiliary declaration, which is harmless by proof irrelevance. No declaration changes visibility and no statement changes, except that in `Combinatorics/SetFamily/AhlswedeZhang` the `Finset → Set` coercion in `lowerClosure s` is now written explicitly, since `private_decl%` elaborates eagerly and otherwise sees the coercion's pending metavariable.
This follows the plan of #42755 by @thorimur and takes its non-elaborator changes verbatim: moving `variable` commands out of `public section` in four files where almost every declaration is private (Galois/Decomposition, ChevalleyComplexity, GromovHausdorffRealized, NumberField/House; see https://github.com/leanprover/lean4/issues/14708 and https://github.com/leanprover/lean4/issues/14718), making the two lemmas used by the `sz_positivity` macro public under internal names, and separating data from proof in `binomExpansion` and `archimedeanClassOrderIso`. The difference is that this PR uses the elaborator that already exists in core rather than the `private` term elaborator proposed in #42563, so that it can land now. Once #42563 is in, every `private_decl% (…)` here can be replaced mechanically by `private …`. The 13 files that only need the field syntax are in #44023 and are not touched here.
🤖 Prepared with Claude Code |
tech debt |
135/274 |
Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Lie/BaseChange.lean,Mathlib/Algebra/Lie/Weights/RootSystem.lean,Mathlib/Algebra/Module/Injective.lean,Mathlib/Algebra/Polynomial/Identities.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/AlgebraicTopology/SimplicialSet/HomotopyCat.lean,Mathlib/Analysis/InnerProductSpace/TensorProduct.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/Normed/Operator/Basic.lean,Mathlib/CategoryTheory/Galois/Decomposition.lean,Mathlib/CategoryTheory/Monoidal/Closed/FunctorCategory/Complete.lean,Mathlib/CategoryTheory/Preadditive/CommGrp_.lean,Mathlib/Combinatorics/SetFamily/AhlswedeZhang.lean,Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Bound.lean,Mathlib/Computability/Primrec/List.lean,Mathlib/Data/Finset/Union.lean,Mathlib/FieldTheory/PerfectClosure.lean,Mathlib/GroupTheory/DivisibleHull.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/RootSystem/Basic.lean,Mathlib/ModelTheory/Algebra/Ring/FreeCommRing.lean,Mathlib/NumberTheory/NumberField/House.lean,Mathlib/Order/BooleanAlgebra/Basic.lean,Mathlib/Order/Lattice/Congruence.lean,Mathlib/RingTheory/Coalgebra/TensorProduct.lean,Mathlib/RingTheory/DividedPowers/Padic.lean,Mathlib/RingTheory/DividedPowers/SubDPIdeal.lean,Mathlib/RingTheory/PicardGroup.lean,Mathlib/RingTheory/Spectrum/Prime/ChevalleyComplexity.lean,Mathlib/Topology/ExtremallyDisconnected.lean,Mathlib/Topology/MetricSpace/GromovHausdorffRealized.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,Mathlib/Topology/UnitInterval.lean |
36 |
5 |
['JovanGerb', 'github-actions', 'kim-em', 'mathlib-merge-conflicts', 'thorimur'] |
nobody |
38-43763 1 month ago |
38-43934 38 days ago |
46-80481 46 days |
0 |
| 44437 |
FawadHa1der author:FawadHa1der |
perf(Analysis/Normed/Lp/SmoothApprox): manifold-free proof of smooth approximation in Lp |
Authored with AI help. Created after @mcdoll feedback on [leanprover-community/mathlib4#42451](https://github.com/leanprover-community/mathlib4/pull/42451)
This is an alternate solution. This removes the manifold chain from the longest pole and even if the poisson summation is approved using denseRange_toLpCLM. We would still be saving roughly 5% in build time. There is only one new lemma but no change to existing lemmas/statements.
|
t-analysis
new-contributor
|
82/36 |
Mathlib/Analysis/Normed/Lp/SmoothApprox.lean |
1 |
3 |
['FawadHa1der', 'github-actions'] |
nobody |
37-76291 1 month ago |
37-76358 37 days ago |
37-76285 37 days |
0 |
| 43745 |
theebayuser author:theebayuser |
feat(Geometry/Euclidean): add Euler's quadrilateral theorem |
Adds Euler's quadrilateral theorem to Mathlib/Geometry/Euclidean/, and records it in docs/1000.yaml (Q18630480). It states: for any four points, the sum of the squares of the four sides of the quadrilateral a b c d equals the sum of the squares of the two diagonals, plus four times the square of the distance between the midpoints of the diagonals.
This PR was written with AI assistance (Claude Code).
|
t-euclidean-geometry
new-contributor
LLM-generated
maintainer-merge
|
84/0 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Geometry/Euclidean/EulerQuadrilateral.lean,docs/1000.yaml |
4 |
17 |
['github-actions', 'jsm28', 'theebayuser', 'wwylele'] |
nobody |
36-49559 1 month ago |
41-42750 41 days ago |
58-33225 58 days |
0 |
| 36595 |
mcdoll author:mcdoll |
feat(Analysis/TemperedDistribution): polynomially bounded locally integrable functions define tempered distributions |
Every polynomially bounded and locally integrable function defines a tempered distribution, this generalizes the previous version for temperate growth functions.
Breaking change: we deprecate the temperate growth embedding - it is a special case and we prove that every temperate growth function satisfies the polynomial bound outside a compact set.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [ ] depends on: #36711
[](https://gitpod.io/from-referrer/)
|
t-analysis |
172/2 |
Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/TemperateGrowth.lean,Mathlib/Analysis/Distribution/TemperedDistribution.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean |
6 |
3 |
['github-actions', 'mathlib-bors', 'mathlib-dependent-issues'] |
nobody |
34-80051 1 month ago |
34-80113 34 days ago |
34-80269 34 days |
0 |
| 42195 |
Jun2M author:Jun2M |
refactor(Order/Partition): remove the support index from `Partition` |
Redefine `Partition α` as an independent collection of nonbottom elements of a complete lattice, with support `P.supp` defined as their supremum. In the special case `Partition (Set β)`, the parts are pairwise disjoint, nonempty sets and the support is their union.
Previously, `Partition s` carried its support as a type index. This made partitions of different sets inhabit different types and forced otherwise natural operations to transport partitions across support equalities.
BREAKING CHANGE: Replace the indexed type `Partition s` with `Partition α`, and obtain the former index from `P.supp`. When constructing a partition, omit the proof that the parts cover a prescribed set. `Partition.copy` and `Partition.partscopyEquiv` are no longer needed. Import the relevant `Mathlib.Order.Partition` submodule when using APIs moved out of `Basic`.
Deletions:
- Partition.copy
- Partition.mem_copy_iff
- Partition.partscopyEquiv
It also introduces some new definitions: `induce` & `bind`. These are added in this PR as they are needed to keep `SemiLattice` instance on `Partition`.
A new file `Set.lean` now houses defs and theorems of `Partition (Set _)`, including `IsRepFun` previously in `Basic` file.
This PR is partially generated by AI: Partition API written by myself in [Matroid repo](https://github.com/apnelson1/Matroid) has be adapted using codex and final checked by myself.
Co-authored-by: OpenAI Codex <codex@openai.com>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
624/399 |
Mathlib.lean,Mathlib/Order/Partition/Basic.lean,Mathlib/Order/Partition/Set.lean,Mathlib/Order/SupIndep.lean |
4 |
4 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
34-40214 1 month ago |
34-40267 34 days ago |
46-68052 46 days |
1 |
| 44440 |
vincentqb author:vincentqb |
feat(Computability/TuringMachine): bound the output length of a TM2 run |
This PR bounds the output length of a TM2 run by the input length plus a machine constant times the step count. It deduces `TM2ComputableInPolyTime.length_le`, the polynomial output-length bound used in composition.
It also adds step-count induction and defines `initList` and `haltList` using `Function.update`.
---
Relates to #7172 #33132 #35366
The code, the testing, and this description were prepared with the help of an AI coding assistant (Codex).
|
t-computability
LLM-generated
new-contributor
|
82/7 |
Mathlib/Computability/StateTransition.lean,Mathlib/Computability/TuringMachine/Computable.lean,Mathlib/Computability/TuringMachine/StackTuringMachine.lean |
3 |
3 |
['github-actions', 'vincentqb'] |
nobody |
34-35058 1 month ago |
37-18810 37 days ago |
37-57784 37 days |
1 |
| 44541 |
vincentqb author:vincentqb |
feat(Computability/Partrec): computability of list operations |
This PR adds `Computable.list_foldl`, `list_foldr`, `list_rec`, and `list_map`, with the same statements as their `Primrec` counterparts.
---
The code, the testing, and this description were prepared with the help of an AI coding assistant.
|
LLM-generated
new-contributor
t-computability
|
37/0 |
Mathlib/Computability/Partrec.lean |
1 |
3 |
['github-actions', 'vincentqb'] |
nobody |
34-33744 1 month ago |
34-33933 34 days ago |
34-33860 34 days |
0 |
| 44086 |
bjornsolheim author:bjornsolheim |
feat(Analysis/Convex/Strict): farthest points are exposed in strictly convex spaces |
Proves the following (in a real strictly convex normed space):
`sphere_subset_exposedPoints_closedBall` - every point of a sphere is an exposed point of the
corresponding closed ball
`mem_exposedPoints_of_isMaxOn_dist` - a point `y ∈ S` that maximizes distance
to a fixed center `z` is an exposed point of `S`
`exposedPoints_closedBall_eq_sphere` - the exposed points of a closed ball
are exactly its sphere
Assisted by: Claude Fable 5.1 (used for research and to write or complete or improve some parts).
All lines are written or reviewed by me.
---
Optional comment |
t-analysis |
77/0 |
Mathlib.lean,Mathlib/Analysis/Convex/Strict/Exposed.lean |
2 |
2 |
['github-actions'] |
nobody |
34-21030 1 month ago |
47-79741 47 days ago |
47-79668 47 days |
1 |
| 41299 |
JovanGerb author:JovanGerb |
chore(DomAct): clean up `DomMulAct`/`DomAddAct` instances |
This PR cleans up the `DomMulAct`/`DomAddAct` instances using `inferInstanceAs`.
Instead having the `MyClass Mᵐᵒᵖ` instance imply the `MyClass Mᵈᵐᵃ` instance, we use `MyClass M` as the hypothesis. For this to work, some instances need to be moved from the group file to the ring file, so that the required instances are available.
Additionally, `@[to_additive]` is now only used in the group instances and not the ring instances.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-group-theory
large-import
|
21/16 |
Mathlib/Algebra/Module/Hom.lean,Mathlib/Algebra/Module/LinearMap/Basic.lean,Mathlib/Algebra/Ring/Opposite.lean,Mathlib/GroupTheory/GroupAction/DomAct/Basic.lean |
4 |
6 |
['JovanGerb', 'Whysoserioushah', 'github-actions', 'leanprover-radar', 'riccardobrasca'] |
nobody |
34-11516 1 month ago |
34-21659 34 days ago |
129-77324 129 days |
0 |
| 44392 |
yhx-12243 author:yhx-12243 |
fix(Algebra/Polynomial/Roots): fix tendstoCofinite with normal generic universe |
Remove the extraneous accidentally {R : Type} [CommRing R] [IsDomain R] in the signature of `Polynomial.tendstoCofinite_of_natDegree_ne_zero`, make it generic. |
t-algebra
new-contributor
label:t-algebra$ |
2/2 |
Mathlib/Algebra/Polynomial/Roots.lean |
1 |
3 |
['github-actions', 'plp127'] |
nobody |
32-79264 1 month ago |
38-83937 38 days ago |
38-83864 38 days |
0 |
| 44618 |
barni120400 author:barni120400 |
feat(RingTheory/MvPolynomial/Homogeneous): powers of linear forms span the homogeneous polynomials |
Prove that the `n`-th powers of linear forms span the homogeneous polynomials of degree `n` (`MvPolynomial.homogeneousSubmodule_eq_span_pow`). Along the way, add the identity `Finset.sum_powerset_neg_one_pow_card_mul_sum_sdiff_pow_card` used in the proof.
---
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-data
new-contributor
LLM-generated
|
64/0 |
Mathlib/Data/Nat/Choose/Sum.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean |
2 |
2 |
['github-actions'] |
nobody |
32-58487 1 month ago |
32-59284 32 days ago |
32-59211 32 days |
0 |
| 44040 |
kim-em author:kim-em |
chore: adaptation notes for the backward.privateInPublic uses blocked on lean4#14708 |
This PR adds an `#adaptation_note` at each `variable` declaration with an autoParam binder whose users need `backward.privateInPublic`. These uses (about 80 of the remaining option lines, in 14 files) are not removable on the Mathlib side: the autoParam helper declaration generated for a `variable` is always private, and any declaration using that variable in a public section silently elaborates to `sorry` without the option. This is https://github.com/leanprover/lean4/issues/14708. The note says which `set_option`s can go once that is fixed, and stops anyone from spending time on them before then. Each affected file was checked by removing its `true`-only option lines and observing the `sorry` warnings and the follow-on `autoParam … is not a constant` errors.
It also deletes the one option line in `CategoryTheory/SmallObject/Iteration/ExtendToSucc` that turned out to be unnecessary.
🤖 Prepared with Claude Code |
tech debt
LLM-generated
|
116/0 |
Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/AlgebraicTopology/SimplicialSet/CompStruct.lean,Mathlib/AlgebraicTopology/SimplicialSet/StrictSegal.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/NonUnital.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/Distribution/TemperedDistribution.lean,Mathlib/CategoryTheory/ComposableArrows/Basic.lean,Mathlib/CategoryTheory/Join/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Reflexive.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/ChosenPullbacksAlong.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/CommGrp_.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Sites/Point/Basic.lean,Mathlib/CategoryTheory/SmallObject/Iteration/ExtendToSucc.lean |
15 |
1 |
['github-actions'] |
nobody |
32-58447 1 month ago |
48-48979 48 days ago |
48-48906 48 days |
0 |
| 43948 |
JX-Mo author:JX-Mo |
chore(RepresentationTheory/Coinduced): tech debt |
Remove five `backward.isDefEq.respectTransparency.types` and add a CoeFun instance for `coindV` to justify the existing `coe`-named lemmas.
https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60CoeFun.60.20or.20.60.2Eval.60/with/630026437 |
t-algebra
tech debt
easy
label:t-algebra$ |
22/17 |
Mathlib/RepresentationTheory/Coinduced.lean |
1 |
37 |
['JX-Mo', 'Whysoserioushah', 'github-actions', 'jcommelin', 'jjdishere', 'leanprover-radar', 'mathlib-bors'] |
nobody |
32-37589 1 month ago |
35-17348 35 days ago |
37-80537 37 days |
4 |
| 44075 |
bjornsolheim author:bjornsolheim |
feat(Analysis/Convex): convex hull of a compact set is compact in finite dimensions |
Proves the following:
`Set.convexHull_eq_range_sum_smul` - In finite dimensions, the convex hull of `K` is the range of weighted sums of
`finrank 𝕜 E + 1` points of `K`, with nonnegative weights summing to one.
`IsCompact.convexHull` - In finite dimensions, the convex hull of a compact set is compact.
Assisted by: Claude Fable 5.1 (used for research and to write or complete or improve some parts).
Some parts are hence iteratively llm-generated based on my inputs. All lines are reviewed in full by me.
---
[](https://gitpod.io/from-referrer/)
|
t-analysis |
84/0 |
Mathlib.lean,Mathlib/Analysis/Convex/Compact.lean |
2 |
1 |
['github-actions'] |
nobody |
32-22509 1 month ago |
48-5223 48 days ago |
48-5150 48 days |
1 |
| 44619 |
artie2000 author:artie2000 |
refactor(Algebra/Ring): rename IsSemireal property |
* Rename field `IsSemireal.one_add_ne_zero` to the more descriptive `IsSemireal.one_add_ne_zero_of_isSumSq`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
10/5 |
Mathlib/Algebra/Ring/Semireal/Defs.lean |
1 |
3 |
['SnirBroshi', 'artie2000', 'github-actions', 'vihdzp'] |
nobody |
32-4006 1 month ago |
32-4076 32 days ago |
32-56478 32 days |
0 |
| 44019 |
bally65 author:bally65 |
feat(Computability/Primrec): primality is primitive recursive |
Primrec.nat_prime : PrimrecPred Nat.Prime, via Nat.prime_def_lt' and the bounded quantifier PrimrecRel.forall_lt. Mathlib had no computability statement about Nat.Prime.
AI disclosure: I used Claude and ChatGPT to discuss ideas, to adjust and optimize the approach, and to explore whether there was something worth taking on. They also proposed many of the problems, lines of thought, and decisions about direction. Almost all of the Lean code was written by Claude Code. I applied the reviewer's suggested changes myself.
AI 使用聲明:我使用 Claude 和 ChatGPT 討論構思、調整與優化,也討論有沒有值得挑戰的方向。它們也提出了許多題目、思路和決策方向。Lean 程式碼幾乎全部由 Claude Code 撰寫。審稿人提供的修改建議由我自己套用。
Note: the English disclosure is a translation of my Chinese text, assisted by Claude. |
t-computability
new-contributor
LLM-generated
|
44/0 |
Mathlib.lean,Mathlib/Computability/Primrec/Prime.lean |
2 |
6 |
['bally65', 'github-actions', 'pepamontero'] |
nobody |
31-84172 1 month ago |
48-3900 48 days ago |
49-37878 49 days |
0 |
| 42051 |
vihdzp author:vihdzp |
feat: lemmas relating `smallInductiveDimension` and `ZeroDimensionalSpace` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #40879
- [x] depends on: #40901
[](https://gitpod.io/from-referrer/)
|
t-topology |
15/0 |
Mathlib/Topology/InductiveDimension/Functions.lean |
1 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
31-62066 1 month ago |
31-62133 31 days ago |
31-63785 31 days |
0 |
| 44320 |
tb65536 author:tb65536 |
feat(Analysis/Normed/Unbundled/IsPowMulTrivial): triviality of power-multiplicative norms over a trivially normed field |
This is used in #42985 to generalize uniqueness of power-multiplicative norms from `NontriviallyNormedField` to `NormedField`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis |
62/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Unbundled/IsPowMulTrivial.lean |
2 |
4 |
['eric-wieser', 'github-actions', 'tb65536', 'themathqueen'] |
nobody |
31-61941 1 month ago |
31-62036 31 days ago |
40-86398 40 days |
2 |
| 44261 |
javgomzar author:javgomzar |
feat(Algebra/Category/Grp): free functor preserves monomorphisms |
Refactored the proof for AddCommGrpCat, so that it also works in GrpCat.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
new-contributor
label:t-algebra$ |
18/5 |
Mathlib/Algebra/Category/Grp/Adjunctions.lean |
1 |
15 |
['JX-Mo', 'github-actions', 'javgomzar', 'mathlib-merge-conflicts'] |
nobody |
30-79048 30 days ago |
30-79142 30 days ago |
42-51044 42 days |
0 |
| 44681 |
Altabeh author:Altabeh |
feat(Analysis/ODE/Linearization): the derivative of a flow at a fixed… |
Add a new file `Mathlib/Analysis/ODE/Linearization.lean`. Let `ϕ : Flow ℝ E` on a real Banach space
be generated by a vector field `f`, meaning `∀ x t, HasDerivAt (fun s ↦ ϕ s x) (f (ϕ t x)) t`. If
`e` is a fixed point of `ϕ` and `f` has derivative `A` at `e`, then every time-`t` map has derivative
`exp (t • A)` at `e`:
* `Flow.hasFDerivAt_of_isFixedPt`: `HasFDerivAt (ϕ t) (exp (t • A)) e` for every `t : ℝ`.
* `Flow.fderiv_eq_exp_of_isFixedPt`: the `fderiv` form.
* `Flow.eventually_norm_sub_exp_le`: a uniform estimate on compact time intervals. For `0 ≤ T` and
`0 < ε`, eventually for `x` near `e`, `‖ϕ t x - e - exp (t • A) (x - e)‖ ≤ ε * ‖x - e‖` for all
`t ∈ [0, T]`.
Only differentiability of `f` at `e` is needed; nothing is assumed about `f` elsewhere. The estimate
comes from comparing `ϕ t x - e` with `exp (t • A) (x - e)` using Grönwall's inequality. Negative
times are handled by applying the result to `ϕ.reverse`.
---
This PR is independent of the `LipschitzWith.flow` PR. It applies to any `Flow ℝ E` with a
generating vector field, which includes those flows.
**Proof of `eventually_norm_sub_exp_le` is done by a combination of `Claude Opus 5.5` and `GPT-5.6 Sol`. Linting and comments were done by AI.*** |
new-contributor
t-analysis
LLM-generated
|
166/0 |
Mathlib.lean,Mathlib/Analysis/ODE/Linearization.lean |
2 |
3 |
['github-actions', 'grunweg'] |
nobody |
30-65950 30 days ago |
30-66025 30 days ago |
30-67960 30 days |
0 |
| 44680 |
Altabeh author:Altabeh |
feat(Analysis/ODE/LipschitzFlow): the flow of a globally Lipschitz ve… |
Add a new file `Mathlib/Analysis/ODE/LipschitzFlow.lean`. A globally Lipschitz vector field
`v : E → E` on a real Banach space has a unique solution of `γ' = v ∘ γ` through every point, defined
for all time, and these solutions form a continuous flow:
* `LipschitzWith.exists_forall_hasDerivAt`: global existence of solutions.
* `LipschitzWith.dist_le_of_forall_hasDerivAt`: two solutions satisfy
`dist (γ t) (δ t) ≤ dist (γ 0) (δ 0) * exp (K * |t|)`.
* `LipschitzWith.flow : Flow ℝ E`: the flow of `v`.
* `LipschitzWith.hasDerivAt_flow`: the orbits of the flow solve `γ' = v ∘ γ`.
* `LipschitzWith.flow_eq_of_hasDerivAt`: every global solution is an orbit of the flow.
* `LipschitzWith.dist_flow_le`: `dist (flow t x) (flow t y) ≤ dist x y * exp (K * |t|)`.
The field does not need to be bounded. For a bounded field, Picard–Lindelöf (`IsPicardLindelof`)
gives solutions on each interval `(-(n + 1), n + 1)`, and uniqueness glues them into a global
solution. A general field is reduced to this case by multiplying `v` by a Lipschitz cutoff that is
`1` on `closedBall 0 R`. Grönwall's inequality, using `‖v y‖ ≤ ‖v 0‖ + K * ‖y‖`, shows that for
large `R` the solution stays in that ball on the time interval, so the cutoff does not change it.
---
Continuity of the flow jointly in `(t, x)` comes from
`continuousOn_prod_of_continuousOn_lipschitzOnWith'`, using the exponential separation bound on
bounded time intervals.
**The proofs of`exists_forall_hasDerivAt_of_forall_Ioo`, `lipschitzWith_cutoff_smul`, `norm_le_gronwallBound` and part of `dist_le_of_forall_hasDerivAt` used a combo of `GPT-5.6 Sol` and `Claude Opus 5.5`. Linting and comments were done by AI as well.** |
t-analysis
new-contributor
LLM-generated
|
276/0 |
Mathlib.lean,Mathlib/Analysis/ODE/LipschitzFlow.lean |
2 |
3 |
['github-actions', 'grunweg'] |
nobody |
30-65829 30 days ago |
30-65935 30 days ago |
30-68167 30 days |
0 |
| 40964 |
grunweg author:grunweg |
chore: explicitly specify free universes in `TopCat` and friends |
Avoid free universe variables, as discussed on Zulip: https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2338223.20The.20Category.20of.20C.5En.20Manifolds/near/587824522
Perhaps, we should have a linter for this, such as by
- extending the `pp_universes` attribute (TODO fix name) to take a list of universes, and only pretty-print those
- the linter checks for any universes which are annotated with this attribute: if a declaration has a universe metavariable corresponding to such a universe, we warn
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
117/114 |
Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Homology.lean,Mathlib/AlgebraicGeometry/Scheme.lean,Mathlib/AlgebraicGeometry/Spec.lean,Mathlib/RepresentationTheory/Continuous/TopRep.lean,Mathlib/Topology/Specialization.lean,MathlibTest/CategoryTheory/ConcreteCategory/TopModuleCat.lean |
7 |
11 |
['felixpernegger', 'github-actions', 'grunweg', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
30-62681 30 days ago |
30-62997 30 days ago |
48-56424 48 days |
0 |
| 44679 |
Altabeh author:Altabeh |
feat(LinearAlgebra/FiniteDimensional/Lemmas): dimension counts in exa… |
Add dimension formulas for exact sequences of vector spaces over a division ring `K`:
* `Function.Exact.finrank_range_add_finrank_range`: if `A → B → C` is exact (maps `f`, `g`) and `B`
is finite-dimensional, then `finrank (range f) + finrank (range g) = finrank B`.
* `Function.Exact.linearEquivQuotientRangeProdKer`: if `A → B → C → D → E` is exact (maps
`f, g, h, j`), then `C ≃ₗ[K] (B ⧸ range f) × ker j`.
* `Function.Exact.finrank_eq_finrank_quotient_range_add_finrank_ker`: hence, when `B` and `D` are
finite-dimensional, `finrank C = finrank (B ⧸ range f) + finrank (ker j)`.
---
The splitting is noncomputable, meaning it picks a complement of `ker h` in `C`. These statements are the counting steps used, for example, when comparing Betti numbers along long exact sequences.
**These are basic results that have been written by myself. The only use of AI was to write the comments and test.** |
t-algebra
new-contributor
label:t-algebra$ |
34/0 |
Mathlib/LinearAlgebra/FiniteDimensional/Lemmas.lean |
1 |
5 |
['Altabeh', 'github-actions', 'grunweg'] |
nobody |
30-30782 30 days ago |
30-64585 30 days ago |
30-66452 30 days |
0 |
| 44199 |
emlis42 author:emlis42 |
feat(Order): add `EReal.coe_cs{Sup, Inf}` |
This PR adds `WithTop.leftOrdContinuous_coe`, and adds `WithBotTop` and `EReal` version and `EReal.coe_c{s, i}{Sup, Inf}` as consequences.
Discussed here: [Is there code for X? > Lemmas relating `Real.toEReal` and `sSup`/`sInf` of images](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Lemmas.20relating.20.60Real.2EtoEReal.60.20and.20.60sSup.60.2F.60sInf.60.20of.20images/with/626667637) |
t-order
large-import
|
98/0 |
Mathlib/Data/EReal/Operations.lean,Mathlib/Order/CompleteLatticeIntervals.lean,Mathlib/Order/OrdContinuous.lean,Mathlib/Order/WithBotTop.lean |
4 |
10 |
['SnirBroshi', 'emlis42', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
30-4848 30 days ago |
30-4848 30 days ago |
44-23648 44 days |
0 |
| 42667 |
gasparattila author:gasparattila |
chore: make `Set.inclusion` semireducible |
It is currently an abbrev, which confuses `fun_prop` due to dependent types in lemmas like `Topology.IsEmbedding.inclusion`. After this change, `fun_prop` will be able to prove goals like `IsEmbedding f → IsEmbedding (Set.inclusion h ∘ f)`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
18/15 |
Mathlib/Algebra/Algebra/Subalgebra/Directed.lean,Mathlib/Combinatorics/Compactness.lean,Mathlib/Data/Set/Inclusion.lean,Mathlib/Data/Set/UnionLift.lean,Mathlib/Logic/Equiv/Set.lean,Mathlib/ModelTheory/Fraisse.lean,Mathlib/ModelTheory/PartialEquiv.lean,Mathlib/ModelTheory/Substructures.lean,Mathlib/Order/CountableDenseLinearOrder.lean,Mathlib/Topology/Category/TopCat/Opens.lean,Mathlib/Topology/Covering/Basic.lean,Mathlib/Topology/UniformSpace/UniformEmbedding.lean |
12 |
4 |
['gasparattila', 'github-actions', 'plp127'] |
nobody |
29-49557 29 days ago |
66-64686 66 days ago |
66-82709 66 days |
0 |
| 43570 |
kim-em author:kim-em |
refactor(AlgebraicGeometry/Modules): transport pushforward along Opens.map functoriality isos |
This PR defines `Scheme.Modules.pushforwardId` and `pushforwardComp` by transporting the sheaf-of-modules isomorphisms along the existing `Opens.mapId` and `Opens.mapComp` (via `SheafOfModules.pushforwardCongr₂`) rather than by identifying `Opens.map (𝟙 X).base` with `𝟭` and `Opens.map (f ≫ g).base` with `Opens.map g.base ⋙ Opens.map f.base` by unfolding `Opens.map`. The componentwise simp lemmas become `M.presheaf.map_id` rather than `rfl`, and the pseudofunctor coherence fields are discharged explicitly since `cat_disch` no longer finds them by reflexivity. Also adds the simp lemma `Adj.eqToHom_τl`.
It is extracted from Paul Reichert's experiment making `Functor.comp` and `Functor.id` `instance_reducible` (https://github.com/leanprover-community/mathlib4/compare/master...leanprover-community:mathlib4-nightly-testing:datokrat/functorcomp, discussed at https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/backward.2EisDefEq.2ErespectTransparency), and depends on https://github.com/leanprover-community/mathlib4/pull/43569. The diff relative to that PR is https://github.com/kim-em/mathlib4/compare/associators-sheaves...opens-map.
🤖 Prepared with Claude Code |
tech debt |
516/139 |
Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pullback.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pushforward.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PushforwardContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/AlgebraicGeometry/Modules/Sheaf.lean,Mathlib/CategoryTheory/Adjunction/CompositionIso.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Adj.lean,Mathlib/Topology/Sheaves/Module.lean |
10 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
29-40886 29 days ago |
42-44514 42 days ago |
60-62237 60 days |
0 |
| 44740 |
user202729 author:user202729 |
chore(Algebra/Ring/CompTypeclasses): fix a typo and reformat slightly |
Change `σ₂₃` to `σ` in the header, this one is clearly a typo.
Do some minor reformatting for the rest of the file, which I think make it nicer.
---
|
t-algebra
new-contributor
label:t-algebra$ |
7/11 |
Mathlib/Algebra/Ring/CompTypeclasses.lean |
1 |
3 |
['github-actions', 'user202729', 'vihdzp'] |
nobody |
29-34738 29 days ago |
29-34846 29 days ago |
29-34773 29 days |
0 |
| 44161 |
tb65536 author:tb65536 |
refactor(Analysis/Normed/Unbundled/SeminormFromConst): deprecate `seminormFromConst'` |
Currently `seminormFromConst'` is a plain function, and `seminormFromConst` is the same function as ring seminorm under additional assumptions. But it turns out that these additional assumptions are not necessary.
This PR removes these additional assumptions and deprecates `seminormFromConst'`.
This required tinkering with the API slightly, so I also took the liberty of cleaning up some of these pre-`grw` proofs.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis |
128/142 |
Mathlib/Analysis/Normed/Unbundled/IsPowMulUnique.lean,Mathlib/Analysis/Normed/Unbundled/SeminormFromConst.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
29-20699 29 days ago |
29-20757 29 days ago |
45-34108 45 days |
1 |
| 44668 |
justus-springer author:justus-springer |
chore(*): fix citation links split across lines |
CommonMark (the Markdown standard that's used in doc-gen) does not allow line breaks between link text and link label (this behavior is documented [here](https://spec.commonmark.org/0.31.2/#example-543)). That means these citations don't get rendered correctly. The fix is to add line break before the end of the link label.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
LLM-generated |
26/28 |
Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/Jordan/Basic.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/CategoryTheory/Enriched/Basic.lean,Mathlib/Geometry/Manifold/Submersion.lean,Mathlib/GroupTheory/Subsemigroup/Center.lean,Mathlib/ModelTheory/Basic.lean,Mathlib/NumberTheory/Pell.lean,Mathlib/RingTheory/Polynomial/Chebyshev.lean,Mathlib/RingTheory/ZMod/UnitsCyclic.lean,Mathlib/Topology/MetricSpace/Snowflaking.lean |
13 |
7 |
['Multramate', 'github-actions', 'justus-springer'] |
nobody |
29-11706 29 days ago |
29-11763 29 days ago |
29-44218 29 days |
0 |
| 44610 |
plp127 author:plp127 |
chore: dualize `HeytingAlgebra` more |
Use `to_dual_for` to connect `GeneralizedHeytingAlgebra.mk` and `GeneralizedHeytingAlgebra.le_himp_iff` with their duals. Also dualize some `BiheytingAlgebra` declarations.
---
- [x] depends on: #44608
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
37/84 |
Mathlib/Order/Heyting/Basic.lean |
1 |
3 |
['github-actions', 'mathlib-dependent-issues', 'plp127'] |
nobody |
29-5817 29 days ago |
29-5969 29 days ago |
29-13063 29 days |
2 |
| 44762 |
Julian-Kuelshammer author:Julian-Kuelshammer |
feat(Combinatorics/Enumerative/Catalan/BracketingFunction): adds Huang-Tamari's bracketing functions |
This PR defines bracketing functions, an elementary description of the Tamari lattice. This PR is intentially kept short and just adds the definition and a bit of basic API. There are potential follow-ups proving that these are counted by the Catalan numbers and giving the lattice instance, for a preview see https://github.com/Julian-Kuelshammer/ExtensionClosedSubcategoriesOfAn/blob/main/ExtensionClosedSubcategoriesOfAn/BracketingFunctions.lean
A first version of the file was created with the help of Aristotle and Claude.
---
|
new-contributor
t-combinatorics
LLM-generated
|
102/0 |
Mathlib.lean,Mathlib/Combinatorics/Enumerative/Catalan/BracketingFunction.lean |
2 |
4 |
['Julian-Kuelshammer', 'github-actions'] |
nobody |
29-5223 29 days ago |
29-5279 29 days ago |
29-5206 29 days |
0 |
| 44783 |
ZRTMRH author:ZRTMRH |
feat(Analysis/MeanInequalities): n-ary ℓ^p monotonicity and Lyapunov's inequality |
Add finite-sum versions of the two-term power inequalities in `Analysis/MeanInequalitiesPow.lean`, in `ℝ≥0`, `ℝ` and `ℝ≥0∞`:
* `sum_rpow_le_rpow_sum`: `∑ i ∈ s, f i ^ p ≤ (∑ i ∈ s, f i) ^ p` for `1 ≤ p`
* `rpow_sum_rpow_le`: the `ℓ^p` (quasi)norm `(∑ i ∈ s, f i ^ p) ^ (1 / p)` is antitone in `p > 0`
* `rpow_sum_le_sum_rpow`: `(∑ i ∈ s, f i) ^ p ≤ ∑ i ∈ s, f i ^ p` for `0 < p ≤ 1`
Also add Lyapunov's inequality in `Analysis/MeanInequalities.lean`, `NNReal.lyapunov_inequality` and `Real.lyapunov_inequality_of_nonneg`: the weighted moments `t ↦ ∑ i ∈ s, w i * f i ^ t` are log-convex on `[0, ∞)`.
The code was refined with AI assistance (Claude). The code has been reviewed by the author.
Discussion on zulip: [ℓp norm monotonicity for finite sums](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/.E2.84.93p.20norm.20monotonicity.20for.20finite.20sums)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis
LLM-generated
new-contributor
|
122/0 |
Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/MeanInequalitiesPow.lean |
2 |
3 |
['ZRTMRH', 'github-actions'] |
nobody |
28-55585 28 days ago |
28-55635 28 days ago |
28-56888 28 days |
0 |
| 43885 |
plp127 author:plp127 |
refactor: reduce defeq abuse in `Representation.asModule` |
Reduce defeq abuse around `Representation.asModule` by adding explicitly uses of `Representation.asModuleEquiv` to convert between `V` and `ρ.asModule`. Also reorganize some `@[simp]` lemmas and fix some naming issues.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
tech debt
label:t-algebra$ |
70/89 |
Mathlib/RepresentationTheory/Basic.lean,Mathlib/RepresentationTheory/Intertwining.lean,Mathlib/RepresentationTheory/Rep/Iso.lean,Mathlib/RepresentationTheory/Submodule.lean,Mathlib/RepresentationTheory/Subrepresentation.lean |
5 |
21 |
['JX-Mo', 'github-actions', 'plp127'] |
nobody |
28-50999 28 days ago |
29-4889 29 days ago |
53-64785 53 days |
0 |
| 44214 |
ZRTMRH author:ZRTMRH |
feat(Analysis/SpecialFunctions): taylor series bounds for sin and cos |
Adds `Mathlib/Analysis/SpecialFunctions/Trigonometric/SeriesBounds.lean` with three groups of results:
1. Remainder bounds on the unit disc at every order: `Complex.sin_series_bound`, `Complex.cos_series_bound` and their real forms. Ported from #29355, taken over with the author's agreement. This PR supersedes #29355, which can be closed when this lands.
2. `Real.sum_lt_sin_of_pos`, `Real.sin_lt_sum_of_pos`, `Real.sum_lt_cos_of_pos`, and `Real.cos_lt_sum_of_pos`: `sin x` and `cos x` lie between consecutive partial sums of their Taylor series. Yury posted on Zulip in October 2025 with a request that someone open a PR for it ([Upper and Lower Bounds of Cosine](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Upper.20and.20Lower.20Bounds.20of.20Cosine/near/546287708)), it had not been opened.
4. Six low-order corollaries, as completion to `one_sub_sq_div_two_lt_cos` and `sin_gt_sub_cube` which Mathlib already has: `cos_lt/le_one_sub_sq_div_two_add_pow_four`, `sin_lt/le_sub_cube_add_pow_five`, and `sub_cube_add_pow_five_lt/le_sin` for negative arguments.
The 6 low-order corollaries and the docstrings were written with AI assistance (Claude). The code has been reviewed by the author.
Co-authored-by: Geoffrey Irving <irving@naml.us>
Co-authored-by: Yury G. Kudryashov <urkud@urkud.name>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
LLM-generated
new-contributor
t-analysis
|
302/0 |
Mathlib.lean,Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/SeriesBounds.lean |
3 |
53 |
['SnirBroshi', 'ZRTMRH', 'github-actions', 'wwylele'] |
nobody |
28-43445 28 days ago |
28-43568 28 days ago |
38-50182 38 days |
0 |
| 44696 |
Hagb author:Hagb |
feat(Logic/Relation,Order/WellFounded): lemmas about `Acc`, `WellFounded`, and `Relation.Map` |
- `Acc (Relation.Map r f f) (f a)` and `WellFounded (Relation.Map r f f)` imply `Acc r a` and `WellFounded r` respectively;
- They are equivalent respectively if `f` is injective.
Suggested by @plp127 in https://github.com/leanprover-community/mathlib4/pull/39774#discussion_r3618397529
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
17/0 |
Mathlib/Logic/Relation.lean,Mathlib/Order/WellFounded.lean |
2 |
19 |
['Hagb', 'SnirBroshi', 'github-actions', 'plp127'] |
nobody |
28-38214 28 days ago |
29-8522 29 days ago |
29-84480 29 days |
0 |
| 44712 |
plp127 author:plp127 |
chore: rename arguments to `Shrink.rec` |
Name the motive `motive` and name the minor premises according to their contents. While we're here, also unexpose `Shrink.rec`, which is the last exposed declaration in this file, so also remove the `@[expose]` from the `@[expose] public section` at the top of the file because none of the declarations are actually exposed.
Also add a docstring.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
tech debt
t-logic
|
10/10 |
Mathlib/Logic/Small/Defs.lean,scripts/nolints.json |
2 |
2 |
['github-actions', 'vihdzp'] |
nobody |
28-32549 28 days ago |
29-4071 29 days ago |
29-53570 29 days |
0 |
| 44684 |
josephqian507 author:josephqian507 |
feat(LinearAlgebra/Matrix): add row equivalence and echelon form lemmas |
feat(LinearAlgebra/Matrix): add row equivalence and echelon form lemmas
This adds lemmas to bridge the current mathlib definition of row equivalence with the idea of two matrices that have the same null space. It also adds a proof that the reduced row echelon form of a matrix is unique. LLMs were used to fill in sorrys for some proofs (specifically, rowEquivalent_of_mul_eq_zero, rowEquivalent_iff_ker_eq, and much of RrefUniqueness.lean)
Co-authored-by: Junye Ji <junyej@uw.edu>
Co-authored-by: Dhruv Bhatia <dbhatia1@uw.edu>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
new-contributor
large-import
LLM-generated
label:t-algebra$ |
501/1 |
Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Echelon/Basic.lean,Mathlib/LinearAlgebra/Matrix/Echelon/RrefUniqueness.lean,Mathlib/LinearAlgebra/Matrix/ElementaryRowOperations.lean |
4 |
3 |
['github-actions', 'josephqian507'] |
nobody |
28-29044 28 days ago |
28-29168 28 days ago |
29-27097 29 days |
0 |
| 44784 |
shunfeng8421 author:shunfeng8421 |
feat(Combinatorics): prove finitary Van der Waerden by compactness |
Proves the finitary version of Van der Waerden's theorem:
```lean
theorem van_der_waerden (k : ℕ) {κ : Type*} [Finite κ] [Nonempty κ] :
∃ N : ℕ, ∀ C : Fin (N + 1) → κ, HasMonoAPWithin k N C
```
i.e. every finite coloring of a sufficiently large initial segment `[0, N]`
contains a monochromatic arithmetic progression of length `k`.
This resolves the TODO in `Mathlib/Combinatorics/HalesJewett.lean` asking for a
finitary version of Van der Waerden's theorem.
## Proof sketch
The proof goes by compactness (Rado's selection lemma), the route explicitly
suggested in the TODO ("either by compactness or by modifying the current
proof"):
1. Assume the theorem fails: every segment `[0, N]` admits a "bad" coloring with
no monochromatic AP of length `k`.
2. For each finite set `s ⊆ ℕ`, pick the bad coloring of the covering interval
`[0, s.sup id]` and extend it (arbitrarily) to all of `ℕ`.
3. **Rado's selection lemma** (`Finset.rado_selection`, from
`Mathlib/Combinatorics/Compactness.lean`, itself proved via Tychonoff's
theorem) stitches these local bad colorings into a global coloring
`χ : ℕ → κ` that agrees with some local bad coloring on every finite set.
4. The **infinite** Van der Waerden theorem — `Combinatorics.exists_mono_homothetic_copy`,
a corollary of Hales–Jewett — produces a monochromatic AP `(a * t + b)_{t < k}`
in `χ`.
5. Viewed as a finite set, this AP lies inside the covering interval of some
finite set `t` on which the bad coloring agrees with `χ`, so it is also
monochromatic there — contradicting badness of that local coloring.
No explicit bounds are produced; this is purely an existence proof, which is
exactly what the compactness route buys.
## New definitions
- `Combinatorics.HasMonoAPWithin k N C`: the coloring `C : Fin (N+1) → κ` of the
initial segment `[0, N]` contains a monochromatic AP of length `k`.
## Changes
- `Mathlib/Combinatorics/HalesJewett.lean`: removed the completed TODO item
("Prove a finitary version of Van der Waerden's theorem ... by compactness"),
added a pointer to the new theorem in the "Main results" list.
- `Mathlib/Combinatorics/VanDerWaerden.lean`: new file.
## Notes for the reviewer
- The file header still contains the `[Author]` placeholder: fill in your name
before committing.
-------
**AI disclosure**: AI-assisted tools were used to draft the proof outline and Lean code, and to debug type/simplifier issues; all contributions were reviewed and verified by the author, who takes full responsibility for the correctness of the mathematics and code.
|
t-combinatorics
new-contributor
LLM-generated
|
100/3 |
Mathlib.lean,Mathlib/Combinatorics/HalesJewett.lean,Mathlib/Combinatorics/VanDerWaerden.lean |
3 |
5 |
['github-actions', 'grunweg', 'shunfeng8421'] |
nobody |
27-59947 27 days ago |
27-59947 27 days ago |
27-67537 27 days |
0 |
| 44147 |
eric-wieser author:eric-wieser |
feat(Data/List/Sort): lemmas about sublists and orderedInsert |
Add `List.orderedInsert_eq_cons_of_forall_rel`, and characterize when one `orderedInsert` is a sublist of another (`List.orderedInsert_sublist_orderedInsert_iff`, `List.orderedInsert_sublist_orderedInsert_iff_of_notMem`, `List.erase_sublist_iff_sublist_orderedInsert_of_notMem`), a permutation of another (`List.orderedInsert_perm_orderedInsert_iff`, `List.orderedInsert_perm_orderedInsert_iff_right`), or a sub-permutation of another (`List.orderedInsert_subperm_orderedInsert_iff`).
Also add `List.perm_cons_right_iff : a :: l ~ b :: l ↔ a = b`, the `cons` version of `List.perm_append_right_iff`.
These are split out from work on a basis for `CliffordAlgebra`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-data
LLM-generated
|
48/9 |
Mathlib/Data/List/Perm/Basic.lean,Mathlib/Data/List/Sort.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
27-32801 27 days ago |
30-35662 30 days ago |
34-70388 34 days |
0 |
| 42878 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Star): the nth star graph is contained in a graph iff max degree is at least `n` |
- `starGraph (r : W) ⊑ G ↔ Nat.card W ≤ G.maxDegree + 1`
- `starGraph v ⊑ starGraph w ↔ Nonempty (V ↪ W)`
- `starGraph v ⊴ starGraph w ↔ Nonempty (V ↪ W)`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
86/1 |
Mathlib/Combinatorics/SimpleGraph/Star.lean |
1 |
7 |
['SnirBroshi', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
27-31934 27 days ago |
27-32004 27 days ago |
72-15433 72 days |
0 |
| 42865 |
WilliamCoram author:WilliamCoram |
refactor: change definition of operator norm to depend only on modules over semirings |
We restructure the operator norm definition so that `opNorm` only takes in modules over semirings.
This is a reduction from `NontriviallyNormedField`; the goal of this is to allow us to have theories of operator norms in different settings (e.g. modules over Banach-Tate rings) without making duplicate statements.
AI disclosure: The need for the new operator norm definition appeared in a project I was using Claude to help autoformalise (see [Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/compact.20operators.20and.20Fredholm.20determinant/with/572850121)). However, this generalisation of the operator norm definition was hand-written to avoid Claude's duplication it created.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis |
92/56 |
Mathlib/Analysis/Calculus/ContDiff/Convolution.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Normed/Operator/Basic.lean,Mathlib/Geometry/Manifold/Riemannian/Basic.lean |
4 |
2 |
['WilliamCoram', 'github-actions'] |
nobody |
26-59776 26 days ago |
26-59824 26 days ago |
26-59751 26 days |
0 |
| 44845 |
DanielJHorton author:DanielJHorton |
feat(LinearAlgebra/PiTensorProduct/Projective): implement properties of tensor products of families of projective modules |
This PR adds a new file `LinearAlgebra/PiTensorProduct/Projective` which develops the properties of tensor products of families of projective modules. Results for binary tensor products from `LinearAlgebra/Contraction` are extended to `PiTensorProduct`, and the main result `dualDistribEquiv` of `LinearAlgebra/PiTensorProduct/Dual` is generalized from free modules over a ring to projective modules over a semiring.
The major results are:
- `PiTensorProduct.Projective` - An instance proving that the tensor product of a finite collection of projective modules is projective.
- `PiTensorProduct.piTensorHomEquiv` - A linear equivalence whose underlying linear map is `piTensorHomMap` from `LinearAlgebra/PiTensorProduct/Basic`.
- `PiTensorProduct.dualDistribEquivOfProjective` - A linear equivalence whose underlying map is `dualDistrib` from `LinearAlgebra/PiTensorProduct/Dual`. This generalizes `dualDistribEquiv`, replacing hypotheses `[CommRing R]` and `[Module.Free R (P i)]` with `[CommSemiring R]` and `[Module.Projective R (P i)]`.
This PR also adds a small definition `dualBaseRingEquiv (R : Type*) [CommSemiring R] : Dual R R ≃ₗ[R] R` to `LinearAlgebra/Dual/Defs` (as well as associated `@[simp]` lemmas) which were used in some of the proofs.
Disclamer: I am still a relatively new contributor here and this is my largest PR so far. I am grateful for the time of any reviewers who look at this PR and I am happy to answer any questions about implementation/design choices.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
216/1 |
Mathlib.lean,Mathlib/LinearAlgebra/Dual/Defs.lean,Mathlib/LinearAlgebra/PiTensorProduct/Projective.lean |
3 |
1 |
['github-actions'] |
nobody |
26-57585 26 days ago |
26-57646 26 days ago |
26-59315 26 days |
0 |
| 43472 |
gasparattila author:gasparattila |
refactor: replace `SemilatticeSup.sup` with `max` |
This PR replaces the `sup` field of `SemilatticeSup` with `Max.max`. This will enable further refactors such as redefining `SemilatticeSup` using `Std.LawfulOrderSup` or making `LinearOrder` extend `Lattice`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #44002
[](https://gitpod.io/from-referrer/)
|
t-order |
161/194 |
Archive/MinimalSheffer.lean,Archive/Robbins.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Submodule.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Submodule.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Subsemigroup/Basic.lean,Mathlib/Algebra/Lie/Subalgebra.lean,Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/Ring/Idempotent.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Tropical/Lattice.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/AlgebraicTopology/SimplicialComplex/Basic.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/Convex/SimplicialComplex/Basic.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Analysis/Normed/Module/MStructure.lean,Mathlib/Analysis/Normed/Module/Seminorm/Basic.lean,Mathlib/Basic/PEquiv.lean,Mathlib/Basic/Real/Basic.lean,Mathlib/CategoryTheory/Groupoid/Subgroupoid.lean,Mathlib/CategoryTheory/Limits/Preorder.lean,Mathlib/CategoryTheory/Sites/Coverage.lean,Mathlib/CategoryTheory/Sites/Grothendieck.lean,Mathlib/CategoryTheory/Sites/Pretopology.lean,Mathlib/CategoryTheory/Sites/Sieves/Basic.lean,Mathlib/CategoryTheory/Subfunctor/Basic.lean,Mathlib/CategoryTheory/Subfunctor/SubmonoidFunctor.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/Combinatorics/Graph/Lattice.lean,Mathlib/Computability/Reduce.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/Finset/Lattice/Basic.lean,Mathlib/Data/Multiset/UnionInter.lean,Mathlib/Data/Semiquot.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Dynamics/Circle/RotationNumber/TranslationNumber.lean,Mathlib/Geometry/Convex/Cone/Face/Lattice.lean,Mathlib/Geometry/Manifold/StructureGroupoid.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/ModelTheory/Substructures.lean,Mathlib/Order/BooleanSubalgebra.lean,Mathlib/Order/Booleanisation.lean,Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/Copy.lean,Mathlib/Order/Defs/Lattice.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/Order/FixedPoints.lean,Mathlib/Order/GaloisConnection/Basic.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Heyting/Regular.lean,Mathlib/Order/Hom/Order.lean,Mathlib/Order/Ideal.lean,Mathlib/Order/Interval/Basic.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/Partition/Basic.lean,Mathlib/Order/Partition/Finpartition.lean,Mathlib/Order/Preorder/Finsupp.lean,Mathlib/Order/PropInstances.lean,Mathlib/Order/Setoid/Basic.lean,Mathlib/Order/Sublattice.lean,Mathlib/Order/Sum/Lattice.lean,Mathlib/Order/WithBot.lean,Mathlib/Probability/Process/Filtration.lean,Mathlib/RingTheory/Congruence/Basic.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Small.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/RingTheory/TwoSidedIdeal/Lattice.lean,Mathlib/RingTheory/UniqueFactorizationDomain/FactorSet.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/Topology/Algebra/Group/GroupTopology.lean,Mathlib/Topology/Algebra/Module/ClosedSubmodule.lean,Mathlib/Topology/Category/TopCat/OpenNhds.lean,Mathlib/Topology/LocallyFinsupp.lean,Mathlib/Topology/MetricSpace/BundledFun.lean,Mathlib/Topology/Sets/Compacts.lean,Mathlib/Topology/UniformSpace/Basic.lean,MathlibTest/DefEqAbuse.lean |
92 |
11 |
['JovanGerb', 'gasparattila', 'github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
26-51446 26 days ago |
26-51530 26 days ago |
35-57307 35 days |
0 |
| 43324 |
plp127 author:plp127 |
feat: fine uniformity |
This PR continues the work from #24016.
Original PR: https://github.com/leanprover-community/mathlib4/pull/24016
---
- [x] depends on: #43312 |
t-topology |
130/0 |
Mathlib.lean,Mathlib/Topology/UniformSpace/FineUniformity.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
26-46404 26 days ago |
26-46458 26 days ago |
26-47109 26 days |
0 |
| 44060 |
wwylele author:wwylele |
feat(Geometry/Euclidean): lemma about excenters and volumes |
This proves that volume = inradius * surface / n
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry
maintainer-merge
|
112/0 |
Mathlib.lean,Mathlib/Geometry/Euclidean/Volume/Incenter.lean |
2 |
8 |
['SnirBroshi', 'copilot-pull-request-reviewer', 'github-actions', 'jsm28', 'wwylele'] |
nobody |
26-42610 26 days ago |
26-42665 26 days ago |
48-42938 48 days |
2 |
| 44858 |
vihdzp author:vihdzp |
feat: connect regular cardinal orders to regular cardinals |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-set-theory |
10/0 |
Mathlib/SetTheory/Cardinal/Regular.lean |
1 |
1 |
['github-actions'] |
nobody |
26-17479 26 days ago |
26-17534 26 days ago |
26-17461 26 days |
0 |
| 44855 |
vihdzp author:vihdzp |
feat: link `Order.enum` to `Subtype.orderIsoOfNat` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-set-theory
large-import
|
15/3 |
Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Cofinality/Enum.lean |
2 |
2 |
['github-actions', 'vihdzp'] |
nobody |
26-15994 26 days ago |
26-17353 26 days ago |
26-17280 26 days |
0 |
| 44831 |
scottdhughes author:scottdhughes |
feat(Analysis/MeanInequalitiesPow): add a real power difference bound |
Add `Real.abs_rpow_sub_rpow_le` in `Mathlib/Analysis/MeanInequalitiesPow.lean`: for nonnegative real bases and `0 ≤ p ≤ 1`,
```lean
|a ^ p - b ^ p| ≤ |a - b| ^ p
```
Provide a direct scalar API for downstream fractional-power regularity estimates. Derive the bound from the neighboring `Real.rpow_add_le_add_rpow`, then handle the two input orders. Include both exponent endpoints. Add one lemma and its docstring, with no new imports.
---
Local validation on Lean/Mathlib 4.35.0:
- `lake build Mathlib.Analysis.MeanInequalitiesPow`
- `lake exe lint-style Mathlib.Analysis.MeanInequalitiesPow`
- Fresh source elaboration, exported-type and axiom checks, plus all 15 default declaration linters for the new lemma.
The axiom check reports only `propext`, `Classical.choice` and `Quot.sound`.
AI assistance: Codex adapted an existing downstream proof, searched Mathlib and relevant open PRs, drafted this description, and ran the local checks.
|
t-analysis
new-contributor
LLM-generated
|
19/0 |
Mathlib/Analysis/MeanInequalitiesPow.lean |
1 |
3 |
['copilot-pull-request-reviewer', 'github-actions', 'scottdhughes'] |
nobody |
25-75075 25 days ago |
26-78239 26 days ago |
26-78166 26 days |
0 |
| 44537 |
vincentqb author:vincentqb |
feat(Analysis/Convex/Cone): prove that open sets have open hulls |
This PR proves `ConvexCone.isOpen_hull`: if addition and multiplication by each fixed scalar are continuous, the convex cone hull of an open set is open. It defines `ConvexCone.interior`, with coercion, membership, and equality lemmas parallel to the closure API. The hull theorem then follows from cone minimality.
The original hypotheses do not suffice, see #44689 for a counterexample.
---
AI-assisted contribution.
|
t-analysis
LLM-generated
new-contributor
file-removed
|
57/24 |
Mathlib.lean,Mathlib/Analysis/Convex/Cone/Basic.lean,Mathlib/Analysis/Convex/Cone/Interior.lean,Wanted.lean,Wanted/Analysis/Convex/Cone/Basic.lean |
5 |
15 |
['github-actions', 'pepamontero', 'vincentqb'] |
nobody |
25-56110 25 days ago |
25-56213 25 days ago |
33-55374 33 days |
0 |
| 44846 |
artie2000 author:artie2000 |
feat(Algebra/Polynomial): variants of Polynomial.reverse functional equation |
Split from https://github.com/leanprover-community/mathlib4/pull/44338 - these were helper lemmas for a discarded approach.
AI usage disclosure: ChatGPT 5.5 was used to split this PR from https://github.com/leanprover-community/mathlib4/pull/44338. All of the changes in this PR were made by a human.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
25/9 |
Mathlib/Algebra/Polynomial/Reverse.lean |
1 |
9 |
['SnirBroshi', 'artie2000', 'github-actions'] |
nobody |
25-47859 25 days ago |
25-48110 25 days ago |
26-1530 26 days |
0 |
| 42488 |
joelriou author:joelriou |
feat(AlgebraicTopology/SimplicialSet): the fundamental groupoid of a Kan complex |
In the file `Mathlib/AlgebraicTopology/SimplicialSet/FundamentalGroupoid/Basic.lean`,
the fundamental groupoid of any simplicial set `X` was defined. In this category,
morphisms can be represented by finite compositions of edges and their formal inverses.
In this PR, we show that if `X` is a Kan complex, then a morphism in `FundamentalGroupoid X` can be represented by a single edge, and commutative triangles in the fundamental groupoid of `X` all arise from `Edge.CompStruct` structures (i.e. `2`-simplices of `X`).
---
- [x] depends on: #44775
- [x] depends on: #42523
- [x] depends on: #42526
- [x] depends on: #42527
- [x] depends on: #38216
- [x] depends on: #42473
- [x] depends on: #38664
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology
tech debt
|
261/3 |
Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialSet/CompStruct.lean,Mathlib/AlgebraicTopology/SimplicialSet/CompStructTruncated.lean,Mathlib/AlgebraicTopology/SimplicialSet/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/KanComplex/FundamentalGroupoid.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean |
6 |
7 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
25-23573 25 days ago |
25-23620 25 days ago |
25-23721 25 days |
1 |
| 44900 |
justus-springer author:justus-springer |
feat(Geometry/Convex/Cone/Caratheodory): conic Carathéodory theorem |
Carathéodory's theorem (see `Analysis/Convex/Caratheodory.lean`) says that any point in the convex hull of a set can be represented as a convex combination of some affinely independent subset. This PR adds the conic version of this theorem: Every point in the conic hull (`PointedCone.hull`) of a set can be represented as a positive span of some linearly independent subset.
We basically follow the same proof strategy as in `Analysis/Convex/Caratheodory.lean`. The conic version is slightly simpler, as the weights don't have to sum to one. Also, we use strong induction on finsets directly instead of defining a minimal set (see also the refactor PR #44863).
A small helper lemma `mem_hull_finset` is also added, the finset version of `mem_hull_set`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-convex-geometry |
108/0 |
Mathlib.lean,Mathlib/Geometry/Convex/Cone/Caratheodory.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean |
3 |
1 |
['github-actions'] |
nobody |
25-3748 25 days ago |
25-3805 25 days ago |
25-3732 25 days |
0 |
| 44850 |
mcdoll author:mcdoll |
feat(Analysis/LocallyConvex): asymptotics for LCTVS and normed spaces |
Two simple lemmas for asymptotics in TVS and normed spaces.
Had to add `simp` tags and simplify some of the downstream code.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis |
68/14 |
Mathlib/Analysis/Asymptotics/Arith.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/Complex/ValueDistribution/FirstMainTheorem.lean,Mathlib/Analysis/LocallyConvex/Asymptotics.lean,Mathlib/Analysis/Polynomial/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/Base.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean |
8 |
1 |
['github-actions'] |
nobody |
24-49034 24 days ago |
26-35309 26 days ago |
26-35236 26 days |
0 |
| 44920 |
plp127 author:plp127 |
feat(Algebra/CharP): `natCast_pow_expChar` |
Prove lemmas `natCast_pow_expChar` and `intCast_pow_expChar`. Also reorganize the `variable`s to be more consistent.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
44/14 |
Mathlib/Algebra/CharP/Lemmas.lean,Mathlib/Data/Nat/Choose/Lucas.lean,Mathlib/FieldTheory/PurelyInseparable/Exponent.lean |
3 |
1 |
['github-actions', 'vihdzp'] |
nobody |
24-48623 24 days ago |
24-67250 24 days ago |
24-67177 24 days |
1 |
| 44935 |
CollinYuanjieRen author:CollinYuanjieRen |
feat(ENNReal): commute toReal with liminf and limsup for eventually finite functions |
Add eventually-finite variants of `ENNReal.liminf_toReal_eq` and `ENNReal.limsup_toReal_eq`, allowing functions with no eventual uniform finite upper bound. The existing bounded variants are unchanged.
Co-authored-by: Kalle Kytölä <kalle.kytola@aalto.fi>
---
Continues the `toReal` portion of #15115, which its author marked `help-wanted`; this does not cover all of that PR.
Validated the complete modified file with Lean 4.35.0. Codex assisted with the proofs.
|
t-topology
LLM-generated
new-contributor
|
49/1 |
Mathlib/Topology/Instances/ENNReal/Lemmas.lean |
1 |
3 |
['CollinYuanjieRen', 'github-actions'] |
nobody |
24-10593 24 days ago |
24-9308 24 days ago |
24-9235 24 days |
0 |
| 44941 |
CollinYuanjieRen author:CollinYuanjieRen |
feat(Data/Finset/Sort): add filtering and greatest insertion lemmas |
Prove that filtering commutes with `Finset.sort`, and that inserting a new greatest element appends it to the sorted list. Both lemmas work for general total, transitive, antisymmetric relations.
Continues the sorting portion of #9605 by @davikrehalt.
Codex (GPT-6 Astra) assisted with the Lean proofs.
|
t-data
LLM-generated
new-contributor
|
13/0 |
Mathlib/Data/Finset/Sort.lean |
1 |
3 |
['CollinYuanjieRen', 'github-actions'] |
nobody |
24-5894 24 days ago |
24-5956 24 days ago |
24-5883 24 days |
0 |
| 44893 |
unknown8575 author:unknown8575 |
chore(Topology/MetricSpace/Polish): generalize `IsClopenable.iUnion` to countable index types |
The proof only used ℕ to get `t' ≤ t` through index 0, but `exists_polishSpace_forall_le` already gives this directly. So the lemma now works for any countable index type, and the TODO is removed.
I used an LLM to find this TODO and draft the change. I've checked it, built it locally, and understand every line. |
t-topology
new-contributor
|
18/15 |
Mathlib/Topology/MetricSpace/Polish.lean |
1 |
5 |
['github-actions', 'plp127', 'unknown8575', 'vihdzp'] |
nobody |
23-81132 23 days ago |
23-81197 23 days ago |
25-10844 25 days |
0 |
| 44945 |
CollinYuanjieRen author:CollinYuanjieRen |
chore(Algebra/Lie): generalize subalgebra map membership |
Generalize `LieSubalgebra.mem_map_submodule` to arbitrary Lie algebra morphisms. Add `mem_map_equiv` and update the three skew-adjoint equivalence proofs.
Continues Eric Rodriguez Boidi's #7994, marked `please-adopt`.
---
Checked the five affected modules with Lean 4.36.0-rc1 and a zero-morphism client regression.
AI-assisted: Codex prepared the Lean changes; GPT-6 Astra assisted with proof checks.
|
t-algebra
LLM-generated
new-contributor
label:t-algebra$ |
9/6 |
Mathlib/Algebra/Lie/SkewAdjoint.lean,Mathlib/Algebra/Lie/Subalgebra.lean |
2 |
3 |
['CollinYuanjieRen', 'github-actions'] |
nobody |
23-63062 23 days ago |
23-63300 23 days ago |
23-63227 23 days |
0 |
| 40841 |
TJHeeringa author:TJHeeringa |
chore(Topology/Algebra): rename .equivOfInverse to .ofContinuousLinearMap |
Renames `ContinuousLinearEquiv.equivOfInverse` and `ContinuousLinearEquiv.equivOfInverse'` to `ContinuousLinearEquiv.ofContinuousLinearMap` and `ContinuousLinearEquiv.ofContinuousLinearMap'`. It reorders the order of arguments to match that of `ofLinearMap`.
---
Addresses the ToDO `*ToDo*: Improve the naiming to make it match `LinearMap.ofLinear`.` for `ContinuousLinearEquiv.equivOfInverse`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #40865
- [x] depends on: #42818
- [x] depends on: #42822
[](https://gitpod.io/from-referrer/)
|
t-topology
tech debt
|
80/25 |
Mathlib/Analysis/InnerProductSpace/TensorProduct.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Invertible.lean,Mathlib/Topology/Algebra/Module/Equiv/Basic.lean |
3 |
83 |
['TJHeeringa', 'Whysoserioushah', 'b-mehta', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
23-49555 23 days ago |
44-68911 44 days ago |
61-2015 61 days |
0 |
| 44950 |
SnirBroshi author:SnirBroshi |
feat(Order/Atoms): atoms are minimal non-`⊥` elements |
- `Minimal (· ≠ ⊥) a ↔ IsAtom a`
- `Minimal (⊥ < ·) a ↔ IsAtom a`
- `Minimal (¬IsMin ·) a ↔ IsAtom a`
The first one works for preorders, and the others require a partial order.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
16/0 |
Mathlib/Order/Atoms.lean |
1 |
1 |
['github-actions'] |
nobody |
23-45131 23 days ago |
23-45353 23 days ago |
23-45280 23 days |
0 |
| 43899 |
plp127 author:plp127 |
refactor(RepresentationTheory/Character): assume `FiniteDimensional k ρ.asModule` instead |
Change the assumptions of some theorems to `FiniteDimensional k ρ.asModule` instead of `FiniteDimensional k V`, so that typeclass inference may use `ρ` as an argument to typeclass search. Prove that irreducible representations of finite groups are finite dimensional, and use it to remove some `FiniteDimensional` assumptions.
---
- [x] depends on: #44763
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
27/12 |
Mathlib/RepresentationTheory/Basic.lean,Mathlib/RepresentationTheory/Character.lean,Mathlib/RepresentationTheory/Coinvariants.lean,Mathlib/RepresentationTheory/Irreducible.lean |
4 |
8 |
['JX-Mo', 'github-actions', 'mathlib-dependent-issues', 'plp127'] |
nobody |
23-1220 23 days ago |
23-1418 23 days ago |
42-80198 42 days |
0 |
| 44899 |
RemyDegenne author:RemyDegenne |
feat: add a class for reflexive topological vector spaces |
Define reflexive spaces and show that
- Hilbert spaces are reflexive
- finite-dimensional normed spaces are reflexive
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
The first commit of this PR was LLM-generated (it results from an interaction between me and an LLM over several steps, but the code is entirely from the LLM). Subsequent commits are my changes.
The main reason I want this class is to then introduce spaces with the Radon-Nilodym property (for properties of martingales) and show that reflexive spaces have it. |
brownian
t-analysis
LLM-generated
t-measure-probability
|
250/33 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Reflexive.lean,Mathlib/Analysis/Normed/Module/DoubleDual.lean,Mathlib/Analysis/Normed/Module/HahnBanach.lean,Mathlib/MeasureTheory/Function/AEEqOfIntegral.lean |
5 |
2 |
['github-actions', 'peakpoint'] |
nobody |
22-83484 22 days ago |
25-4683 25 days ago |
25-4610 25 days |
0 |
| 29713 |
jessealama author:jessealama |
feat(Algebra/Homology): add Euler–Poincaré formula |
This PR builds on the generalized Euler characteristic framework from #31121 to prove the Euler-Poincaré formula for chain complexes.
PR #31121 defines the Euler characteristic for general homological complexes. This PR specializes those definitions to ℤ-indexed chain complexes and proves the main Euler-Poincaré theorem.
### Main result (in `EulerPoincare.lean`)
* `ChainComplex.eulerChar_eq_homologyEulerChar`: For ℤ-indexed bounded chain complexes of finite-dimensional modules over a division ring, the alternating sum of chain dimensions equals the alternating sum of homology dimensions.
### Supporting lemmas
The file also provides dimension lemmas generalized to arbitrary `HomologicalComplex (ModuleCat k) c` (not just ℤ-indexed chain complexes):
* `HomologicalComplex.dFrom_zero_range` / `dTo_zero_range`: zero range when the target/source object is zero
* `HomologicalComplex.dFrom_range_finrank_eq_d` / `dTo_range_finrank_eq_d`: range of `dFrom`/`dTo` has the same dimension as the underlying differential
* `HomologicalComplex.range_dTo_le_ker_dFrom`: range of `dTo` is contained in the kernel of `dFrom`
|
t-algebra
new-contributor
label:t-algebra$ |
264/0 |
Mathlib.lean,Mathlib/Algebra/Homology/EulerPoincare.lean |
2 |
26 |
['github-actions', 'jessealama', 'joelriou', 'kim-em', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
nobody |
22-62357 22 days ago |
22-62566 22 days ago |
58-1395 58 days |
0 |
| 42966 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Hasse): smaller path graphs are contained in bigger ones |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
38/2 |
Mathlib/Combinatorics/SimpleGraph/Hasse.lean |
1 |
4 |
['b-mehta', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
22-43576 22 days ago |
22-43710 22 days ago |
76-13547 76 days |
0 |
| 44991 |
vihdzp author:vihdzp |
refactor(SetTheory/Ordinal/Notation): deprecate module |
This module has not seen any major changes since at least the port and is unlikely to be used downstream. So we deprecate it altogether.
---
I'm opening this PR as a way to spark some discussion. There's a lot of things that can be improved about this module. `NFBelow` is unnecessary and `NF` can be characterized directly. The order structure on `ONote` is not computable but could made to be. Exponentiation can be given a more direct characterization. The construction of fundamental sequences is ad-hoc, and we could instead create a larger API around them. And so on.
On a more practical level, the convoluted proofs of this module are quite prone to breaking, and have done so seemingly every time I touch any part of the ordinal API. If you look at the history of this file, you'll largely see refactors which have required convoluted adaptations on this particular module.
Two years ago, I [rewrote this entire file](https://github.com/vihdzp/ordinal-notation/blob/master/OrdinalNotation/Notations/Cantor.lean) in an experimental, since archived repository of mine. I considered upstreaming these changes to Mathlib. However, there were three things that gave me pause.
1. This would be a thousand line PR. There's no way to split this up without losing functionality, since it's a complete rewrite which changes most of the definitions. Perhaps I could upstream it to a new file, and deprecate the old one when done, but this doesn't address the other two points.
2. I doubt the Mathlib maintainers would be interested. There's not that many reviewers for ordinal PRs as is, and I fear this upstreaming process would be glacial. Which brings me to my third point.
3. The Cantor Normal Form is far from the only ordinal notation, and the existence of this file seems to open the doors to further developments, such as Veblen's Normal Form, or Veblen's Klammersymbolen, or the (Extended) Buchholz Ordinal Notation... which I highly doubt anyone will be willing to review.
Now, perhaps I'm wrong here. Perhaps there are a handful of Mathlib maintainers who are enthusiastic about this material. And in that case, I'll be glad to close this PR, make a new `SetTheory/Ordinal/Notation` folder, and make PRs working towards the most popular ordinal notations. But realistically, I suspect it's easier for everyone if we just deprecate this module. If anyone is ever interested on working on ordinal notations outside of Mathlib, my Zulip DMs are open. |
t-set-theory |
2/0 |
Mathlib/SetTheory/Ordinal/Notation.lean |
1 |
1 |
['github-actions'] |
nobody |
22-23101 22 days ago |
22-23275 22 days ago |
22-23202 22 days |
0 |
| 44982 |
sw1sh author:sw1sh |
feat(Data/List): define Lyndon words |
This PR adds `Mathlib/Data/List/Lyndon.lean` with the definition of Lyndon words and their two basic properties.
* `List.IsLyndon w`: the list `w` is nonempty and strictly smaller, in the lexicographic order, than each of its proper nonempty suffixes.
* `List.IsLyndon.not_hasPeriod`: a Lyndon word has no period `p` with `0 < p < w.length`; that is, it is unbordered. It is stated with `List.HasPeriod` from `Mathlib/Data/List/PeriodicityLemma.lean`.
* `List.IsLyndon.append`: if `u` and `v` are Lyndon words and `u < v`, then `u ++ v` is a Lyndon word.
Two general lemmas on the lexicographic order of lists are added along the way:
* `List.Lex.append_of_not_isPrefix`: if `Lex r u s` holds and `u` is not a prefix of `s`, then `Lex r (u ++ v) (s ++ w)` holds.
* `List.lt_append_of_ne_nil`: a list is smaller than each of its proper extensions.
A planned follow-up uses these to prove the Ehrenfeucht–Silberger theorem for infinite words: over a finite ordered alphabet, an infinite word whose sufficiently long factors are all bordered is eventually periodic. The proof cuts off longest Lyndon prefixes, which gives a non-increasing sequence of short Lyndon words.
---
AI disclosure: this code was written with Claude Code (Anthropic, model Opus 5.5) as part of a project that formalizes equivalent forms of Wolfram's Rule 30 Problem 1 (https://github.com/WolframInstitute/Rule30PrizeKit).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-data
new-contributor
LLM-generated
|
120/0 |
Mathlib.lean,Mathlib/Data/List/Lyndon.lean |
2 |
3 |
['github-actions'] |
nobody |
22-17426 22 days ago |
22-17519 22 days ago |
22-66835 22 days |
0 |
| 36937 |
Yaohua-Leo author:Yaohua-Leo |
feat(Algebra/Jordan): add first linearization lemmas for IsCommJordan |
[](https://gitpod.io/from-referrer/)
AI assistance disclosure: I used AI assistance for CI/debugging and module-structure fixes in this PR. The mathematical content and main lemmas were written by me, with help from @pelicanhere.
This PR adds a new file `Mathlib/Algebra/Jordan/Linearization.lean` containing linearization lemmas for the commutative Jordan identity.
Main declarations:
* `IsCommJordan.four_nsmul_associator_mul_add`
* `IsCommJordan.associator_mul_add`
These lemmas formalize a first linearization of the commutative Jordan identity using `associator`, following McCrimmon, Proposition 1.8.5.
---
I put these lemmas in a separate file because I expect follow-up linearization lemmas to belong naturally in the same place.
I am also happy to rename declarations or move the file if reviewers would prefer. |
t-algebra
new-contributor
label:t-algebra$ |
152/90 |
Mathlib.lean,Mathlib/Algebra/Jordan/Basic.lean,Mathlib/Algebra/Jordan/Linearization.lean |
3 |
8 |
['Yaohua-Leo', 'github-actions', 'grunweg', 'ocfnash'] |
nobody |
21-49558 21 days ago |
42-31995 42 days ago |
55-59627 55 days |
0 |
| 41675 |
joelriou author:joelriou |
feat(AlgebraicTopology): pushout diagrams in the filtration of `Δ[p] ⊗ Δ[1]` |
This will be used in #42295 in order to construct morphisms from `Δ[p] ⊗ Δ[1]` out of the data of the images of the nondegenerate `(p + 1)`-simplices of `Δ[p] ⊗ Δ[1]`.
---
- [x] depends on: #41656
- [x] depends on: #41655
- [x] depends on: #41624
- [x] depends on: #41617
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology
tech debt
|
244/15 |
Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/UnionProd.lean,Mathlib/AlgebraicTopology/SimplicialSet/ProdStdSimplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/ProdStdSimplexOne.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/Subcomplex.lean,Mathlib/CategoryTheory/Monoidal/FunctorCategory.lean |
6 |
19 |
['github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'robin-carlier'] |
nobody |
21-33212 21 days ago |
22-79263 22 days ago |
62-3214 62 days |
2 |
| 44660 |
jessealama author:jessealama |
feat(Combinatorics/SimpleGraph/Hamiltonian): close a Hamiltonian path into a Hamiltonian cycle |
Add `SimpleGraph.Walk.isHamiltonianCycle_cons`: closing a path `p` from `b` to `a` with an edge `a ~ b` gives a Hamiltonian cycle if and only if `p` is a Hamiltonian path that does not already use that edge.
This is the Hamiltonian analogue of `Walk.cons_isCycle_iff`. It was originally extracted at @YaelDillies's suggestion during review of #36376, which no longer needs it.
|
t-combinatorics |
6/0 |
Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean |
1 |
9 |
['SnirBroshi', 'YaelDillies', 'github-actions', 'jessealama'] |
nobody |
21-11625 21 days ago |
21-41707 21 days ago |
31-12314 31 days |
0 |
| 43723 |
homeowmorphism author:homeowmorphism |
feat(Topology/MetricSpace): define hyperbolic pseudometric spaces |
We define hyperbolic pseudometric spaces using the Gromov product. This will be used to define hyperbolic groups.
Co-authored-by: Katerina Hristova <katherina.hristova@gmail.com>
---
- [x] depends on: #43641
Use of AI: Claude Fable was used to look up things quickly and sketch the API, but this was mostly written (or rewritten) by hand.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology |
115/0 |
Mathlib.lean,Mathlib/Topology/Bornology/Basic.lean,Mathlib/Topology/MetricSpace/Hyperbolic.lean |
3 |
15 |
['SnirBroshi', 'github-actions', 'homeowmorphism', 'mathlib-dependent-issues', 'tb65536', 'vlad902'] |
nobody |
21-4332 21 days ago |
21-4891 21 days ago |
58-11976 58 days |
1 |
| 38055 |
felixpernegger author:felixpernegger |
feat(Topology/EMetricSpace): add r-variation |
Redoing #37007 (I had accidently deleted my fork which nuked the PR).
See https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/p-variation for discussion.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology
t-analysis
|
395/0 |
Mathlib.lean,Mathlib/Topology/EMetricSpace/RVariation.lean |
2 |
29 |
['felixpernegger', 'github-actions', 'jvanwinden', 'luigi-massacci', 'luigimassacci-ax', 'mathlib-merge-conflicts'] |
nobody |
20-81382 20 days ago |
96-12022 96 days ago |
201-1628 201 days |
0 |
| 45034 |
mkaratarakis author:mkaratarakis |
feat(Combinatorics/Quiver/Path): simple paths, cycles and acyclic quivers |
`Quiver.Path.IsSimple` and `Quiver.Path.IsCycle`, plus `Quiver.IsAcyclic`, modelled on what we already have for `SimpleGraph.Walk`.
The main result is that a path revisiting a vertex can be shortened by cutting out the loop. In particular, a shortest nontrivial loop is a cycle.
---
Split from #39916.
|
t-combinatorics |
142/0 |
Mathlib.lean,Mathlib/Combinatorics/Quiver/Path/Cycle.lean |
2 |
10 |
['Jun2M', 'YaelDillies', 'github-actions', 'mkaratarakis'] |
YaelDillies assignee:YaelDillies |
20-65227 20 days ago |
20-76003 20 days ago |
20-76285 20 days |
1 |
| 45014 |
GoldenPhysicsProject author:GoldenPhysicsProject |
feat(Analysis/SpecialFunctions/Trigonometric): infinite product formula for sinh |
Transfers the absolutely convergent Euler product for sine (`euler_sineTerm_tprod`) to the hyperbolic sine, in `Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean` next to the sine statement:
* `multipliable_one_add_sq_div`: `Multipliable fun n : ℕ ↦ 1 + x ^ 2 / (n + 1) ^ 2` for every `x : ℂ`.
* `euler_sinh_tprod`: for `x * I ∈ ℂ_ℤ`, `∏' n : ℕ, (1 + x ^ 2 / (n + 1) ^ 2) = Complex.sinh (π * x) / (π * x)`.
This follows a review comment by @wwylele on the first version of this PR, which was a separate file with the conditionally convergent `Tendsto` form. I searched master and the open PRs for an existing hyperbolic-sine product and found none.
AI-assistance disclosure: this PR was written and submitted by Claude Code (Anthropic) at the request of the account owner. The account owner has not reviewed the code line by line. The file builds against current master, `lake exe lint-style` is clean, and `#print axioms` shows only `propext`, `Classical.choice` and `Quot.sound`. Please review it as AI-generated. |
t-analysis
new-contributor
LLM-generated
|
19/0 |
Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean |
1 |
7 |
['GoldenPhysicsProject', 'github-actions', 'wwylele'] |
nobody |
20-65116 20 days ago |
20-65310 20 days ago |
20-78284 20 days |
0 |
| 45055 |
grunweg author:grunweg |
feat: bundled symmetric linear maps |
We construct bundled symmetric linear maps with their basic operations. The design follows the corresponding file on alternating linear maps closely.
This is the first step towards the vector bundle of symmetric maps, which features in one possible definition of jet spaces and jet bundles.
This work was partially conducted at the workshop
"Techniques and Tools for the Formalization of Analysis" at ICERM in May 2026.
While at it, we remove two outdated items from the module doc-string of the alternating maps' file.
---
Best reviewed by diffing with the alternating file, and then thinking about any reasons for divergences.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
836/10 |
Mathlib.lean,Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Symmetric/Basic.lean |
3 |
1 |
['github-actions'] |
nobody |
20-59454 20 days ago |
20-59654 20 days ago |
20-59581 20 days |
4 |
| 44531 |
emlis42 author:emlis42 |
feat(Analysis/SpecialFunctions): add the polylogarithm function |
This PR adds the polylogarithm function $$\mathrm{Li}_ s(z)$$, together with its integral representation, power series, the recurrence `z * deriv (Li_ (s + 1)) z = Li_ s z`, and analyticity off the branch cut.
## Main definitions
* `Complex.polylogKernel`: the integrand `polylogKernel z t = z / (cexp t - z)`.
* `Complex.polylogIntegral`: the integral representation
$$
\mathrm{Li}_ s(z) = \dfrac{1}{\Gamma(s)}\int_0^{\infty}t ^ {s - 1} \dfrac{z}{e^z -z} \mathrm{d}t
$$
* `Complex.polylogSeries`: the power series
$$
\mathrm{Li}_ s(z) = \sum_{n = 1}^{\infty} \dfrac{z^n}{n^s}
$$
* `Complex.polylog`: the polylogarithm `Li_ s z`.
## Main statements
* `Complex.polylog_eq_polylogSeries`: `Li_ s z = polylogSeries s z` for `‖z‖ < 1`.
* `Complex.summable_polylogSeries_of_norm_lt` and `_of_norm_le`: the defining series
is summable for `‖z‖ < 1`, resp. for `‖z‖ ≤ 1` when `1 < s.re`.
* `Complex.polylog_eq_polylogIntegral`: `Li_ s z = polylogIntegral s z` for `0 < s.re`
and `z` off the branch cut.
* `Complex.mul_deriv_polylog_add_one`: the recurrence
`z * deriv (Li_ (s + 1)) z = Li_ s z` for `z` off the branch cut.
* `Complex.analyticOnNhd_polylog_right`: `Li_ s` is analytic off the branch cut.
## Implementation notes
The definition follows DLMF 25.12: `Li_ s z` is defined on the complement of the
branch cut `Ici 1 ×ℂ {0}` via the integral representation for `0 < s.re`, and extended to
general `s` by repeatedly applying the recurrence
`Li_ s = z * deriv (Li_ (s + 1))` until the real part becomes positive.
On the branch cut itself we take the limit from the lower half-plane.
---
I used an LLM agent only to verify the definitions in this work. I did not use any LLM-generated code. |
t-analysis |
624/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Polylog/Basic.lean,Mathlib/Topology/Separation/Hausdorff.lean |
3 |
2 |
['emlis42', 'github-actions'] |
nobody |
20-54556 20 days ago |
20-54732 20 days ago |
34-18722 34 days |
0 |
| 42624 |
xgenereux author:xgenereux |
perf(IntermediateField/Basic): algebra instance for IntermediateField.restrictScalars |
Add `Algebra` / `IsScalarTower` instance for `IntermediateField.restrictScalars`.
This simplifies a proof in `FunctionField.lean`.
I also tried to hunt for another similar application and found one in `Mathlib.FieldTheory.Extension`.
AI disclaimer: I asked an AI assistant to suggest an improvement to the proof in the FunctionField.lean file. This PR is the result of this discussion.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
9/12 |
Mathlib/FieldTheory/Extension.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/NumberTheory/FunctionField.lean |
3 |
6 |
['github-actions', 'leanprover-radar', 'xgenereux'] |
ocfnash assignee:ocfnash |
20-50462 20 days ago |
90-57787 90 days ago |
90-59174 90 days |
0 |
| 44026 |
kim-em author:kim-em |
chore: remove backward.privateInPublic in category theory, topology and analysis |
This PR removes the `backward.privateInPublic` option in 6 files across category theory, topology and analysis. In each case a private definition appeared in the statement of a public declaration, so it was already part of the public interface in all but name. The fix is to drop `private` from those definitions (and from the auxiliary definitions their bodies depend on in exposed sections), adding docstrings where they were missing. In `Analysis/InnerProductSpace/OfNorm` the auxiliary inner product `inner_` moves into the `InnerProductSpaceable` namespace rather than becoming a root-level name; the public lemmas `inner_.norm_sq`, `inner_.conj_symm` and `Continuous.inner_` already carried its name. In `Topology/Category/Compactum` the helper `cl` gets a mathematical docstring, and the two lemmas about it that are only used in proofs stay private.
Files where a private *lemma* appeared in a public statement, and the files with file-wide `public section` restructuring, are handled in #44032. Names are otherwise kept as they were; suggestions for better names are welcome but are not needed for this PR.
🤖 Prepared with Claude Code |
tech debt |
19/63 |
Mathlib/Analysis/InnerProductSpace/OfNorm.lean,Mathlib/CategoryTheory/Monoidal/Internal/FunctorCategory.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/Topology/Category/Compactum.lean,Mathlib/Topology/Category/TopCat/Limits/Konig.lean,Mathlib/Topology/MetricSpace/GromovHausdorff.lean |
6 |
1 |
['github-actions'] |
JovanGerb assignee:JovanGerb |
20-50460 20 days ago |
49-19615 49 days ago |
49-32301 49 days |
0 |
| 42067 |
themathqueen author:themathqueen |
feat(RingTheory): define Frobenius algebras |
A `FrobeniusAlgebra` is an algebra that is equipped with a `dual : Module.Dual R A` such that the bilinear form `(LinearMap.mul R A).compr₂ dual` is bijective.
A straightforward example: a matrix over a field with the trace as its dual is a Frobenius algebra. (Not an instance because there can be other choices of the dual.)
A `FrobeniusAlgebra` induces a coalgebra such that it satisfies the Frobenius equations (`Coalgebra.IsFrobenius`).
Note that this is not an instance since you can have a different coalgebra that is not equal to this one (for example, if you have a `Bialgebra R A` where `A` is not isomorphic to `R` then the coalgebra cannot satisfy the Frobenius equations, so this is not equal to the coalgebra coming from a `FrobeniusAlgebra R A`).
A coalgebra that satisfies the Frobenius equations (`Coalgebra.IsFrobenius`) naturally induces a Frobenius algebra (`FrobeniusAlgebra`).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [x] depends on: #xyz [optional extra text]
-->
- [x] depends on: #27493
- [x] depends on: #42077
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
331/21 |
Mathlib.lean,Mathlib/RingTheory/Coalgebra/IsFrobenius.lean,Mathlib/RingTheory/FrobeniusAlgebra/Basic.lean,Mathlib/RingTheory/FrobeniusAlgebra/IsFrobenius.lean |
4 |
21 |
['JX-Mo', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
20-36564 20 days ago |
27-82707 27 days ago |
49-2355 49 days |
0 |
| 42815 |
korbonits author:korbonits |
feat(Analysis/Calculus/VectorField): the Lie bracket acts as a derivation on functions |
Add `VectorField.lieBracket_apply_fun`: for a function `f` with derivative `f'` and vector fields `V`, `W`,
D(f' W) V - D(f' V) W = f' [V, W]
i.e. the familiar `[V, W] f = V (W f) - W (V f)`. The two second-derivative terms cancel by symmetry of the second derivative, leaving exactly the bracket.
Placed beside the existing `lieBracket_smul_*` product rules. Needs no new import: `FDeriv.Symmetric` is already imported for `second_derivative_symmetric`, which supplies the symmetry and is the source of the `IsRCLikeNormedField` hypothesis.
---
AI disclosure
- level: Level 5 / Level 6 in [the link shared](https://www.visidata.org/blog/2026/ai/#self-assessed-ai-level-for-contributions) I feel confident about the math but I am still learning Lean itself
- code: most of the Lean in this PR was drafted by Claude Code (statements, proofs, docstrings).
- direction and review: I chose the contribution, made the decisions, reviewed every line, and wrote all GitHub/Zulip comments. |
t-analysis
new-contributor
LLM-generated
t-differential-geometry
|
17/0 |
Mathlib/Analysis/Calculus/VectorField.lean |
1 |
12 |
['github-actions', 'korbonits', 'themathqueen'] |
nobody |
20-36031 20 days ago |
20-36255 20 days ago |
85-23160 85 days |
0 |
| 44428 |
kebekus author:kebekus |
feat: behavior of zero/pole divisors of meromorphic functions under differentiation |
Relate the divisor of `deriv f` to the divisor of a meromorphic function `f`, and deduce the corresponding statements for the logarithmic counting functions of Value Distribution Theory.
This material is used in [Project VD](https://github.com/kebekus/ProjectVD), formalizing Value Distribution Theory for meromorphic functions on the complex plane. Claude Code was used to create this PR.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis
LLM-generated
|
152/0 |
Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Truncated.lean,Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Meromorphic/Order.lean |
3 |
1 |
['github-actions'] |
nobody |
20-26746 20 days ago |
20-26798 20 days ago |
36-82654 36 days |
0 |
| 43985 |
kebekus author:kebekus |
feat: API for working with canonical factors |
To prepare for upcoming work in Value Distribution Theory, add three elementary lemmas on canonical factors and their derivatives.
This material is used in [Project VD](https://github.com/kebekus/ProjectVD), formalizing Value Distribution Theory for meromorphic functions on the complex plane. Claude Code was used to create this PR.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis
LLM-generated
|
86/0 |
Mathlib/Analysis/Complex/CanonicalDecomposition.lean |
1 |
1 |
['github-actions'] |
nobody |
20-26636 20 days ago |
20-26885 20 days ago |
50-19092 50 days |
0 |
| 44629 |
kebekus author:kebekus |
feat: behavior of order in polymomial expressions of meromorphic functions |
Establish standard formulae for the behavior of order in finite sums and polynomial expressions of meromorphic functions.
This material is used in [Project VD](https://github.com/kebekus/ProjectVD), formalizing Value Distribution Theory for meromorphic functions on the complex plane. Claude Code was used to create this PR.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis
LLM-generated
|
223/0 |
Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Meromorphic/Order.lean |
2 |
1 |
['github-actions'] |
nobody |
20-26551 20 days ago |
20-26809 20 days ago |
32-33388 32 days |
0 |
| 45033 |
mkaratarakis author:mkaratarakis |
feat(Combinatorics/Quiver/Path): iterated composition of a loop |
`Quiver.Path.replicate`, the `n`-fold composition of a loop with itself, and its length.
---
Split from #39916.
|
t-combinatorics |
46/0 |
Mathlib.lean,Mathlib/Combinatorics/Quiver/Path/Replicate.lean |
2 |
4 |
['YaelDillies', 'github-actions', 'mkaratarakis'] |
YaelDillies assignee:YaelDillies |
20-23490 20 days ago |
20-76004 20 days ago |
20-76375 20 days |
0 |
| 45076 |
vdelbarc author:vdelbarc |
feat(Algebra/Lie/SemiDirect): add natural ideal and subalgebra; add equivalences |
Define the left ideal and right subalgebra of a semidirect product of Lie
algebras. Give characterizations through natural inclusion/projection maps.
Co-authored by: Gustavo Infanti, Exequiel Rivas and Paul Schwahn
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
new-contributor
t-algebra
label:t-algebra$ |
88/0 |
Mathlib/Algebra/Lie/SemiDirect.lean |
1 |
2 |
['github-actions'] |
nobody |
20-16557 20 days ago |
20-16574 20 days ago |
20-16779 20 days |
0 |
| 43707 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory): definition of Koszul cocomplex |
Definition of Koszul complex.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
172/0 |
Mathlib.lean,Mathlib/RingTheory/KoszulComplex/Cocomplex.lean |
2 |
1 |
['github-actions'] |
nobody |
20-14084 20 days ago |
20-14275 20 days ago |
59-11738 59 days |
4 |
| 43719 |
Thmoas-Guan author:Thmoas-Guan |
feat(LinearAlgebra): add API for exterior algebra of ring itself |
In this PR, we added some API for handling `ExteriorAlgebra R R`.
AI disclosure: the proof in section "self" is generated by AI after providing the final target definition and characterizing lemma.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
61/0 |
Mathlib/LinearAlgebra/ExteriorAlgebra/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
20-13288 20 days ago |
20-13361 20 days ago |
58-86226 58 days |
4 |
| 44958 |
dkaysin author:dkaysin |
feat(Combinatorics/SimpleGraph/Cayley): reachability and connectedness of Cayley graphs |
This PR adds reachability and connectedness results for Cayley Simple graphs.
---
Implements connectedness results requested [here](https://github.com/leanprover-community/mathlib4/pull/44853#discussion_r4296323074).
Implementation details:
* One-directional reachability results can also be proven for semigroups and monoids. I chose to implement one such result for monoids: `reachable_mulCayley_mul_of_mem_submonoidClosure`.
* Machinery with values of darts can be useful for further proofs when working with Cayley graphs in geometric group theory. Edit: made private for now as per reviewer's comment.
Use of AI: I used Claude Opus 5.5 for the following tasks:
* To brainstorm and compare API design ideas and naming conventions
* To propose simplifications to proofs
* To check docstrings for consistency
All AI-generated content was reviewed and edited by me.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
new-contributor
t-combinatorics
large-import
|
106/1 |
Mathlib/Combinatorics/SimpleGraph/Cayley.lean |
1 |
11 |
['SnirBroshi', 'dkaysin', 'github-actions'] |
nobody |
19-80608 19 days ago |
19-80838 19 days ago |
19-83748 19 days |
0 |
| 43157 |
NoahW314 author:NoahW314 |
feat(Algebra/Category): divisible R-modules over a PID are injective |
This generalizes the existing result that divisible groups that injective to hold over any principal ideal ring. The same proof works with only minor modifications.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
27/16 |
Mathlib/Algebra/Category/Grp/Injective.lean,Mathlib/Algebra/Category/ModuleCat/Injective.lean,Mathlib/Algebra/Module/CharacterModule.lean |
3 |
3 |
['NoahW314', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
19-77582 19 days ago |
19-77657 19 days ago |
63-16719 63 days |
0 |
| 45099 |
vihdzp author:vihdzp |
feat: many `simp` theorems for `Ordinal.lift` |
This PR does two things:
- Reorganize and rename some badly named `simp` theorems for `Cardinal.lift`
- Prove the analogous theorems on `Ordinal.lift`
These are used in the CGT repo.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-set-theory |
187/51 |
Mathlib/LinearAlgebra/Dimension/Constructions.lean,Mathlib/LinearAlgebra/Dimension/Finite.lean,Mathlib/LinearAlgebra/Dimension/LinearMap.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean |
6 |
8 |
['github-actions', 'plp127', 'vihdzp'] |
nobody |
19-52300 19 days ago |
19-54156 19 days ago |
19-65187 19 days |
0 |
| 34138 |
pfaffelh author:pfaffelh |
feat(MeasureTheory): Introduce `DiscreteMeasure α` giving rise to a `Measure α` as a sum of `dirac`s |
Define `DiscreteMeasure α` as a structure with `weight : α → ℝ≥0∞`
Define `toMeasure (w : DiscreteMeasure α) : Measure α` as a sum of diracs
Show properties of the resulting objects
This PR intends to start a more userfriendly interaction with discrete probability (measure) theory, in contrast to probability mass functions (`PMF`). There are two main differences between `DiscreteMeasure` and `PMF`:
* Every `PMF` hast the additional property `HasSum 1`, making the resulting measure a probability measure. (For `DiscreteMeasure`, I intend to use the typeclass `IsProbabilityMeasure`in a later PR instead.)
* The `toMeasure` function of `MassFunction` defines the measure as a sum of diracs, which immediately makes computations possible.
Discussion thread on [zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/PMF.20Refactor.3A.20FunLike.20vs.20Definition.20Change)
- depends on: #37060
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
new-contributor
|
215/0 |
Mathlib.lean,Mathlib/Algebra/GroupWithZero/Indicator.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/MeasureTheory/Measure/DiscreteMeasure.lean |
4 |
27 |
['DavidLedvinka', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'metakunt', 'ocfnash', 'pfaffelh'] |
RemyDegenne assignee:RemyDegenne |
19-50462 19 days ago |
20-7031 20 days ago |
102-2220 102 days |
0 |
| 41380 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Girth): relate `girth` and `egirth` |
Also add `le_girth` to match `le_egirth`, which is the only `egirth` lemma that's missing a `girth` counterpart.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
39/8 |
Mathlib/Combinatorics/SimpleGraph/Girth.lean |
1 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
b-mehta assignee:b-mehta |
19-50460 19 days ago |
45-74027 45 days ago |
125-16477 125 days |
1 |
| 41432 |
SnirBroshi author:SnirBroshi |
chore(Combinatorics/SimpleGraph/Paths): spell `getVert` injectivity lemmas using `Set` intervals |
e.g. replace `{i | i ≤ p.length}` with `Iic p.length` in `IsPath.getVert_injOn`, which is the canonical spelling.
Proofs using `Set.mem_setOf`/`Set.mem_setOf_eq` had to be fixed, and got golfed along the way.
I also rewrote the proof of `IsPath.getVert_injOn` since it seemed too long.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
29/60 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
b-mehta assignee:b-mehta |
19-50459 19 days ago |
40-58751 40 days ago |
125-22249 125 days |
1 |
| 42283 |
YaelDillies author:YaelDillies |
feat(RingTheory): diagonalisable Hopf algebras |
Define diagonalisable Hopf algebras as those that are isomorphic to some group algebra. We will prove in a later PR that they are closed under tensor product.
From Toric
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
toric
|
168/1 |
Mathlib.lean,Mathlib/LinearAlgebra/Finsupp/LinearCombination.lean,Mathlib/LinearAlgebra/LinearIndependent/Defs.lean,Mathlib/RingTheory/HopfAlgebra/Basic.lean,Mathlib/RingTheory/HopfAlgebra/Diagonalisable.lean |
5 |
1 |
['github-actions'] |
mattrobball assignee:mattrobball |
19-50458 19 days ago |
101-27778 101 days ago |
101-27705 101 days |
1 |
| 36327 |
themathqueen author:themathqueen |
feat(Analysis/CStarAlgebra/Extreme): a C⋆-algebra is unital iff there exists an extreme point in the closed unit ball |
In a nonunital C⋆-algebra, the extreme points of the closed unit ball is nonempty iff the C⋆-algebra is unital. Our main reference for this is Sakai's "C⋆-algebras and W⋆-algebras" 1.6.1. The proof however is a _franken-proof_ from both Sakai and Pederson's "C⋆-algebras and their automorphism groups".
Co-authored-by: Jon Bannon <59937998+JonBannon@users.noreply.github.com>
Co-authored-by: Jireh Loreaux <loreaujy@gmail.com>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #35997
- [x] depends on: #36201
- [x] depends on: #36407
- [x] depends on: #36408
- [x] depends on: #36416
- [x] depends on: #36603
- [x] depends on: #41923
- [x] depends on: #42309
- [x] depends on: #42310
[](https://gitpod.io/from-referrer/)
|
t-analysis |
232/2 |
Mathlib/Analysis/CStarAlgebra/Extreme.lean |
1 |
46 |
['ADedecker', 'eric-wieser', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
19-49561 19 days ago |
39-78801 39 days ago |
85-58528 85 days |
0 |
| 45112 |
ZRTMRH author:ZRTMRH |
feat(MeasureTheory/Integral): sharp error bound for Riemann sums of periodic BV functions |
Add a strict error bound for estimating `1`-periodic function using Riemann sum. This is the equally-spaced case of Koksma's inequality, with the sharp constant. The proof is elementary.
* `Function.Periodic.abs_sum_sub_integral_le_eVariationOn`
The bound is added as a new file `Mathlib/MeasureTheory/Integral/IntervalIntegral/PeriodicRiemannSum.lean`. Two supporting lemmas on the variation of a periodic function go into `Mathlib/Analysis/BoundedVariation.lean`.
* `Function.Periodic.eVariationOn_Icc_add_int`
* `Function.Periodic.eVariationOn_Icc_add_one`
Discussion on Zulip: [Riemann sums of periodic bounded-variation functions](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Riemann.20sums.20of.20periodic.20bounded-variation.20functions/with/624474372)
This PR was written with AI assistance (Claude for first draft, Codex for refinement). The code has been reviewed by the authors.
Co-authored-by: Xichen Tang xichen.tang@duke.edu
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-measure-probability
LLM-generated
new-contributor
|
194/0 |
Mathlib.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/PeriodicRiemannSum.lean |
3 |
3 |
['ZRTMRH', 'github-actions'] |
nobody |
19-41030 19 days ago |
19-41283 19 days ago |
19-41210 19 days |
0 |
| 32098 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory): injective dimension of quotSMulTop |
In this PR, we proved for finitely generated module `M` over noetherian ring `R`, if `x` in maximal ideal being both `R`-regular and `M`-regular, `injdim_R (M/xM) + 1 = injdim_{R/(x)} (M)`.
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #32058
- [x] depends on: #39133
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
454/0 |
Mathlib.lean,Mathlib/RingTheory/Regular/InjectiveDimension.lean |
2 |
9 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
nobody |
19-34216 19 days ago |
19-34282 19 days ago |
69-9829 69 days |
6 |
| 44773 |
justus-springer author:justus-springer |
doc(*): add bib entries for free-text references |
The result of an LLM-assisted audit to find free-text references with no entry in `references.bib`. Most bib entries come from zbmath (those have a `zbl` entry). A few didn't have an entry there, so they come from other sources.
Some small notes:
- I added the other authors to `boldetal2017`,
- In `LinearAlgebra/Matrix/Polynomial.lean`, my LLM flagged that Section 5.3 is probably not the appropriate section to cite for this file, and in fact, it seems to be a historical artifact. I checked the paper and Proposition 2.2 fits much better here, so I changed it.
- Wittlich's Master thesis is not available online, but the docstring came from a trustworthy source so I just used the details given there for the bib entry.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
LLM-generated |
257/31 |
Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/InnerProductSpace/Defs.lean,Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean,Mathlib/CategoryTheory/Adjunction/Lifting/Left.lean,Mathlib/CategoryTheory/Adjunction/Lifting/Right.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Combinatorics/Additive/CauchyDavenport.lean,Mathlib/Combinatorics/Compactness.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/SumTransform.lean,Mathlib/Geometry/Euclidean/Angle/Oriented/Basic.lean,Mathlib/InformationTheory/Coding/Kraft.lean,Mathlib/InformationTheory/Coding/KraftMcMillan.lean,Mathlib/LinearAlgebra/Matrix/Adjugate.lean,Mathlib/LinearAlgebra/Matrix/Polynomial.lean,Mathlib/MeasureTheory/Measure/Haar/Basic.lean,Mathlib/Probability/Independence/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/Defs.lean,Mathlib/Topology/Category/Compactum.lean,docs/references.bib |
20 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
19-22976 19 days ago |
19-23116 19 days ago |
25-83001 25 days |
0 |
| 44864 |
user202729 author:user202729 |
feat(Order/Bounds): notation for sSup and sInf |
Also fix a typo (add a full stop) and change some call sites to use the new notation.
---
As discussed on Zulip: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Adding.20notation.20for.20sSup.2FsInf.3F |
t-topology
new-contributor
|
14/3 |
Mathlib/Order/Bounds/Defs.lean,Mathlib/Order/SetNotation.lean,Mathlib/Topology/Sets/Closeds.lean,Mathlib/Topology/Sets/Opens.lean |
4 |
5 |
['Multramate', 'github-actions', 'user202729'] |
nobody |
19-18677 19 days ago |
24-75766 24 days ago |
24-75693 24 days |
0 |
| 44741 |
mortarsanjaya author:mortarsanjaya |
feat: weaken even more assumptions on theorems about `FloorRing` |
This PR is mostly about weakening the assumptions of type `IsOrderedRing` or `IsStrictOrderedRing` to `IsOrderedAddMonoid` on theorems about `FloorSemiring` and `FloorRing`. However, none of these assumptions are completely removed.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
~~Unfortunately, the new proof of `floor_div_natCast`, done for the sake of reducing `IsStrictOrderedRing K` to `IsOrderedAddMonoid K`, is quite complicated and can definitely be refactored. If we use the old proof, `IsStrictOrderedRing K` can be reduced to `IsOrderedAddMonoid K` + `AddLeftStrictMono K`, but `AddLeftStrictMono K` cannot be removed. I will need help with this proof. If nothing else works, the lemma can also be reverted into the previous form with `IsOrderedAddMonoid K` + `AddLeftStrictMono K`.~~
~~The lemma `floor_div_natCast` affects `floor_div_eq_div`, `IsNNRat.natFloor`, and the `norm_num` extension `evalNatFloor`.~~
(The above has been resolved at the cost of one extra import.)
Other than this problem, should I give a documentation of when to use `IsOrderedAddMonoid`, `IsOrderedRing`, etc. or avoid them altogether in lemmas about `FloorRing`s? |
t-algebra label:t-algebra$ |
87/100 |
Mathlib/Algebra/Order/Floor/BigOperators.lean,Mathlib/Algebra/Order/Floor/Defs.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semifield.lean,Mathlib/Algebra/Order/Round.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Periodic.lean |
6 |
6 |
['chenson2018', 'github-actions', 'mortarsanjaya'] |
nobody |
19-16140 19 days ago |
19-16203 19 days ago |
28-29480 28 days |
0 |
| 45111 |
will1491 author:will1491 |
feat(Topology/ContinuousMap): define normal families |
Define `IsNormalFamily` for families of continuous maps into `OnePoint Y` as compactness of their closure in the compact-open topology.
The one-point compactification is chosen for applications in complex dynamics. See the [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Geometry.20and.20complex.20dynamics.20formalization/with/615696635) for the definition and design discussion.
Co-authored-by: Lasse Rempe <lasse.rempe@manchester.ac.uk>
Co-authored-by: Filip Moruś <filip.morus@postgrad.manchester.ac.uk>
--- |
t-topology
new-contributor
|
30/0 |
Mathlib.lean,Mathlib/Topology/ContinuousMap/NormalFamily.lean |
2 |
3 |
['JX-Mo', 'github-actions'] |
nobody |
19-10107 19 days ago |
19-44330 19 days ago |
19-44257 19 days |
0 |
| 45130 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Basic): `commonNeighbors` is a strict subset of `neighborSet` for adjacent vertices |
Add `G.Adj u v → G.commonNeighbors u v ⊂ G.neighborSet u` and use it to golf `Adj.card_commonNeighbors_lt_degree`.
---
Also reworded the docstring because `card_commonNeighbors_le_degree` does not exist (never did) and it confused me. This is from leanprover-community/mathlib3#5789.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-combinatorics |
14/7 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean |
2 |
1 |
['github-actions'] |
nobody |
19-4018 19 days ago |
19-4172 19 days ago |
19-4099 19 days |
1 |
| 43578 |
WilliamCoram author:WilliamCoram |
feat: identifying WithZero (Multiplicative M) and WithTop M |
We identify `Mᵐ⁰ = WithZero (Multiplicative M)` with `WithTop M` in the form of an order-and-additive isomorphism.
In future work this will allow us to define additive valuations from valuations with a usable target (specifically attaching to a rank one discrete valuation an additive valuation into WithTop Z).
AI usage:
The need of attaching additive valuations to valuations came up in my Newton polygon work - after some discussion with people and Claude this was the approach I felt worked best for me. The file was drafted and written by Claude with my input and cleaning.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
LLM-generated
t-algebra
label:t-algebra$ |
142/0 |
Mathlib.lean,Mathlib/Algebra/Order/GroupWithZero/NegLog.lean |
2 |
7 |
['Multramate', 'WilliamCoram', 'faenuccio', 'github-actions', 'jjdishere'] |
nobody |
18-84188 18 days ago |
62-1271 62 days ago |
62-1198 62 days |
1 |
| 42825 |
wwylele author:wwylele |
feat(Analysis/SpecialFunctions): derivative of Bessel function of the first kind |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on #42760
- [x] depends on #42829
- [x] depends on #43853
[](https://gitpod.io/from-referrer/)
|
t-analysis |
94/1 |
Mathlib/Analysis/SpecialFunctions/Bessel.lean,Mathlib/Analysis/SpecialFunctions/RegularizedHypergeometric.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
18-77556 18 days ago |
18-77735 18 days ago |
50-84860 50 days |
1 |
| 45139 |
mortarsanjaya author:mortarsanjaya |
feat(Algebra/Order/Ring/Cast): weaken hypothesis on lemmas about `Int.cast` |
This PR mainly weakens the assumption on the lemmas on `Int.cast`; except for the last theorem `Int.nonneg_mul_add_of_sq_of_abs_le_one`, the lemmas only require the underlying type to be an additive group with one (not even commutative). The `IsStrictOrderedRing R` assumption is also weakened accordingly; we also do this for `Int.nonneg_mul_add_of_sq_of_abs_le_one`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
30/24 |
Mathlib/Algebra/Order/Ring/Cast.lean |
1 |
1 |
['github-actions'] |
nobody |
18-70502 18 days ago |
18-70551 18 days ago |
18-70478 18 days |
0 |
| 45135 |
rmcrkd author:rmcrkd |
feat(Analysis/Calculus/Deriv/Inverse): add HasDerivWithinAt.of_local_left_inverse |
Add lemma `HasDerivWithinAt.of_local_left_inverse`, following the existing pattern via `HasDerivWithinAt.hasFDerivWithinAt_equiv`.
Assisted by Claude (found the gap, helped with learning and examples, linting and building).
---
[#mathlib4 > HasDerivWithinAt.of_local_left_inverse](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/HasDerivWithinAt.2Eof_local_left_inverse/with/633245785) |
t-analysis
new-contributor
|
18/0 |
Mathlib/Analysis/Calculus/Deriv/Inverse.lean |
1 |
9 |
['github-actions', 'grunweg', 'rmcrkd'] |
nobody |
18-64438 18 days ago |
18-64438 18 days ago |
18-64483 18 days |
0 |
| 41728 |
vaca22 author:vaca22 |
feat(GroupTheory): prove uniqueness of ℤᵐ⁰ automorphisms |
Prove that every order-preserving multiplicative automorphism of ℤᵐ⁰ is the identity. This also gives a Unique instance for its automorphism type and a Subsingleton instance for order-preserving multiplicative normalizations from G to ℤᵐ⁰.
The proof transports an automorphism through WithZero.exp and WithZero.log to an additive automorphism of ℤ, then excludes negation by monotonicity.
------------
**AI disclosure**: this PR is primarily LLM-generated (Claude Code).
|
t-group-theory
new-contributor
LLM-generated
|
58/0 |
Mathlib/GroupTheory/ArchimedeanDensely.lean |
1 |
16 |
['github-actions', 'grunweg', 'tb65536', 'vaca22', 'wwylele'] |
mattrobball assignee:mattrobball |
18-50449 18 days ago |
50-31340 50 days ago |
79-40228 79 days |
0 |
| 41940 |
mcdoll author:mcdoll |
chore(Dynamics): deprecate `IsForwardInvariant` in favour of new `Set.IsInvariantOn` |
We define a predicate `Set.IsInvariantOn` that generalizes `IsInvariant` and as a special case contains `IsForwardInvariant`. The later is hence removed. We also move `IsInvariant` into the `Set` namespace to allow for dot-notation.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-dynamics
dynsys
|
51/17 |
Mathlib/Dynamics/Flow.lean,Mathlib/Dynamics/OmegaLimit.lean |
2 |
5 |
['github-actions', 'mathlib-merge-conflicts', 'mcdoll', 'sgouezel'] |
nobody |
18-49557 18 days ago |
40-47847 40 days ago |
94-40593 94 days |
0 |
| 43327 |
JX-Mo author:JX-Mo |
feat(GroupTheory): add `LeftDecomposition` of double coset |
This PR is the first piece of #43286 for adding `Hecke/LeftFiniteDoubleCoset`. The main motivation is to describe the intertwining space `Hom_G(k[G/H₁], k[G/H₂])` as the free module double cosets with finite left-coset decomposition. In this PR we introduce only the left decomposition.
We deliberately design two indexing types for the left-coset decomposition: the intrinsic LeftDecomposition and the computational LeftDecompQuotient. They are equivalent via toLeftDecompositionEquiv. The first is useful for coordinate-free definitions and proofs, which saves us from abusing Quotient.out everywhere (note that we have three quotients in Hecke theory: `G/H₂, H₁/H₁∩gH₂g⁻¹, H₁\G/H₂`) and avoids "choosing representative from decomposition in the def => proving the def does not depend the choice + repeating this kind of argument for comparing different representatives in many downstream proofs" pattern. The second LeftDecompQuotient carries a fixed base point `gH₂` and remains useful for concrete convolution product computation. |
t-algebra label:t-algebra$ |
115/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Hecke/LeftFiniteDoubleCoset.lean |
2 |
1 |
['github-actions'] |
nobody |
18-36311 18 days ago |
18-36488 18 days ago |
68-40459 68 days |
4 |
| 45156 |
mcdoll author:mcdoll |
feat: the Fourier transform from L1 to C0 and simplification of Riemann-Lebesgue |
---
The deprecated theorems amount to roughly 120 lines of code less.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-topology
large-import
|
89/31 |
Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Fourier.lean,Mathlib/Analysis/Fourier/LpSpace.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Topology/ContinuousMap/ZeroAtInfty.lean |
5 |
1 |
['github-actions'] |
nobody |
18-31474 18 days ago |
18-31630 18 days ago |
18-31557 18 days |
0 |
| 41336 |
SnirBroshi author:SnirBroshi |
chore(Combinatorics/SimpleGraph/Girth): golf `egirth_top` using `cycleGraph` |
Golf `egirth_top` (#38529) using `cycleGraph_isContained_iff` (#35255)
Co-authored-by: Vlad Tsyrklevich <vlad@tsyrklevi.ch>
---
Speeds up the proof from ~120ms to ~30ms
(although it used to be ~600ms, not sure what happened, perhaps toolchains sped it up already)
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
5/11 |
Mathlib/Combinatorics/SimpleGraph/Girth.lean |
1 |
3 |
['YaelDillies', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
18-24693 18 days ago |
40-54856 40 days ago |
128-49258 128 days |
0 |
| 28683 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory): regular local ring is domain |
In this PR, we proved for a regular local ring `R`,
1 : for a finite set `S` in the maximal Ideal of `R`, it can be extended to a regular system of parameters iff they are linear independent in the cotangent space iff `R/span S` is regular local ring of dimesion `dim R - |S|`
2 : is domain
3 : regular system of parameter form regular sequence.
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
To indicate co-authors, include at least one commit authored by each
co-author among the commits in the pull request. If necessary, you may
create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
When merging, all the commits will be squashed into a single commit listing all co-authors.
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #40182
- [x] depends on: #40813
- [x] depends on: #40814
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
253/0 |
Mathlib.lean,Mathlib/RingTheory/RegularLocalRing/Basic.lean |
2 |
59 |
['Raph-DG', 'Thmoas-Guan', 'WenrongZou', 'erdOne', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'mbkybky'] |
nobody |
18-9196 18 days ago |
18-9255 18 days ago |
46-81487 46 days |
11 |
| 37953 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory/Smooth): transcendental separable extension is formally smooth |
In this PR, we proved that transcendental separable extension is formally smooth via reduction to fg cases.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #37934
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
141/3 |
Mathlib/RingTheory/Smooth/Field.lean |
1 |
4 |
['Thmoas-Guan', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
18-8875 18 days ago |
18-12671 18 days ago |
63-62548 63 days |
4 |
| 42247 |
marcelolynch author:marcelolynch |
chore(Analysis/Asymptotics/Defs): scope and rename variable `E'''` |
The variable block at the top of the file declares `E'''` and `[SeminormedAddGroup E''']`. Only `isBigO_iff'` and `isBigO_iff''` use them. The instance binder is a candidate in every typeclass search in the file.
This PR moves the type and the instance into a section around the two theorems. The section calls the type `F`.
-------
The two statements do not change. A dump of all constant types in the module shows that every other declaration keeps its exact type. The two theorems keep the same hypotheses, and neither one has explicit arguments. Only the name and the position of the implicit type change.
Standalone elaboration of the file does not change measurably: 3.700 s here against 3.696 s on master, as medians of 6 interleaved runs.
Same mechanism as #42214 and #42238.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-analysis
LLM-generated
|
10/4 |
Mathlib/Analysis/Asymptotics/Defs.lean |
1 |
8 |
['github-actions', 'grunweg', 'marcelolynch', 'mathlib-merge-conflicts'] |
nobody |
18-3657 18 days ago |
18-3733 18 days ago |
29-22522 29 days |
0 |
| 43817 |
marcelolynch author:marcelolynch |
chore: remove superfluous `@[expose]` modifiers from public sections |
This PR removes `@[expose]` from 91 public sections where it has no effect. A section-level `@[expose]` only changes the bodies of `def`s. These sections hold theorems, instances, abbrevs, structures, inductives, notation, or defs whose bodies Lean keeps private without the modifier.
The `superfluousExpose` linter from #39387 flagged 73 of the 4915 files that open an `@[expose] public section`. A scan of master found 23 more files whose sections contain no `def`.
To check each removal independently of the linter, a script compiles the module with and without the modifier and compares the results. In all 91 cases, the `.olean`, `.olean.private` and `.olean.server` files are byte-identical, and so are the compiler messages.
Five files are left out:
- Three files that the linter flags contain `@[no_expose]` declarations. Without the section `@[expose]`, Lean reports each `@[no_expose]` as redundant, so these files need a second edit. One of them has `@[no_expose, simps! -isSimp app]`, where the attribute still has an effect.
- `Mathlib/Lean/Elab/InfoTree.lean` and `Mathlib/Lean/Elab/Tactic/Meta.lean` cannot import the linter, because `Mathlib.Init` imports them. A direct comparison shows that the removal changes their `.olean`, so they keep the modifier.
#39388 was the first round of this cleanup.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
tech debt
LLM-generated
|
91/91 |
Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/OfCommRing.lean,Mathlib/Algebra/Field/Rat.lean,Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/IsCommutative.lean,Mathlib/Algebra/Group/Semiconj/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Regular.lean,Mathlib/Algebra/GroupWithZero/FunLike.lean,Mathlib/Algebra/HierarchyDesign.lean,Mathlib/Algebra/Homology/HomotopyCategory/ChainComplex.lean,Mathlib/Algebra/Notation/Pi/Defs.lean,Mathlib/Algebra/Order/Archimedean/Real/Basic.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Nonneg/Lattice.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Algebra/QuadraticAlgebra/AlgHom.lean,Mathlib/AlgebraicTopology/Quasicategory/TwoTruncatedQuasicategory.lean,Mathlib/Analysis/Asymptotics/Arith.lean,Mathlib/Analysis/Asymptotics/Basic.lean,Mathlib/Analysis/Asymptotics/Prod.lean,Mathlib/Analysis/Asymptotics/Ring.lean,Mathlib/Analysis/InnerProductSpace/Coalgebra.lean,Mathlib/Analysis/LocallyConvex/Asymptotics.lean,Mathlib/Analysis/Meromorphic/LogDeriv.lean,Mathlib/Analysis/Normed/Operator/Fredholm/Open.lean,Mathlib/Analysis/ODE/ExistUnique.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Measurable.lean,Mathlib/CategoryTheory/Abelian/OrthogonalClosed.lean,Mathlib/CategoryTheory/Adhesive/PushoutProduct.lean,Mathlib/CategoryTheory/ComposableArrows/Two.lean,Mathlib/CategoryTheory/Functor/Derived/RightDerivedCompositionCommShift.lean,Mathlib/CategoryTheory/Galois/FullSubcategory.lean,Mathlib/CategoryTheory/Limits/ConstructLimitMap.lean,Mathlib/CategoryTheory/MorphismProperty/LocalClosure.lean,Mathlib/CategoryTheory/ObjectProperty/FiniteLimits.lean,Mathlib/CategoryTheory/ObjectProperty/IsClosedUnderCardinalFilteredColimits.lean,Mathlib/CategoryTheory/ObjectProperty/OrthogonalLimits.lean,Mathlib/CategoryTheory/ObjectProperty/Subobject.lean,Mathlib/CategoryTheory/Presentable/Basic.lean,Mathlib/CategoryTheory/Presentable/IsDiscrete.lean,Mathlib/CategoryTheory/Presentable/PreservesCardinalPresentable.lean,Mathlib/CategoryTheory/Presentable/SolutionSetCondition.lean,Mathlib/CategoryTheory/Presentable/Uniformization.lean,Mathlib/CategoryTheory/Profunctor/Bicategory.lean,Mathlib/CategoryTheory/Triangulated/TStructure/TExact.lean,Mathlib/Data/ENat/Pow.lean,Mathlib/Data/EReal/BigOperators.lean,Mathlib/Data/NNRat/Floor.lean,Mathlib/Data/Nat/Cast/Pi.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/FieldTheory/TranscendentalSeparable.lean,Mathlib/Geometry/Convex/AffineMap/Defs.lean,Mathlib/GroupTheory/FiniteAbelian/Basic.lean,Mathlib/GroupTheory/Finiteness.lean,Mathlib/GroupTheory/SpecificGroups/VirtuallyCyclic.lean,Mathlib/LinearAlgebra/Matrix/Echelon/Pivot.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Integral/SetToL1/ChangeMeasure.lean,Mathlib/MeasureTheory/Integral/SetToL1/DominatedConvergence.lean,Mathlib/MeasureTheory/Measure/Dirac/Basic.lean,Mathlib/NumberTheory/LSeries/PrimesInAP.lean,Mathlib/NumberTheory/LSeries/RiemannZetaLogDeriv.lean,Mathlib/NumberTheory/NumberField/FiniteAdeleRing.lean,Mathlib/Order/CompleteBooleanAlgebra.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/Defs/Lattice.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Lattice/Nat.lean,Mathlib/Order/Sigma.lean,Mathlib/Order/SuccPred/CompleteLinearOrder.lean,Mathlib/Order/SuccPred/ENat.lean,Mathlib/RingTheory/Coalgebra/CoassocSimps.lean,Mathlib/RingTheory/LocalRing/ResidueField/Separable.lean,Mathlib/RingTheory/Localization/Saturation.lean,Mathlib/RingTheory/MvPowerSeries/Ideal.lean,Mathlib/RingTheory/QuadraticAlgebra.lean,Mathlib/RingTheory/QuasiFinite/Basic.lean,Mathlib/RingTheory/QuasiFinite/Weakly.lean,Mathlib/RingTheory/Radical/NatInt.lean,Mathlib/SetTheory/Ordinal/Family.lean,Mathlib/SetTheory/Ordinal/FundamentalSequence.lean,Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Basic.lean,Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Hypotheses.lean,Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Init.lean,Mathlib/Tactic/SimpLibraryNote.lean,Mathlib/Topology/Category/DeltaGenerated.lean,Mathlib/Topology/Category/TopCommRingCat.lean,Mathlib/Topology/EMetricSpace/Weak.lean,Mathlib/Topology/List.lean,Mathlib/Topology/MetricSpace/CoveringExponent.lean |
91 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
17-83440 17 days ago |
17-81345 17 days ago |
42-39585 42 days |
0 |
| 45176 |
marcelolynch author:marcelolynch |
ci: shake Archive and Counterexamples in the weekly shake job |
This PR adds `Archive` and `Counterexamples` to the weekly `lake shake` job. The job fetches their oleans with `lake exe cache get Archive.lean Counterexamples.lean` and builds them before it runs `lake shake`.
Five files get `shake: keep` annotations. `lake shake` does not see the uses inside `example` declarations or the `deriving Fintype` handler. Without the annotations, its edits break these files. With the annotations, the 76 shake edits to `Archive` and `Counterexamples` build.
A fork PR runs the workflow file from `master`, so this PR cannot test the workflow change in CI.
🤖
|
new-contributor |
10/10 |
.github/workflows/shake.yaml,Archive/Examples/Eisenstein.lean,Archive/Imo/Imo1988Q6.lean,Archive/Wiedijk100Theorems/Konigsberg.lean,Counterexamples/OrderedCancelAddCommMonoidWithBounds.lean,Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean |
6 |
2 |
['github-actions'] |
nobody |
17-82474 17 days ago |
17-82474 17 days ago |
17-82401 17 days |
0 |
| 43894 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add Burnside's theorem for matrix algebras |
This PR adds Burnside's theorem: If `V` is simple module of a `k`-algebra `A` where `k` is an algebraically closed field `k`, then the algebra map `A → End_k(V)` is surjective. The proof is a combination of Schur's lemma and Jacobson density theorem, both of which are already in Mathlib. |
t-algebra label:t-algebra$ |
13/4 |
Mathlib/RepresentationTheory/AlgebraRepresentation/Basic.lean |
1 |
6 |
['JX-Mo', 'github-actions', 'mathlib-splicebot'] |
nobody |
17-81159 17 days ago |
17-81977 17 days ago |
52-80783 52 days |
0 |
| 43042 |
grunweg author:grunweg |
feat: `ContMDiff.clm_bundle_of_apply` and friends |
Future PRs will add versions of these allowing for the loss of derivatives:
let's start with these versions as the required modifications are straight-forward.
We add the analogous lemmas for differentiability also (and comment when this requires further work out of this PR's scope).
From the path towards smoothness of the Levi-Civita connection and Riemannian geometry.
Co-authored-by: Patrick Massot <patrickmassot@free.fr>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
137/2 |
Mathlib/Geometry/Manifold/VectorBundle/Hom.lean |
1 |
4 |
['github-actions', 'grunweg', 'mathlib-merge-conflicts'] |
sgouezel assignee:sgouezel |
17-50457 17 days ago |
28-6637 28 days ago |
78-53446 78 days |
1 |
| 43908 |
BryceT233 author:BryceT233 |
feat(Analysis/Normed/Module): real scalars on a complete normed `ℚ`-algebra |
We show that a complete normed `ℚ`-algebra carries a unique `NormedAlgebra ℝ 𝔸` structure.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
This arose as a byproduct of a personal project formalizing the Lie–Trotter formula. Along the way, I needed `exp (log x) = x` near the identity. I proved this using an ODE-based argument, which turned out to require somewhat less code. The real scalar structure is needed to carry out that argument in a complete normed `ℚ`-algebra without strengthening the assumptions to a normed `ℝ`-algebra.
For Mathlib, however, GPT-Astra suggested an alternative approach via `FormalMultilinearSeries` and `PowerSeries`. Although it requires more infrastructure upfront, it would yield useful general-purpose results such as `PowerSeries.coeff_subst_eq_sum_composition`, `HasFPowerSeriesWithinOnBall.hasSum_comp_of_summable` and `FormalMultilinearSeries.ofScalars_comp`.
[](https://gitpod.io/from-referrer/)
|
t-analysis |
65/0 |
Mathlib/Analysis/Normed/Module/Completion.lean |
1 |
1 |
['github-actions'] |
nobody |
17-27998 17 days ago |
19-50855 19 days ago |
51-64550 51 days |
0 |
| 45210 |
dongxuelian2 author:dongxuelian2 |
feat(LinearAlgebra/Matrix/Charpoly): finite determination of matrix power sequences |
Add finite-determination criteria for matrix sequences `C * A ^ k * B`, allowing the two square matrices to have different index types.
`Matrix.mul_pow_mul_eq_of_aeval_eq_zero` uses a common monic annihilating polynomial: agreement below its degree implies agreement at every natural exponent. `Matrix.mul_pow_mul_eq_of_lt_card_add` applies this to the product of the characteristic polynomials, giving the bound `Fintype.card ι + Fintype.card κ`.
The statements work over commutative rings and allow empty state index types. The proof reduces `X ^ k` modulo the common polynomial and uses `Polynomial.sum_modByMonic_coeff`, which handles degree zero without a separate dimension case split. This adds two theorems to the existing matrix-power reduction API without introducing imports or definitions.
The proof is adapted from [LeanForControl's finite-determination result](https://github.com/dongxuelian2/LeanForControl/blob/kalman-structural-completion/LeanForControl/LinearSystems/Realization/FiniteDetermination.lean).
---
### Validation
Checked locally with Lean v4.36.0-rc1 against mathlib master `3d14fd9a313ac35ed4b5c653ed5d99157c9e29f6`:
- `lake build Mathlib.LinearAlgebra.Matrix.Charpoly.Coeff`
- `lake exe batteries/runLinter --no-build Mathlib.LinearAlgebra.Matrix.Charpoly.Coeff`
- Direct invocation of the upstream text linters and module-name checks.
- Separate local examples for the requested field/`Fin` statement, either or both dimensions zero, degree-zero and degree-one common annihilators, and matching nonzero sequences in dimensions 1 and 2.
- `#print axioms` for both theorems reports only `propext`, `Classical.choice`, and `Quot.sound`.
- `git diff --check`.
The standalone `lint-style` launcher failed while loading Lake's workspace on Windows; its text linters passed when invoked directly. A clean full `lake shake` run was not obtained: the initial run needed uncached modules outside the targeted dependencies, and the forced run reported suggestions throughout the existing dependency closure. Imports are unchanged from upstream. No full-library build is claimed.
### AI use
OpenAI Codex was used to audit nearby APIs and possible duplicates, extract and generalize the LeanForControl proof, write the Lean code and local examples, run validation, and prepare this PR description.
|
t-algebra
LLM-generated
new-contributor
label:t-algebra$ |
44/0 |
Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean |
1 |
3 |
['dongxuelian2', 'github-actions'] |
nobody |
17-24910 17 days ago |
17-25097 17 days ago |
17-25024 17 days |
0 |
| 44028 |
alreadydone author:alreadydone |
feat(Topology): add `Homeomorph.Isotopy` and `MappingClassGroup` |
Also defines action of `MappingClassGroup` on singular homology, which can be used to define Torelli groups.
Note: for an orientable surface (or manifold) it's common in the literature to refer to the subgroup consisting of orientation-preserving (equivalently, acting trivially on top homology) homeomorphisms as the mapping class group. In our setup, this can be obtained by `(MappingClassGroup.toAutSingularHomology n).ker`, where `n` is the dimension.
TODO: define relative `Isotopy` (similar to `HomotopyRel`) and relative MCG.
Homotopy invariance of relative singular homology is at https://github.com/TauCetiProject/TauCeti/pull/7266.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology
t-topology
|
236/2 |
Mathlib.lean,Mathlib/AlgebraicTopology/SingularHomology/Basic.lean,Mathlib/AlgebraicTopology/SingularHomology/HomotopyInvariance.lean,Mathlib/Topology/Category/TopCat/Basic.lean,Mathlib/Topology/ContinuousMap/Basic.lean,Mathlib/Topology/Homotopy/Basic.lean,Mathlib/Topology/Homotopy/Equiv.lean,Mathlib/Topology/Homotopy/Isotopy.lean |
8 |
4 |
['github-actions', 'joelriou', 'mathlib-merge-conflicts'] |
nobody |
17-19872 17 days ago |
17-67129 17 days ago |
25-56875 25 days |
1 |
| 43332 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Walk/Basic): walks with equal support have equal darts |
and similar statements:
- `p.darts = q.darts ↔ p.support = q.support` (equal)
- `p.darts <:+: q.darts ↔ p.support <:+: q.support` (infix)
- `p.darts <+: q.darts ↔ p.support <+: q.support` (prefix)
- `p.darts <:+ q.darts ↔ p.support <:+ q.support` (suffix)
---
I hope the review process can help golf these or find better proofs.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
71/23 |
Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Subwalks.lean |
3 |
17 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'vlad902'] |
nobody |
17-16765 17 days ago |
17-16914 17 days ago |
65-3805 65 days |
0 |
| 41402 |
vlad902 author:vlad902 |
feat(RingTheory): compute the height of the ideal spanning a (sub)set of indeterminates in a polynomial ring |
The main theorem is that `(Ideal.span (MvPolynomial.X '' s)).height = s.encard` where `s` is an index set of indeterminates over a Noetherian polynomial ring..
---
AI disclosure: AI helped review and golf the PR.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
-->
- [x] depends on: #41401
- [x] depends on: #41399
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
80/0 |
Mathlib.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/MvPolynomial/Height.lean,Mathlib/RingTheory/MvPolynomial/Ideal.lean |
4 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
17-13422 17 days ago |
19-63188 19 days ago |
19-63115 19 days |
0 |
| 45202 |
Hagb author:Hagb |
feat(RingTheory/MvPolynomial/MonomialOrder): some lemmas about `withBotDegree` |
It is lemmas used in #45208.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-ring-theory |
50/0 |
Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean |
1 |
4 |
['github-actions', 'vlad902'] |
nobody |
16-84254 16 days ago |
16-84310 16 days ago |
17-24942 17 days |
1 |
| 44968 |
SnirBroshi author:SnirBroshi |
feat(LinearAlgebra/Finsupp/LinearCombination): bundle `linearCombination` as an `AddMonoidHom` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
47/48 |
Mathlib/LinearAlgebra/Dimension/Basic.lean,Mathlib/LinearAlgebra/Dimension/StrongRankCondition.lean,Mathlib/LinearAlgebra/Finsupp/LinearCombination.lean,Mathlib/RingTheory/Ideal/Basic.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/RingTheory/Unramified/Finite.lean |
8 |
9 |
['Hagb', 'SnirBroshi', 'github-actions', 'leanprover-radar', 'themathqueen'] |
nobody |
16-76682 16 days ago |
16-78946 16 days ago |
22-49806 22 days |
0 |
| 45226 |
vihdzp author:vihdzp |
feat: ordinal lift commutes with suprema |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
I got curious and decided to gave the Tau Ceti ordinal folder a read. It has exactly one theorem, and it's `lift_iSup`! So I figured I'd generalize, clean, and upstream it. |
t-set-theory |
9/0 |
Mathlib/SetTheory/Ordinal/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
16-75293 16 days ago |
16-75477 16 days ago |
16-75404 16 days |
0 |
| 42072 |
joneugster author:joneugster |
feat(scripts/autolabel): use PR-title to find labels |
If present, use the paths specified in the PR title to determine labels. If this fails, fall back to the existing `git diff` logic.
- further: cleanup to use `githubAnnotation` consistently throughout the script. (the helper itself could be refactored to make some arguments optional, I'd prefer doing that in a follow-up)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
CI |
48/12 |
.github/workflows/add_label_from_diff.yaml,scripts/autolabel.lean |
2 |
5 |
['SnirBroshi', 'github-actions', 'joneugster', 'mathlib-merge-conflicts'] |
nobody |
16-52725 16 days ago |
43-1333 43 days ago |
57-64213 57 days |
0 |
| 42186 |
marcelolynch author:marcelolynch |
refactor(Tactic/Linter/MinImports): make the minImports linter stateful |
This PR rewrites the `minImports` linter as a stateful linter (leanprover/lean4#14357). The linter behavior does not change. The existing tests in `MathlibTest/MinImports.lean` pass without changes. The PR adds one test section that sets `Elab.async true` explicitly: it checks that the linter accumulates imports correctly under parallel elaboration, and that `#import_bumps` keeps parallel elaboration on.
The old implementation kept the cumulative imports in a global `IO.Ref`. The ref is not safe under parallel elaboration. For this reason, `#import_bumps` set `Elab.async false` for the rest of the file. The new implementation keeps the same data in the linter state. The elaborator threads the state through the commands of the file, and the data stays correct under parallel elaboration. `#import_bumps` does not disable `Elab.async` anymore.
Implementation notes:
- The `#reset_min_imports` elaborator does nothing. The linter detects the command syntax and clears its own state. The reset works also when the linter option is off, as before.
- The post phase removes `set_option ... in` prefixes with `withSetOptionIn` from core. leanprover/lean4#14581 generalizes the result type of that function, so it accepts the phase of a stateful linter and not only a `CommandElab`. The generalization ships in v4.34.0-rc1.
- The state type `ImportState` and the linter handle are public. A follow-up can pass the computed import set to the `upstreamableDecl` linter, which computes the same data a second time today.
Measurements on synthetic files (Apple Silicon, 18 cores, medians of 3 runs):
- Proof-heavy file (150 commands, about 120 ms each), linter on: 20.0 s before, 8.8 s after. The old version serialized elaboration of the whole file. The new version keeps elaboration parallel and runs the lint chain next to it.
- The old version with `Elab.async true` emits 123 warning lines instead of the correct 11, because parallel lint tasks race on the ref. The new version emits the correct 11 lines.
- Linter off (2000 trivial commands): the added cost is about 45 microseconds per command.
`registerStatefulLinter` shipped in v4.34.0-rc1
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-linter
LLM-generated
|
149/78 |
Mathlib/Tactic/Linter/MinImports.lean,MathlibTest/MinImports.lean |
2 |
3 |
['JovanGerb', 'github-actions', 'thorimur'] |
nobody |
16-49559 16 days ago |
68-34367 68 days ago |
89-54449 89 days |
1 |
| 43643 |
Sanghyeok0 author:Sanghyeok0 |
refactor(Logic/Relation): move inclusion lemmas out of EqvGen |
This refactor was split out from #40368 following the review discussion there.
Following further review, I moved all lemmas from the `Relation.EqvGen` namespace to `Relation`, except for `is_equivalence`, `setoid`, and `mono`, which retain their original names.
The old names are preserved as deprecated aliases for backward compatibility. I also updated the reference in `Mathlib/Order/JordanHolder.lean` to use `Relation.eqvGen_le` instead of the deprecated name.
**Changes:**
* `Relation.EqvGen.eqvGen_le` → `Relation.eqvGen_le`
* `Relation.EqvGen.eqvGen_mono` → `Relation.eqvGen_mono`
* `Relation.EqvGen.reflGen_le_eqvGen` → `Relation.reflGen_le_eqvGen`
* `Relation.EqvGen.symmGen_le_eqvGen` → `Relation.symmGen_le_eqvGen`
* `Relation.EqvGen.transGen_le_eqvGen` → `Relation.transGen_le_eqvGen`
* `Relation.EqvGen.reflTransGen_le_eqvGen` → `Relation.reflTransGen_le_eqvGen`
* `Relation.EqvGen.eqvGen_reflGen` → `Relation.eqvGen_reflGen`
* `Relation.EqvGen.eqvGen_transGen` → `Relation.eqvGen_transGen`
* `Relation.EqvGen.eqvGen_symmGen` → `Relation.eqvGen_symmGen`
* `Relation.EqvGen.eqvGen_reflTransGen` → `Relation.eqvGen_reflTransGen`
* `Relation.EqvGen.eqvGen_eq_reflTransGen` → `Relation.eqvGen_eq_reflTransGen`
* `Relation.EqvGen.reflTransGen_symmGen` → `Relation.reflTransGen_symmGen`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic
new-contributor
|
53/20 |
Mathlib/Algebra/RingQuot.lean,Mathlib/Data/PFunctor/Multivariate/M.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/Order/JordanHolder.lean |
5 |
17 |
['Sanghyeok0', 'github-actions', 'j-loreaux', 'themathqueen'] |
nobody |
16-44290 16 days ago |
16-44365 16 days ago |
41-67522 41 days |
0 |
| 42588 |
sharky564 author:sharky564 |
fix(Tactic/Linarith): attribute `linarith?` suggestions to the correct hypotheses |
`runLinarith` returned indices into the post-preprocessing fact list, but `linarithUsedHyps` applies them to the pre-preprocessing hypothesis list, so `linarith?` could suggest the wrong hypotheses or fail outright. Fixed this by tagging each fact with the indices of the original hypotheses it was derived from (`TaggedProof`), threaded through all preprocessors.
---
This addresses and closes the issue raised in #41471.
This was broken because the old code passed indices of a list around, without updating when the list was modified by preprocessor dropped, split or synthesised facts. No index-fix could recover this, besides just carrying through the index. Keeping the `Origin` a set rather than a single index is necessary since preprocessors can combine hypotheses. However this does mean the preprocessors no longer act on `Expr`s but rather `TaggedProof`s - I'm not the greatest fan of this, but I couldn't come up with an easy solution that preserved this behaviour. I've also provided additional tests which highlight the issues that would've previously arisen.
AI disclosure:
I did have AI assistance (Claude Opus/Fable) with this, but this was for me to learn more Lean syntax not typically seen in writing proofs. The diagnosis and idea for the solution was mine, and debugging and documentation was with AI assistance.
[](https://gitpod.io/from-referrer/)
|
t-meta
LLM-generated
|
368/189 |
Mathlib/Tactic/Linarith/Datatypes.lean,Mathlib/Tactic/Linarith/Frontend.lean,Mathlib/Tactic/Linarith/NNRealPreprocessor.lean,Mathlib/Tactic/Linarith/Preprocessing.lean,MathlibTest/Tactic/Linarith/Basic.lean,MathlibTest/Tactic/Linarith/NNReal.lean |
6 |
14 |
['github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts', 'sharky564'] |
eric-wieser assignee:eric-wieser |
16-42277 16 days ago |
16-42402 16 days ago |
82-77317 82 days |
0 |
| 40204 |
Jun2M author:Jun2M |
feat(Combinatorics/HypergraphLike): add HypergraphLike class |
Introduces `HypergraphLike V I E G`, an object-indexed incidence interface for developing common graph theory across different representations.
Defines links and adjacency, incidence maps and fibers, and sets of incident vertices and edges. The basic API provides membership characterizations, fiber disjointness and union identities, and relationships between incidence data, links, and adjacency.
Codex assisted with the initial implementation and review; the code was subsequently revised by me.
The following is a longer write-up about what this PR is for, what this PR has, and why it is in this shape.
## Considerations
1. The main consideration for this PR is to create a common language different graph types can use to communicate their structure. The data in the type class is deliberately chosen to be as general as possible, accommodating hypergraphs, digraphs, simple graphs, and more.
2. (Hyper)Graphs are used both as a setting in which vertices, edges, walks, and colorings live, and as an algebraic object that can be modified. These two viewpoints can sometimes be at odds with each other. This typeclass is an acknowledgement that these two viewpoints are different, and both need to be fully supported separately with explicit connection. `HypergraphLike` is the way to view a graph as a setting. Various different graph structures are ways to view a graph as an algebraic object.
3. Graph theory has a lot of uses outside of graph theory. For example, group theory, topology, and more. The type class is designed to be easily applied to an arbitrary object that can be associated with a graph structure.
## Contents
The definition consists of:
| Data | Meaning |
| --- | --- |
| `V`, `I`, `E` | Ambient types of vertex, incidence, and edge labels |
| `V(G)`, `I(G)`, `E(G)` | The set of objects of the (hyper)graph structure |
| `attach'`, `edgeMap'` | The vertex and edge assigned to each incidence |
| `IsSource`, `IsTarget` | The directions in which an incidence can be traversed |
Every incidence is a source, a target, or both. This allows directed and undirected incidences in the same object. Distinct incidences may belong to the same vertex and edge.
`HypergraphLike` does not require the object to be a graph or hypergraph, or to be related to one. Any object can be associated with a (hyper)graph structure and use the graph theory API as such via a `HypergraphLike` instance. As a result, it is possible for an arbitrary object to be associated with a graph structure that it has nothing to do with.
- **`Link G e u v`:** a traversal of `e` from `u` to `v`, retaining a source incidence and a distinct target incidence. Distinctness prevents entering and leaving an undirected edge through the same incidence.
- **`IsLink` and `Adj`:** the existence of a link through a specified edge, and the existence of an edge linking two vertices.
- **`attach` and `edgeMap`:** total extensions of the incidence maps when the corresponding types are nonempty.
- **`edgeFiber` and `vertexFiber`:** the incidences belonging to an edge or vertex.
- **`incVerts` and `incEdges`:** the vertices incident to an edge and the edges incident to a vertex.
Apart from operations, graph API should be built on this type class. More specialized theories can add assumptions such as undirectedness, looplessness, or restrictions on the incidences of each edge. See PRs #43768, #43748 and more to come.
## Design decisions
### Why not require one concrete representation?
Alternative approach to unify various graph structures is to have one very general hypergraph definition and put all possible API there. By extending the definition with other conditions, you can inherit all the API while describing the graph class you want.
This is not used here because
1. It either loses the expected extensionality or restricts which representations can use the API.
2. The API can be inherited using the current instance method more generally (you don't need to `extend` the particular def to inherit them)
3. These two approaches have virtually no difference in formalization cost.
Asterisk for number 3 is that I have not tried to formalize every part of graph theory so it should be taken with a grain of salt. Nevertheless, I have not found cases where `extend` method reduces the formalization cost significantly.
The generality of application is the strong suit of the current approach. The discussion that led to this PR started with efforts to unify different graph structures in Mathlib and future structures to be implemented. The instance method allows even more flexibility. We could talk about a group (with a chosen generating set) being `HypergraphLike` by associating it with a Cayley graph, a CW complex with its 1-skeleton graph, or a lattice with its Hasse graph, in the same manner `SimpleGraph` is `HypergraphLike`. With `extend`, these will require a separate, bespoke association with the appropriate graph structure.
So, it suffices to argue that number 1 is true. The difficulty comes from the fact that the child structures have to contain additional data and therefore additional freedom that it really doesn't need. Consider two simple graphs `G` and `H`, each with vertex set `{u, v}` and single edge between them. In the naive approach where you define `SimpleGraph` like this:
```lean
structure SimpleGraph (ν ι ε : Type*) extends undirected ν ι ε, noMultiEdges ν ι ε ... where
```
Then, `G = H` may not hold. They could have different edge type, incidence type, edge set, incidence set, etc. That is, we have extensionality issue.
The fix is to constrain further until simple graph structure uniquely determines the rest. Here is one possible definition:
```lean
structure SimpleGraph (ν : Type*) extends undirected ν (ν × ν) (Sym2 ν), noMultiEdges ν (ν × ν) (Sym2 ν) ... where
edgeMap'_eq (i) : edgeMap' i = Sym2.mk i.val.fst i.val.snd
attach'_eq (i) : attach' i = i.val.fst
```
Now, any `multigraph` that happens to be a simple graph cannot use `SimpleGraph` results without going through the normalization function, showing that normalization only changed the labels and showing that the normalization function preserves whatever properties, etc. Results that depend on simplicity should be available for arbitrary incidence representations satisfying simplicity, rather than only for a canonical `SimpleGraph` representation. This happens every time a canonical form is chosen to resolve extensionality issues.
### Why per-object indexing?
Indexing by graph type was something I have adopted from `HasAdj` PR (#35776) without critical thinking. In the discussion for `Quiver` (#45034), as soon as I wrote "HypergraphLike expects you to know the edge type before you know what graph you are working with.", I started to think why this is necessary. It is not.
All the code I have about HypergraphLike can be migrated to per-object indexing very easily. The statements did get longer due to adding `HypergraphLike` instance to each graph object but virtually all proofs worked without any changes.
Philosophically, it makes the role of `HypergraphLike` clearer. `HypergraphLike` is defined to have one common language between different graph structures and that common language is the label types and incidence data. Merely belonging to the same Lean type should not impose additional uniformity. Where a result needs shared labels or compatible incidence maps, it can state those requirements explicitly.
In the cases of `Quiver`, it can be supported by `HypergraphLike` as now we supply the edge type along with the specific `Quiver` instance, not before.
Another benefit is that you can use `HypergraphLike` even when not all elements of a type can be interpreted as a graph. This aligns with the rest of the type class hierarchy being built on `HypergraphLike`. (#43768, #43748) `G : Graph V E` could happen to be a simple graph. A subset of a plane could be graph-like.
### Why ambient labels and support sets?
The `id` function holds a special place in our heads. Consider `G`, K4 graph with vertex set `{1, 2, 3, 4}`, and `H`, K5 graph with vertex set `{1, 2, 3, 4, 5}`. Remove edge `s(1, 2)` from `H`. Up to isomorphism, `G` is still a subgraph of `H`. But, with respect to the `id` function, `G` is no longer a subgraph of `H`.
Without support sets, the vertex set is the whole type, so graphs on different vertex sets live on different types. Then only embeddings can be stated, and you lose the labelled subgraph relation. That is, without some special treatment for subtypes, `HypergraphLike` will say `G` is a subgraph of `H` as there exists embedding of `G` into `H`.
Support sets in the type class are exactly the mechanism that allows "special treatment" for subtypes.
## Related work (Not dependency)
- #36743
- [HasAdj discussion](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/HasAdj/with/575843445)
Co-authored-by: OpenAI Codex <codex@openai.com>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
LLM-generated
maintainer-merge
|
458/0 |
Mathlib.lean,Mathlib/Combinatorics/HypergraphLike/Basic.lean |
2 |
59 |
['Jun2M', 'SnirBroshi', 'YaelDillies', 'copilot-pull-request-reviewer', 'github-actions', 'tb65536'] |
nobody |
16-2222 16 days ago |
16-43981 16 days ago |
128-70920 128 days |
10 |
| 42647 |
martinwintermath author:martinwintermath |
feat(Geometry/Convex): add polytopes |
This PR adds the predicate `IsPolytope` for a subset of a `ConvexSpace`.
This is the first PR in a series of PRs implementing polytope theory.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry |
145/0 |
Mathlib.lean,Mathlib/Geometry/Convex/Polytope/Basic.lean,docs/references.bib |
3 |
72 |
['Parcly-Taxel', 'YaelDillies', 'faenuccio', 'github-actions', 'grunweg', 'martinwintermath', 'ooovi', 'vihdzp', 'wwylele'] |
faenuccio and grunweg assignee:grunweg assignee:faenuccio |
15-82524 15 days ago |
16-22282 16 days ago |
82-32808 82 days |
0 |
| 44913 |
Hagb author:Hagb |
chore(Algebra/MonoidAlgebra/Ideal): prove `AddMonoidAlgebra.mem_ideal_span_of'_image` with its `MonoidAlgebra` version |
Resolve the TODO in `AddMonoidAlgebra.mem_ideal_span_of'_image`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
--> |
t-algebra
large-import
label:t-algebra$ |
6/29 |
Mathlib/Algebra/MonoidAlgebra/Ideal.lean |
1 |
1 |
['github-actions'] |
nobody |
15-77988 15 days ago |
15-77990 15 days ago |
15-77917 15 days |
0 |
| 42702 |
artie2000 author:artie2000 |
chore(Data/SetLike): rename `IsConcreteLE` |
* Rename `IsConcreteLE` to `IsMemLE`, as disccused at https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/More.20.60IsConcrete.60.20classes.20for.20.60SetLike.60/with/622616098
* Move several lemmas that ended up in the `IsConcreteLE` namespace after #42666 into the root namespace, making the names longer to disambiguate them:
* `IsConcreteLE.le_iff` to `le_iff_mem_imp_mem`
* `IsConcreteLE.not_le_iff_exists` to `not_le_iff_exists_mem_notMem`
* `IsConcreteLE.lt_iff_le_and_exists` to `lt_iff_le_and_exists_mem_notMem`
* `IsConcreteLE.exists_of_lt` to `exists_mem_notMem_of_lt`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
221/218 |
Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Submonoid/Support.lean,Mathlib/Algebra/Group/Subsemigroup/Defs.lean,Mathlib/Algebra/Lie/Engel.lean,Mathlib/Algebra/Lie/LieTheorem.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/Submodule/Equiv.lean,Mathlib/Algebra/Module/Submodule/Ker.lean,Mathlib/Algebra/Module/Submodule/Map.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/Algebra/Module/Torsion/PrimaryComponent.lean,Mathlib/Algebra/Pointwise/Stabilizer.lean,Mathlib/Algebra/Ring/NonZeroDivisors.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/AlgebraicGeometry/Sites/SmallAffineZariski.lean,Mathlib/AlgebraicTopology/SimplicialComplex/Basic.lean,Mathlib/Analysis/Calculus/TangentCone/Prod.lean,Mathlib/Analysis/Convex/Cone/Extension.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/Basic/SetLike/Basic.lean,Mathlib/CategoryTheory/Groupoid/Subgroupoid.lean,Mathlib/CategoryTheory/Sites/Spaces.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/FieldTheory/Extension.lean,Mathlib/FieldTheory/Finite/Polynomial.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/PurelyInseparable/Basic.lean,Mathlib/FieldTheory/RatFunc/IntermediateField.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean,Mathlib/Geometry/Euclidean/Incenter/SouthPole.lean,Mathlib/GroupTheory/FiniteAbelian/Basic.lean,Mathlib/GroupTheory/FiniteAbelian/Duality.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/Perm/MaximalSubgroups.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/Centralizer.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/GroupTheory/SpecificGroups/ZGroup.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Basic.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean,Mathlib/LinearAlgebra/Basis/VectorSpace.lean,Mathlib/LinearAlgebra/Dual/Defs.lean,Mathlib/LinearAlgebra/Finsupp/Span.lean,Mathlib/LinearAlgebra/Finsupp/Supported.lean,Mathlib/LinearAlgebra/Pi.lean,Mathlib/LinearAlgebra/Prod.lean,Mathlib/LinearAlgebra/Projection.lean,Mathlib/LinearAlgebra/Projectivization/Subspace.lean,Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/NumberTheory/ModularForms/Cusps.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Galois.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/Order/Atoms.lean,Mathlib/Order/PFilter.lean,Mathlib/Order/Sublattice.lean,Mathlib/RepresentationTheory/Stabilizer.lean,Mathlib/RingTheory/Conductor.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation/Valuation.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Basic.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/DedekindDomain/PID.lean,Mathlib/RingTheory/Extension/Cotangent/Basis.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Finiteness.lean,Mathlib/RingTheory/Ideal/GoingUp.lean,Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Colon.lean,Mathlib/RingTheory/Ideal/NatInt.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/IntegralClosure/IntegrallyClosed.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/RingTheory/KrullDimension/Zero.lean,Mathlib/RingTheory/Lasker.lean,Mathlib/RingTheory/LittleWedderburn.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/MvPolynomial/Ideal.lean,Mathlib/RingTheory/Nilpotent/Lemmas.lean,Mathlib/RingTheory/Polynomial/UniversalFactorizationRing.lean,Mathlib/RingTheory/SimpleModule/Isotypic.lean,Mathlib/RingTheory/SimpleRing/Basic.lean,Mathlib/RingTheory/Smooth/NoetherianDescent.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean,Mathlib/RingTheory/Support.lean |
106 |
16 |
['artie2000', 'github-actions', 'martinwintermath', 'mathlib-merge-conflicts'] |
nobody |
15-72363 15 days ago |
15-72500 15 days ago |
36-15003 36 days |
4 |
| 44061 |
teorth author:teorth |
feat(NumberTheory/Mertens): abstract theory of Mertens weights |
This is the first of a three-PR stack splitting the Mertens theorems
development (#41394) into pieces under 500 LoC each.
It introduces `Mathlib/NumberTheory/Mertens/Weight.lean`: the abstract theory
of *Mertens weights* — the `Mertens.Weight` structure and the basic estimates
attached to it (the `E₁`/`E₂` error bounds, `sum_sub_log_*`, `M_bounds`,
`sum_div_log_*`, …). No concrete weight is constructed here; this will be done in #44062.
---
The code was human-generated, but reviewed by AI.
- [x] depends on: #41120
- [x] depends on: #43471
[](https://gitpod.io/from-referrer/)
|
t-number-theory |
502/0 |
Mathlib.lean,Mathlib/NumberTheory/Mertens/Weight.lean |
2 |
11 |
['MichaelStollBayreuth', 'amellendijk', 'github-actions', 'loefflerd', 'mathlib-dependent-issues', 'xroblot'] |
amellendijk assignee:amellendijk |
15-64767 15 days ago |
39-1988 39 days ago |
47-41167 47 days |
2 |
| 38223 |
Deicyde author:Deicyde |
feat(Geometry/Manifold): add `MfldCat`, the category of `C^n` manifolds |
Defines `MfldCat 𝕜 n`: the category of `C^n` manifolds over a field `𝕜`, in which the model with corners is allowed to vary between objects. An object bundles a model vector space `E`, a model space `H`, a model with corners `I : ModelWithCorners 𝕜 E H` and a term of `ModelWithCorners.MfldCat I n`--see #41109. This includes manifolds with boundary / corners.
For more discussion see this Zulip thread: [#PR reviews > #38223 The Category of C^n Manifolds](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2338223.20The.20Category.20of.20C.5En.20Manifolds/with/587038032)
Also added: `ContMDiffMap.id_apply`, `.coe_id` and `.coe_comp` which are comparable to `ContinuousMap` API.
### Future work
- ✅ Define a Monoidal structure via product manifolds, analogous to `Manifold.Topology.Category.TopCat.Monoidal` #38560
- ✅ Define the tangent functor: `M ↦ TM`, `F ↦ F.tangentMap` from `MfldCat (n+1) 𝕜` to `MfldCat n 𝕜` #38270
- Functor `FGModuleCat 𝕜 ⥤ MfldCat 𝕜 n` sending a finite-dimensional `𝕜`-vector space to the manifold modeled on itself. Left as `TODO`.
- Define `FGModuleCat 𝕜` as an enriched category over `MfldCat n 𝕜`. Then _smooth functors_ can be realized as endofunctors on the enriched category. This is the main motivation for this construction.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #41109 [The category of `C^n` manifolds on a fixed model]
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
new-contributor
t-category-theory
|
210/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/Category/MfldCat/Basic.lean,Mathlib/Geometry/Manifold/ContMDiffMap.lean |
3 |
63 |
['Deicyde', 'chrisflav', 'dagurtomas', 'github-actions', 'idontgetoutmuch', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'peabrainiac'] |
robin-carlier assignee:robin-carlier |
15-50462 15 days ago |
60-10939 60 days ago |
119-44431 119 days |
2 |
| 45266 |
RemyDegenne author:RemyDegenne |
feat(MeasureTheory): analytic sets wrt a paving |
Define analytic sets with respect to a paving (`IsPavingAnalytic`), which will be used to prove Choquet's capacitability theorem (the full proof is ready in the Brownian motion project).
These sets are not the same as `MeasureTheory.AnalyticSet`, although in Polish spaces they are closely related as described in the file docstring (this will be shown in a future PR).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Most of the PR was written by hand first (notable exception: the lemma `IsPavingAnalyticFor.isPavingAnalyticFor_nat_nat`), but an LLM reviewed and golfed several proofs. |
brownian
LLM-generated
t-measure-probability
|
395/1 |
Mathlib.lean,Mathlib/MeasureTheory/PavingAnalytic.lean,Mathlib/Topology/Compactness/CompactSystem.lean,docs/references.bib |
4 |
1 |
['github-actions'] |
nobody |
15-27485 15 days ago |
15-27633 15 days ago |
15-27560 15 days |
0 |
| 45268 |
RemyDegenne author:RemyDegenne |
feat: bounds on covering numbers in finite dimensional spaces |
The main result is bounds of order `(r / ε) ^ d` on the covering numbers of a ball of radius `r` at scale `ε`.
Co-authored-by: Etienne Marion <66847262+EtienneC30@users.noreply.github.com>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
First written by hand for the `volume` measure in inner product spaces, then generalized with an LLM. |
LLM-generated
t-analysis
brownian
t-measure-probability
|
277/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Module/Ball/Pointwise.lean,Mathlib/Basic/ENNReal/Inv.lean,Mathlib/MeasureTheory/Measure/Lebesgue/CoveringNumbers.lean,Mathlib/MeasureTheory/Measure/Lebesgue/EqHaar.lean,Mathlib/Topology/EMetricSpace/Defs.lean,Mathlib/Topology/MetricSpace/MetricSeparated.lean |
7 |
1 |
['github-actions'] |
nobody |
15-19647 15 days ago |
15-19811 15 days ago |
15-19738 15 days |
0 |
| 41629 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Subgraph): `neighborSet` of `coe`/`spanningCoe` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
15/3 |
Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
1 |
2 |
['YaelDillies', 'github-actions'] |
nobody |
15-18286 15 days ago |
120-42571 120 days ago |
120-42498 120 days |
0 |
| 45272 |
RemyDegenne author:RemyDegenne |
feat(Topology/EMetricSpace): chaining sequences |
Define a chaining sequence, which is a tool used to bound the supremum of stochastic processes.
Part of the proof of the Kolmogorov-Chentsov theorem.
Co-authored-by: Markus Himmel <markus@lean-fro.org>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-topology
brownian
|
284/0 |
Mathlib.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Topology/EMetricSpace/Chaining.lean |
3 |
1 |
['github-actions'] |
nobody |
15-15142 15 days ago |
15-15305 15 days ago |
15-15232 15 days |
0 |
| 38751 |
YaelDillies author:YaelDillies |
feat(Data/Finset/Density): more `NNRat.cast` lemmas |
From AddCombi
---
- [x] depends on: #38716
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
large-import
label:t-algebra$ |
40/17 |
Mathlib/Data/Finset/Density.lean |
1 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
14-79255 14 days ago |
14-79495 14 days ago |
14-82101 14 days |
1 |
| 44810 |
zixiaowang17 author:zixiaowang17 |
feat(Combinatorics): add abstract graphical Markov properties |
Introduce the global, local, and pairwise Markov properties for undirected graphs, and prove
the forward implications global → local → pairwise under the semigraphoid axioms.
The implementation is a single module importing `Mathlib.Combinatorics.SimpleGraph.Walk.Basic`.
The current framework allows arbitrary vertex types, including infinite and uncountable types.
Reference: David Montague and Bala Rajaratnam, *Graphical Markov models for infinitely many
variables*, *Transactions of the American Mathematical Society* **370** (2018), no. 11,
7557–7603. [doi:10.1090/tran/7048](https://doi.org/10.1090/tran/7048).
---
I want to introduce “a graphical framework in which we can analyze the Markov properties
from a purely set theoretic perspective which is independent of probability theory,” as
described in [Section 4](https://arxiv.org/pdf/1501.07878#page=8).
Motivation: I was trying to provide a common foundation connecting graphical models in
statistics, random fields, and percolation on lattices. Along the way, I found that most of
the materials I read assumed finite vertex sets. However, I want to understand better what
drives the equivalence of the Markov properties, so that we can talk about theorems with
more flexibility. I then found this paper, which, in Section 4, takes a purely set-theoretic approach
to independence and graphical Markov properties, separately from its treatment of
measure-theoretic conditional independence in probabilistic models.
If this PR meets the requirements and is in the right direction, I plan to finish proving
the equivalence of the pairwise, local, and global Markov properties for ternary relations
under suitable intersection assumptions. In the long term, I plan to connect conditional
independence in probability with graphical models, including DAGs.
AI assistance: OpenAI Codex assisted with the Lean definitions and proofs. I checked every
line of the code. |
t-combinatorics
LLM-generated
new-contributor
|
231/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Markov.lean,docs/references.bib |
3 |
4 |
['github-actions', 'zixiaowang17'] |
nobody |
14-78829 14 days ago |
14-78970 14 days ago |
27-51843 27 days |
0 |
| 44978 |
ArtificialZeng author:ArtificialZeng |
feat(Analysis/Normed/Module): uniform bounds for compact injective families |
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. |
t-analysis
LLM-generated
new-contributor
|
57/0 |
Mathlib/Analysis/Normed/Module/FiniteDimension.lean |
1 |
3 |
['ArtificialZeng', 'github-actions'] |
nobody |
14-78613 14 days ago |
14-78808 14 days ago |
22-74957 22 days |
0 |
| 45204 |
Hagb author:Hagb |
feat(Combinatorics/Colex): `Colex (Finset _)` is well-founded |
It is used in #45208 to prove the termination of multivariate polynomial
reduction with decreasing `Colex` order on support of reduced polynomial w.r.t.
the monomial order.
(Lemmas about this fact are proved in #45206.)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
large-import
t-combinatorics
|
74/0 |
Mathlib/Combinatorics/Colex.lean,Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Order/PiLex.lean |
3 |
14 |
['Hagb', 'github-actions', 'vihdzp'] |
nobody |
14-77807 14 days ago |
14-77914 14 days ago |
17-32655 17 days |
1 |
| 42874 |
teorth author:teorth |
feat(RingTheory/MvPolynomial/Symmetric): basic API lemmas for Multiset.esymm |
Add basic lemmas for the elementary symmetric functions `Multiset.esymm`: `esymm_cons`, `esymm_zero`, `esymm_one`, `esymm_card`, `esymm_eq_zero_of_card_lt`, `two_mul_esymm_two`, and `esymm_map_inv` (with a private auxiliary). Also drop the redundant `@[simp]` on `esymm_pair_one`, which is now provable by `simp` from `esymm_one`.
---
The code here was prepared with AI assistance, but then golfed and reviewed by myself. It will be used in a forthcoming PR on the Newton and Maclaurin inequalities.
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
32/0 |
Mathlib/RingTheory/MvPolynomial/Symmetric/Defs.lean |
1 |
8 |
['felixpernegger', 'github-actions', 'teorth', 'vlad902'] |
nobody |
14-76004 14 days ago |
14-76193 14 days ago |
42-52111 42 days |
1 |
| 44798 |
3y3y3y-huaiji author:3y3y3y-huaiji |
style(Order/Heyting): rename inf_himp to inf_himp_self |
Rename `inf_himp` to `inf_himp_self` to align with its dual `sup_sdiff_self` and companion lemma `himp_inf_self`, resolving an in-code TODO. Add a deprecated alias `inf_himp`.
---
> [!NOTE]
> **LLM Disclosure / AI Use**: This PR was prepared with the assistance of an LLM (`LLM-generated`). All proofs and statements have been formally verified by Lean 4 and checked with linters.
|
t-order
LLM-generated
new-contributor
|
5/4 |
Mathlib/Order/Heyting/Basic.lean |
1 |
4 |
['3y3y3y-huaiji', 'github-actions', 'plp127', 'vihdzp'] |
nobody |
14-73450 14 days ago |
27-9094 27 days ago |
27-70544 27 days |
0 |
| 43211 |
YaelDillies author:YaelDillies |
feat(Geometry/Convex): ordered convex spaces |
Define ordered convex spaces as those convex spaces for which taking convex combinations is monotone in its inputs. Since `sConvexComb : StdSimplex R X → X`, the best way to do so is to equip `StdSimplex R X` with the stochastic dominance order and requiring `sConvexComb` to be monotone under that order.
Also define two constructors to pull back a ConvexSpace instance under an injective map with convex range: a computable one further taking a section of the map as input, and a non-computable one. Redefine the `Subtype` instance and define the `OrderDual` instance using the computable one.
Generated by Claude Opus following my existing draft, then reviewed and partly rewritten by myself.
From the convexity refactor. Ordered convex spaces will be used to define convex/concave functions.
Assisted-by: Claude Opus 5
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry
LLM-generated
|
458/10 |
Mathlib.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/Geometry/Convex/ConvexSpace/Order.lean,Mathlib/Geometry/Convex/Set.lean,Mathlib/Order/UpperLower/Basic.lean |
7 |
21 |
['YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
14-71206 14 days ago |
27-22833 27 days ago |
65-80121 65 days |
0 |
| 40368 |
Sanghyeok0 author:Sanghyeok0 |
feat: add confluence predicates for relations |
This PR adds a minimal relation-level API for confluence-style properties:
* `Relation.IsDiamond`
* `Relation.IsConfluent`
* `Relation.IsChurchRosser`
It also adds the basic API connecting these predicates:
* `Relation.ReflTransGen.to_eqvGen`
* `Relation.Join.le_eqvGen`
* `Relation.IsChurchRosser.isConfluent`
* `Relation.IsConfluent.isChurchRosser`
* `Relation.IsChurchRosser.join_reflTransGen_eq_eqvGen`
The main downstream application is the polynomial-reduction development in
#41475. There, polynomial reduction is treated as an ordinary relation on
`MvPolynomial`, and these predicates are used to formulate confluence and the
Church--Rosser property.
A more general rewriting API exists in CSLib. This PR does not attempt to
upstream that API wholesale; its scope is intentionally limited to the
declarations needed by the downstream polynomial application.
The earlier version of this PR also introduced
`Relation.StronglyConfluent` and additional equivalence packaging. Those
declarations have been removed to keep this PR small and application-driven.
Reference: Becker, Weispfenning, and Kredel,
*Gröbner Bases: A Computational Approach to Commutative Algebra*.
AI usage disclosure:
I used OpenAI Codex to generate initial drafts of the definitions, theorem statements, proof scripts, and docstrings. I made the final decisions on the mathematical scope and API design, reviewed the generated code and final changes, and made a few edits to statements and docstrings.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic
new-contributor
tech debt
LLM-generated
|
103/25 |
Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/Logic/Relation.lean |
2 |
38 |
['Hagb', 'Sanghyeok0', 'SnirBroshi', 'chenson2018', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
14-65913 14 days ago |
62-58570 62 days ago |
135-28964 135 days |
1 |
| 41053 |
hawkrobe author:hawkrobe |
refactor(RingTheory): bialgebra and Hopf algebra structures on RingCon quotients |
---
Since #40451, SymmetricAlgebra R M is (symRingCon R M).Quotient, which the ideal quotients of #39790 don't cover. This PR adds the congruence-level constructions, so SymmetricAlgebra's bialgebra and Hopf algebra structures can descend from TensorAlgebra as suggested in #39579, once #31898 lands.
- [x] depends on: #41052
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
|
154/41 |
Mathlib/RingTheory/Bialgebra/Quotient.lean,Mathlib/RingTheory/HopfAlgebra/Quotient.lean |
2 |
6 |
['github-actions', 'hawkrobe', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
14-60779 14 days ago |
21-60002 21 days ago |
21-63855 21 days |
0 |
| 45288 |
JX-Mo author:JX-Mo |
feat(DoubleCoset): add `DoubleCoset.relPosition` |
This is used to analyze the decomposition of double coset. The main function is to switch the right coset to left coset. We have better API around left coset so it makes downstream proofs easier. If we doesn't want large import, we would have to give up `DoubleCoset.relPosition_smul`. But it seems reasonable here since `HgK` is the `H` orbit of `gK` and we will eventually want group action at some point. |
t-group-theory
large-import
|
27/1 |
Mathlib/GroupTheory/DoubleCoset.lean |
1 |
1 |
['github-actions'] |
nobody |
14-59848 14 days ago |
14-62263 14 days ago |
14-62190 14 days |
0 |
| 40967 |
Formalistic03 author:Formalistic03 |
feat(Combinatorics/SimpleGraph/Paths): some lemmas about inducing walks |
Could also be done via `SimpleGraph.Walk.map_induce`, but I thought that doing it directly is not much worse.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
maintainer-merge
|
59/0 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean,Mathlib/Data/List/Nodup.lean,Mathlib/Data/Sym/Sym2.lean |
4 |
34 |
['Formalistic03', 'SnirBroshi', 'github-actions'] |
nobody |
14-49560 14 days ago |
35-11685 35 days ago |
128-72861 128 days |
0 |
| 45263 |
huntse author:huntse |
feat(Order/Filter/Cofinite): add `Filter.countable_sets_cofinite` |
My first attempt at a PR for mathlib so I apologize if I'm doing it wrong. I picked up a lemma in FLT that was marked
as TODO to upstream into mathlib (there it is Filter.cofinite.sets.countable in FLT/Mathlib/Order/Filter/Cofinite.lean)
and upstreamed it.
- I used a name which seemed more in keeping with mathlib convention but please lmk if I should rename it. Both
`countable_sets_cofinite` and `cofinite_sets_countable` seemed somewhat defensible.
- I changed it to a theorem since the neighbouring code seems to all be theorems.
- The actual lean proof is due to kbuzzard. I just copied it upstream and made the following tweaks:
- `(ι : Type*)` was not needed as that's mentioned higher in the file in a `variable` line
- I removed namespacing on Filter.cofinite as we're in that namespace here already
- I didn't use AI to generate this PR or description but since it's my first PR to mathlib and I'm a bit nervous I did
use AI to review the PR and give me suggestions. It suggested the name change and the removal of the redundant
namespacing and type info.
- FLT also has a Countable instance for ↥(cofinite).sets which I left there.
Co-authored-by: kbuzzard
|
t-order
FLT
new-contributor
|
5/0 |
Mathlib/Order/Filter/Cofinite.lean |
1 |
5 |
['github-actions', 'huntse', 'vihdzp'] |
nobody |
14-38854 14 days ago |
14-38990 14 days ago |
15-42496 15 days |
0 |
| 45136 |
raja-19 author:raja-19 |
chore(RingTheory/MvPolynomial/Homogeneous): add lemmas |
These lemmas are used in the proof that the Motzkin polynomial is not expressible as a polynomial sum of squares: #45138. |
t-ring-theory
new-contributor
|
52/0 |
Mathlib/RingTheory/MvPolynomial/Homogeneous.lean |
1 |
9 |
['github-actions', 'raja-19', 'vihdzp', 'wwylele'] |
nobody |
14-15328 14 days ago |
14-15512 14 days ago |
18-79589 18 days |
1 |
| 45137 |
raja-19 author:raja-19 |
chore(Algebra/Polynomial/BigOperators): add `natDegree_sum_pow_eq_of_even` |
This lemma is used in the proof that the Motzkin polynomial is not expressible as a polynomial sum of squares: #45138 . |
t-algebra
new-contributor
label:t-algebra$ |
125/0 |
Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Order/WithBot.lean |
3 |
20 |
['SnirBroshi', 'github-actions', 'raja-19', 'wwylele'] |
nobody |
14-13313 14 days ago |
14-13543 14 days ago |
18-51637 18 days |
1 |
| 42402 |
justus-springer author:justus-springer |
refactor(AlgebraicGeometry/Birational): phase out `Scheme.Over` for rational maps |
Split off from #40871
We refactor `PartialMap.IsOver` to not use `Scheme.Hom.IsOver`, which is being phased out. We still keep it as class with one field for now (as opposed to making it an abbrev for the morphism equation directly). This is because I think it's still useful to have instances for `PartialMap.restrict` and `PartialMap.toRationalMap`. However, some things which used to be instances (`isOver_comp` and `IsOver.compHom`) now need to be lemmas.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry
tech debt
|
100/86 |
Mathlib/AlgebraicGeometry/Birational/Composition.lean,Mathlib/AlgebraicGeometry/Birational/RationalMap.lean |
2 |
4 |
['Brian-Nugent', 'github-actions', 'justus-springer', 'mathlib-merge-conflicts'] |
nobody |
14-10007 14 days ago |
14-10148 14 days ago |
95-17642 95 days |
1 |
| 41393 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Hamiltonian): a graph is Hamiltonian iff there's a Hamiltonian path with adjacent endpoints |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #41435
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
32/9 |
Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean |
1 |
5 |
['YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
14-7175 14 days ago |
39-46557 39 days ago |
119-37311 119 days |
2 |
| 32840 |
joelriou author:joelriou |
refactor(CategoryTheory): remove the old Ext API |
As it is now possible to compute `Ext`-groups (defined using the derived category) using an injective resolution #32105 or a projective resolution #32816, the old `Ext` API (based on left derived functors) is removed.
---
- [x] depends on: #44124
- [x] depends on: #44190
- [x] depends on: #32816
- [x] depends on: #32105
- [x] depends on: #32814
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory
large-import
tech debt
|
285/29 |
Mathlib.lean,Mathlib/Algebra/Homology/Embedding/Basic.lean,Mathlib/Algebra/Homology/Embedding/CochainComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexIsStrictlyGE.lean,Mathlib/Algebra/Homology/LinearYonedaObj.lean,Mathlib/Algebra/Homology/LocalCohomology.lean,Mathlib/CategoryTheory/Abelian/Ext.lean,Mathlib/CategoryTheory/Linear/Yoneda.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/Basic.lean,Mathlib/RepresentationTheory/Homological/Resolution.lean |
10 |
7 |
['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
nobody |
14-5739 14 days ago |
14-5912 14 days ago |
14-54982 14 days |
0 |
| 41722 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Connectivity/Subgraph): `mapToSubgraph` API |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
36/0 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean |
1 |
3 |
['YaelDillies', 'github-actions'] |
nobody |
14-2617 14 days ago |
14-2673 14 days ago |
118-22319 118 days |
1 |
| 42775 |
hawkrobe author:hawkrobe |
feat(RingTheory/HopfAlgebra): construct Hopf algebras from primitive generators |
Upgrade a bialgebra generated by primitive elements to a Hopf algebra (`HopfAlgebra.ofPrimitives`), given an anti-algebra hom `S : A →ₐ[R] Aᵐᵒᵖ` negating each generator, and show that such an `S` is the antipode (`HopfAlgebra.eq_antipodeAlgHomOp_of_primitives`). Both build on `HopfAlgebra.ofAntipodeOfAdjoin` from #41828, which superseded the generators construction this PR originally carried.
Split out of #39841. Claude Code was used to prepare this revision. |
t-ring-theory
new-contributor
|
31/4 |
Mathlib/RingTheory/HopfAlgebra/Primitive.lean |
1 |
3 |
['github-actions'] |
alreadydone assignee:alreadydone |
13-77432 13 days ago |
13-77483 13 days ago |
84-41278 84 days |
1 |
| 42561 |
SnirBroshi author:SnirBroshi |
feat(Order/RelSeries): order series by refinement |
Define a partial order on `RelSeries`, add basic lemmas for the operations (e.g. `p < p.append q`), and relate to `IsChain` on sets.
This lets us spell "maximal chain" using series.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
t-order
|
151/5 |
Mathlib/Order/RelSeries.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
13-67539 13 days ago |
13-67604 13 days ago |
93-17262 93 days |
0 |
| 45326 |
hawkrobe author:hawkrobe |
feat(Algebra/DirectSum): internal direct sums under equivalences and fibrewise regrouping |
this PR gives two ways of producing internal direct sums.
* a direct sum is the internal direct sum of the images of its summands.
* regrouping an internal direct sum along the fibres of `f : ι → κ` gives an internal direct sum.
these are used in the proof that a tensor product of graded modules is graded (#42365).
Claude Code was used to prepare this PR.
|
t-algebra label:t-algebra$ |
89/1 |
Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Module.lean |
2 |
1 |
['github-actions'] |
nobody |
13-67434 13 days ago |
13-67529 13 days ago |
13-67456 13 days |
3 |
| 43372 |
plp127 author:plp127 |
chore: deprecate monad operations on `MvPolynomial` |
Deprecate some monad operations on `MvPolynomial`, as they are simply special cases of existing `eval` operations and it's not clear from the name what the signatures of these operations are.
---
- [x] depends on: #43371
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
377/254 |
Mathlib/Algebra/Module/LinearMap/Polynomial.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/Expand.lean,Mathlib/Algebra/MvPolynomial/Monad.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/RingTheory/AlgebraicIndependent/Basic.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/RingTheory/WittVector/Basic.lean,Mathlib/RingTheory/WittVector/Defs.lean,Mathlib/RingTheory/WittVector/Frobenius.lean,Mathlib/RingTheory/WittVector/InitTail.lean,Mathlib/RingTheory/WittVector/IsPoly.lean,Mathlib/RingTheory/WittVector/MulCoeff.lean,Mathlib/RingTheory/WittVector/MulP.lean,Mathlib/RingTheory/WittVector/StructurePolynomial.lean,Mathlib/RingTheory/WittVector/Verschiebung.lean,Mathlib/RingTheory/WittVector/WittPolynomial.lean |
17 |
5 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
13-62356 13 days ago |
13-62400 13 days ago |
57-61456 57 days |
0 |
| 45133 |
SnirBroshi author:SnirBroshi |
feat(LinearAlgebra/Matrix/Rank): remove commutativity and finiteness requirements from `Matrix.rank` |
We have `Matrix.cRank` (`Cardinal`) / `Matrix.eRank` (`ENat`) / `Matrix.rank` (`Nat`), but the last one is defined differently (`finrank mulVecLin.range`) and so requires `[CommSemiring R]` and `[Fintype n]`.
This redefines `Matrix.rank` as `cRank.toNat` (equivalently, the `finrank` of the column space). This unifies the three rank definitions and lets us use similar proofs and keep similar APIs.
---
Since this causes a bit of a havoc in the file (thanks to the super useful `unusedFintypeInType` linter), I have not attempted to generalize theorems yet.
(except `rank_subsingleton`/`rank_one`/`rank_zero` since they were easy and right at the beginning)
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
147/126 |
Mathlib/LinearAlgebra/Matrix/Echelon/Decomposition.lean,Mathlib/LinearAlgebra/Matrix/Echelon/Pivot.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Card.lean,Mathlib/LinearAlgebra/Matrix/Rank.lean,Mathlib/Tactic/NormRank.lean |
5 |
4 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
13-62030 13 days ago |
13-62079 13 days ago |
18-81624 18 days |
0 |
| 45157 |
tb65536 author:tb65536 |
feat(Analysis/Matrix/Normed): non-archimedean operator norm inequality |
For matrices over a non-archimedean `SeminormedAddCommGroup`, the operator norm is not quite non-archimedean, but is at least non-archimedean up to multiplication by the number of columns (independent of the number of terms of the sum).
This is used in #42985 to prove that the Gelfand radius norm is nonarchimedean.
(I didn't bother adding the two-term version `‖M + N‖ ≤ Fintype.card β * max ‖M‖ ‖N‖` since it only beats the trivial bound `‖M + N‖ ≤ 2 * max ‖M‖ ‖N‖` when `β` is subsingleton).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis |
15/0 |
Mathlib/Analysis/Matrix/Normed.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
13-60093 13 days ago |
13-60156 13 days ago |
18-12074 18 days |
1 |
| 44021 |
mcdoll author:mcdoll |
feat(Analysis/Normed): boundedness of seminorms |
Define abstract boundedness and equivalence and use it to define both for seminorms. This has several aims: (a) do the same thing for families of seminorms and simplify some of the boundedness of linear maps construction (b) allow for equivalent norms of a normable space without any type synonyms (c) a streamlined version of `LinearMap.extendOfNorm` which hides most of the boilerplate.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis |
277/0 |
Mathlib.lean,Mathlib/Algebra/Order/Module/Defs.lean,Mathlib/Analysis/Normed/Module/Seminorm/Bounded.lean |
3 |
1 |
['github-actions'] |
nobody |
13-50828 13 days ago |
13-51104 13 days ago |
13-51031 13 days |
0 |
| 40955 |
tb65536 author:tb65536 |
feat(NumberTheory/NumberField/ExistsRamified): galois groups are generated by inertia subgroups |
This PR uses Minkowski's theorem to prove that a Galois group of a number field is generated by its inertia subgroups.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mhttps://github.com/leanprover-community/mathlib4/compare/master...tb65536:mathlib4:tb_ram3?expand=1#files_bucketathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #40387
- [x] depends on: #40438
- [x] depends on: #40757
- [x] depends on: #40952
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
t-algebra
label:t-algebra$ |
50/9 |
Mathlib/NumberTheory/NumberField/ExistsRamified.lean |
1 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
mattrobball assignee:mattrobball |
13-50462 13 days ago |
82-84387 82 days ago |
82-85523 82 days |
1 |
| 41729 |
vaca22 author:vaca22 |
feat(RingTheory/DedekindDomain): add divisor group core |
Add the divisor group of a Dedekind domain as a formal-sum model, together with the additive equivalence to the multiplicative group of nonzero fractional ideals.
**Relation to what Mathlib already has.** As pointed out on Zulip, Mathlib already knows that fractional ideals factor: `FractionalIdeal.count` gives the exponent of a height-one prime, and `ClassGroup` is built from fractional ideals directly. This PR does not re-prove any of that — it reuses `count` and `finite_factors` verbatim. What it adds is the *additive* packaging:
* `IsDedekindDomain.Divisor R := HeightOneSpectrum R →₀ ℤ`, so a divisor is a finitely supported integer-valued function and one can write `D₁ + D₂`, `-D`, `D v`, and use the whole `Finsupp` API (`support`, `sum`, induction on the support);
* `FractionalIdeal.divisorEquiv`, an `AddEquiv` from `(FractionalIdeal R⁰ K)ˣ` to `Divisor R`, turning ideal multiplication into divisor addition.
The multiplicative view is the right one for the class group; the additive one is what divisor-theoretic arguments are written in, where one constantly forms `D - D'`, compares coefficients prime by prime, and does induction over `D.support`. Having both, related by a single `AddEquiv`, means neither side has to be re-derived.
**Downstream use.** This is the bottom layer of a formalization of Riemann–Roch for algebraic function fields (announced in `#AI authored projects > Riemann–Roch for function fields`): `L(D)`, `deg D`, and the statement `ℓ(D) = deg D + 1 - g + ℓ(W - D)` are all phrased in terms of additive divisors, and the degree map is defined by summing coefficients over `D.support`.
Happy to reshape the API — in particular whether `Divisor` should be an `abbrev` or a structure, and whether this belongs next to `Factorization` rather than in its own file.
AI usage: LLM-generated, disclosed per the AI policy.
|
t-ring-theory
new-contributor
LLM-generated
|
100/0 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Divisor.lean |
2 |
4 |
['github-actions', 'grunweg', 'vaca22'] |
alreadydone assignee:alreadydone |
13-50457 13 days ago |
115-60428 115 days ago |
117-57070 117 days |
0 |
| 42833 |
YaelDillies author:YaelDillies |
feat(Combinatorics/SimpleGraph/Connectivity): efficient decidability instances |
Currently, the `DecidableRel G.Reachable` instance provided by mathlib works by enumerating *all* walks from `u` to `v` of length less than `Fintype.card V`, which takes time exponential in the number of vertices. Currently also, the `Decidable G.Preconnected` and `Decidable G.Connected` instances build on the `DecidableRel G.Reachable` one and suffer from the same exponential slowdown.
This PR reworks those instances to use breadth-first search, which is polynomial in the number of vertices. Since the BFS doesn't depend on the starting vertex, we wrap it in `Trunc` to cut down an unnecessary factor of `Fintype.card V` (this makes a difference only if the graph is NOT preconnected).
This showed up in FormalConjectures because a contributor used `decide +native` to prove that some concrete graph on 11 vertices was connected. Their proof timed out while I was bumping the repo to v4.30.
Also make `G` implicit in a bunch of non-rewriting lemmas.
From FormalConjectures
Generated by Claude Opus following my idea, largely rewritten manually afterwards.
Assisted-by: Claude Opus 4.8
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
LLM-generated
|
343/31 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean,Mathlib/Data/Fintype/Basic.lean,Mathlib/Data/List/Nodup.lean,MathlibTest/SimpleGraph.lean |
5 |
9 |
['SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions'] |
b-mehta assignee:b-mehta |
13-50453 13 days ago |
51-2411 51 days ago |
53-5265 53 days |
0 |
| 45324 |
joelriou author:joelriou |
feat(AlgebraicTopology): the model structure on Under categories |
This is dual to the existing construction for `Over` categories
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-category-theory |
117/3 |
Mathlib/AlgebraicTopology/ModelCategory/Over.lean,Mathlib/CategoryTheory/LiftingProperties/Over.lean,Mathlib/CategoryTheory/Limits/Over.lean,Mathlib/CategoryTheory/MorphismProperty/Comma.lean |
4 |
1 |
['FernandoChu', 'github-actions'] |
robin-carlier assignee:robin-carlier |
13-50448 13 days ago |
13-74232 13 days ago |
13-74159 13 days |
0 |
| 42912 |
justin-palumbo author:justin-palumbo |
feat(Topology/GDelta): a completely metrizable subspace of a T6 space is Gδ |
Adds TopologicalSpace.IsCompletelyMetrizableSpace.isGδ: a completely metrizable subspace of a T6 space is Gδ
This is one direction of a foundational fact in descriptive set theory --- the Polish subspaces of a Polish space are exactly the Gδ subsets.
The proof here is modeled on the exposition in Anush Tserunyan's descriptive set theory notes https://www.math.mcgill.ca/atserunyan/Teaching_notes/dst_lectures.pdf, with one adjustment; to make the formalization easier and avoid having multiple distance metrics instantiated at the same time, instead of directly defining open `U_n` with `s = ⋂ n, U` define them such that `s = closure s ∩ ⋂ n, U n` and then appeal to the fact closed sets are Gδ in a perfectly normal space.
---
- [x] depends on: #42896 [which fixes buggy naming present in Topology/Metrizable/CompletelyMetrizable]
This can be viewed as a companion to #42693, which - under the stronger assumption of the ambient space being Polish - establishes the other direction --- a Gδ subspace of a Polish space is itself Polish.
Together, these give Alexandrov's theorem, characterizing the Polish subspaces of an ambient Polish space as exactly the Gδ ones, and (via `Metric.PiNatEmbed.exists_embedding_to_hilbert_cube`) Polish spaces as exactly the Gδ subsets of the Hilbert cube. If and when both these PRs are committed, I anticipate adding these consequences to Topology/MetricSpace/Polish.lean
LLM usage: I wrote the initial version myself, while using Google's free "AI mode" to help me find relevant lemma names in the codebase, and afterward used helped Claude Opus to review, which led to simplifying some of the arguments. I take full responsibility for the code here
|
t-topology
new-contributor
|
91/0 |
Mathlib.lean,Mathlib/Topology/GDelta/CompletelyMetrizable.lean |
2 |
8 |
['github-actions', 'justin-palumbo', 'mathlib-dependent-issues', 'plp127'] |
felixpernegger assignee:felixpernegger |
13-44094 13 days ago |
81-13471 81 days ago |
82-5735 82 days |
0 |
| 43216 |
JadAbouHawili author:JadAbouHawili |
feat(Combinatorics/SimpleGraph/Clique): independence number is zero iff the graph has no vertices |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
62/11 |
Mathlib/Combinatorics/SimpleGraph/Clique.lean |
1 |
66 |
['JadAbouHawili', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
SnirBroshi assignee:SnirBroshi |
13-22575 13 days ago |
15-31252 15 days ago |
60-56659 60 days |
0 |
| 42494 |
JadAbouHawili author:JadAbouHawili |
feat(Combinatorics/SimpleGraph/Connectivity): add edge reachability and connectivity numbers |
Define edge reachability and connectivity numbers with some basic API
Partially solves #34961
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
81/2 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean,Mathlib/Order/CompleteLattice/Lemmas.lean |
2 |
169 |
['JadAbouHawili', 'SnirBroshi', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] |
SnirBroshi assignee:SnirBroshi |
13-22568 13 days ago |
15-31080 15 days ago |
65-35530 65 days |
0 |
| 44885 |
3y3y3y-huaiji author:3y3y3y-huaiji |
feat(Combinatorics/Quiver/Path): monotonicity of valuations and cycle obstruction |
Define monotonicity of vertex valuations along paths in a quiver and deduce that
strict valuations rule out non-trivial cycles. As a consequence, `Reachable` is a
partial order when such a valuation exists.
---
> [!NOTE]
> **LLM Disclosure / AI Use**: This PR was prepared with the assistance of an LLM
> (`LLM-generated`). All proofs and statements have been formally verified by Lean 4
> and checked with linters. |
t-combinatorics
LLM-generated
new-contributor
|
65/2 |
Mathlib/Combinatorics/Quiver/Path.lean |
1 |
5 |
['3y3y3y-huaiji', 'github-actions', 'leanprover-radar'] |
nobody |
13-20615 13 days ago |
14-35107 14 days ago |
14-35034 14 days |
0 |
| 43705 |
joelriou author:joelriou |
feat(Category/Abelian/Projective): interaction between `ProjectiveResolution.extMk` and the connecting morphism |
This is the dual result to #43224. Obtaining the dual version required introducing more API for the mapping cocone.
---
- [x] depends on: #43224
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory
tech debt
|
415/29 |
Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/ShortExact.lean,Mathlib/Algebra/Homology/DerivedCategory/SingleTriangle.lean,Mathlib/Algebra/Homology/DerivedCategory/SmallShiftedHom.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexShift.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexSingle.lean,Mathlib/Algebra/Homology/HomotopyCategory/MappingCocone.lean,Mathlib/Algebra/Homology/HomotopyCategory/Shift.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShortExact.lean,Mathlib/CategoryTheory/Abelian/Injective/Ext.lean,Mathlib/CategoryTheory/Abelian/Projective/Ext.lean,Mathlib/CategoryTheory/Abelian/Projective/Extend.lean,Mathlib/CategoryTheory/Triangulated/Rotate.lean |
13 |
5 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
13-19033 13 days ago |
13-19078 13 days ago |
21-33044 21 days |
0 |
| 44304 |
robin-carlier author:robin-carlier |
chore(Order): make intervals implicit_reducible |
A bunch of `set_option backward.isDefEq.respectsTransparency false` I ran into could be removed by this:
In some personal project, automation got stuck because of the difference between `j ≤ i` and `j ∈ Set.Iic i` at implicit_reducible transparency.
I’m myself not convinced making these intervals `implicit_reducible` is the best, but declaring `j ≤ i = j ∈ Set.Iic i` as a true defeq-abuse (and hunting down every instance of this, adding `Set.mem_Iic.mpr <|` in every place that needs it) seems like overkill and a net regression on user experience.
Note that more generally, the question could arise for every semireducible declaration of type `Set α` where the body is `{ x | P x}` for some `P : α → Prop`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
8/5 |
Mathlib/Order/Interval/Set/Defs.lean |
1 |
15 |
['JX-Mo', 'SnirBroshi', 'alreadydone', 'github-actions', 'grunweg', 'joelriou', 'leanprover-radar', 'robin-carlier', 'vihdzp'] |
nobody |
13-18683 13 days ago |
19-81930 19 days ago |
39-41213 39 days |
1 |
| 41793 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph): `fromEdgeSet edgeSet` for subgraphs and walks |
`fromEdgeSet G'.edgeSet = G'.spanningCoe` for a subgraph `G'`
`fromEdgeSet p.edgeSet = p.toSubgraph.spanningCoe` for a walk `p`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
16/2 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
3 |
2 |
['YaelDillies', 'github-actions'] |
nobody |
13-17506 13 days ago |
116-65851 116 days ago |
116-65778 116 days |
0 |
| 41623 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Trails): a walk is Eulerian iff it is a trail of length `G.edgeSet.encard` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
38/3 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean |
2 |
5 |
['YaelDillies', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
13-17243 13 days ago |
13-17339 13 days ago |
117-34151 117 days |
0 |
| 41633 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Paths): length of closed a walk/trail isn't `1`/`2` |
For a closed walk `p`:
- `p.length ≠ 1`
- `p.IsTrail` → `p.length ≠ 2`
- `p.IsTrail` → `p.length ≤ 2` → `p.Nil`
---
Since a circuit is a closed non-nil trail, `IsTrail.nil_of_length_le_two` is basically the contrapositive of `IsCircuit.three_le_length`, but I think this form is useful.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
11/4 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean |
2 |
3 |
['YaelDillies', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
13-17067 13 days ago |
65-1531 65 days ago |
116-19967 116 days |
0 |
| 43427 |
smmercuri author:smmercuri |
feat: `LiesOver` valuations on `adicCompletion` |
---
- [x] depends on: #36769
- [x] depends on: #43428
- [x] depends on: #41702
- [x] depends on: #44279
- [x] depends on: #44666
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
191/13 |
Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation/Completion.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation/Ramification.lean,Mathlib/RingTheory/Valuation/Extension.lean |
4 |
5 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536'] |
nobody |
13-15925 13 days ago |
13-16749 13 days ago |
13-26933 13 days |
2 |
| 45175 |
marcelolynch author:marcelolynch |
chore(scripts): use the module system in scripts |
Convert seven `scripts/*.lean` files to the module system and remove `allowNonModules` from the `mk_all` and `check_title_labels` executables.
Notes:
- `main` is `public` in each executable. With a private `main`, the linker takes `main` from `libLeanExport` and the executable runs the wrong program without an error.
- `Mathlib.Util.GetAllModules` uses a `public section` instead of a `public meta section`, because `mk_all` calls it at run time.
- `lint-style` and `export_crossrefs` are not converted. `lint-style` uses `meta` declarations from `Mathlib.Tactic.Linter.TextBased`, and `export_crossrefs` reads declaration ranges, which a module import does not load.
🤖
|
|
46/25 |
Mathlib/Util/GetAllModules.lean,lakefile.lean,scripts/autolabel.lean,scripts/check_title_labels.lean,scripts/create_deprecated_modules.lean,scripts/extract-unique-nonascii.lean,scripts/find_command_range.lean,scripts/mk_all.lean,scripts/nightly-testing-checklist.lean |
9 |
3 |
['github-actions', 'grunweg', 'mathlib-merge-conflicts'] |
grunweg assignee:grunweg |
13-1624 13 days ago |
13-1667 13 days ago |
14-14910 14 days |
0 |
| 45312 |
Nicola9Falciola author:Nicola9Falciola |
feat(LinearAlgebra): add det and charpoly of an endomorphism preserving complementary submodules and simplify proofs |
This PR adds the formulas for computing the determinant and the `charpoly` of a linear map when there exist
two complementary sub-modules stable with respect of that map. With this new lemmas I simplify the proof of `finrank_maxGenEigenspace_zero_eq ` that do not require anymore the choice of a basis.
It also adds the description of an endomorphism `f ` via the conjugation by `prodEquivOfIsCompl` as the product map of the restriction of `f` on the complementary sub-modules.
It also adds missing API for `.reflection` proving a simplification of the proof of `det_reflection` that do not requires the choice of a basis anymore.
Changes per file :
- Analysis/InnerProductSpace/Projection/FiniteDimensional : goofing of the proof of `det_reflection`
- Analysis/InnerProductSpace/Projection/Reflection : add missing API for the description of `K.reflection.toLinearMap` on `K` and its orthogonal complement and its restriction on the them.
- LinearAlgebra/Charpoly/ToMatrix : add the formula describing the charateristic polynomial of and endomorphism in terms
of the product of the charateristic polynomials of its restrictions.
- LinearAlgebra/Determinant : add the formula describing the determinant of and endomorphism in terms
of the product of the determinats of its restrictions.
- LinearAlgebra/Eigenspace/Zero : goofing the proof of `finrank_maxGenEigenspace_zero_eq`.
- LinearAlgebra/Projection : add the description of conjugation of the equivalence `prodEquivOfIsCompl.symm` on the endomorphisms of `E`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
61/23 |
Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/Analysis/InnerProductSpace/Projection/Reflection.lean,Mathlib/LinearAlgebra/Charpoly/ToMatrix.lean,Mathlib/LinearAlgebra/Determinant.lean,Mathlib/LinearAlgebra/Eigenspace/Zero.lean,Mathlib/LinearAlgebra/Projection.lean |
6 |
1 |
['github-actions'] |
nobody |
12-84627 12 days ago |
13-19337 13 days ago |
14-1292 14 days |
1 |
| 41241 |
intgrah author:intgrah |
feat(Order/Category): cartesian closed and distributive structure on PartOrd and Preord |
Give `PartOrd` and `Preord` `CartesianMonoidalCategory`, `MonoidalClosed`, and `IsCartesianDistributive` instances.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
maintainer-merge
|
311/0 |
Mathlib.lean,Mathlib/Order/Category/PartOrd/CartesianClosed.lean,Mathlib/Order/Category/PartOrd/Colimits.lean,Mathlib/Order/Category/PartOrd/Reflective.lean,Mathlib/Order/Category/Preord/CartesianClosed.lean,Mathlib/Order/Category/Preord/Colimits.lean,Mathlib/Order/Category/Preord/Reflective.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
8 |
27 |
['Vierkantor', 'YaelDillies', 'github-actions', 'intgrah', 'thomaskwaring'] |
nobody |
12-81973 12 days ago |
13-83851 13 days ago |
126-62066 126 days |
0 |
| 42357 |
SynBurz author:SynBurz |
feat: the Krull dimension of the product of finitely many rings is equal to the maximum of Krull dimensions of the factors |
Add `ringKrullDim_pi_eq_iSup_ringKrullDim`. Also add useful defs: `LTSeries.sigmaEquiv`, `PrimeSpectrum.sigmaToPiOrderIso`, and lemmas `PrimeSpectrum.sigmaToPiOrderIso_apply`, Pi.not_comap_evalRingHom_le_comap_of_neq`, `LTSeries.sigma_fst_eq_fst`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
93/0 |
Mathlib/Order/RelSeries.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean |
3 |
7 |
['SynBurz', 'github-actions', 'mathlib-merge-conflicts', 'tb65536', 'wwylele'] |
nobody |
12-79827 12 days ago |
32-58295 32 days ago |
61-64249 61 days |
0 |
| 45003 |
vihdzp author:vihdzp |
refactor(Algebra/Order/Archimedean/Basic): change `nat` → `natCast` in theorem statements |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
This came up in #44992. |
t-order |
197/140 |
Counterexamples/SeparableNotSecondCountable.lean,Counterexamples/SorgenfreyLine.lean,Mathlib/Algebra/Order/Archimedean/Basic.lean,Mathlib/Algebra/Order/Archimedean/Hom.lean,Mathlib/Algebra/Order/Archimedean/Real/Basic.lean,Mathlib/Algebra/Order/CompleteField.lean,Mathlib/Analysis/AbsoluteValue/Equivalence.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Normed/Field/Lemmas.lean,Mathlib/Analysis/SpecialFunctions/Pow/Asymptotics.lean,Mathlib/Basic/ENNReal/Basic.lean,Mathlib/Basic/NNReal/Defs.lean,Mathlib/Basic/Real/Embedding.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Real.lean,Mathlib/MeasureTheory/Function/AbsolutelyContinuous.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/Hahn.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/Padics/RingHoms.lean,Mathlib/NumberTheory/Real/Irrational.lean,Mathlib/NumberTheory/Transcendental/Liouville/Measure.lean,Mathlib/Probability/Kernel/Disintegration/CDFToKernel.lean,Mathlib/Probability/Kernel/Disintegration/MeasurableStieltjes.lean,Mathlib/Probability/Kernel/Disintegration/StandardBorel.lean,Mathlib/Probability/Kernel/Representation.lean,Mathlib/Probability/Moments/SubGaussian.lean,Mathlib/Topology/Algebra/Order/Archimedean.lean,Mathlib/Topology/Instances/ENNReal/Lemmas.lean,Mathlib/Topology/Instances/EReal/Lemmas.lean,Mathlib/Topology/Instances/Rat.lean,Mathlib/Topology/Instances/Real/Lemmas.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,Mathlib/Topology/Order/Real.lean |
37 |
7 |
['SnirBroshi', 'github-actions', 'themathqueen'] |
nobody |
12-78662 12 days ago |
12-78662 12 days ago |
16-56702 16 days |
0 |
| 44284 |
xroblot author:xroblot |
feat(NumberTheory/RamificationInertia): splitting of a prime in the decomposition ring |
If `𝓟` is the prime of the decomposition ring below `P`, then `P` is the only prime above `𝓟`, `𝓟` has the same ramification index and inertia degree in `B` as `p`, and both are `1` over `A`. The ramification index and inertia degree of `P` over the decomposition ring are computed as well.
The versions for the decomposition field are now deduced from these, and hold under weaker hypotheses than before.
Prepared with Claude Code 🤖
---
- [x] depends on: #44283
|
t-number-theory |
136/56 |
Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean |
1 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
tb65536 assignee:tb65536 |
12-78539 12 days ago |
12-78540 12 days ago |
12-78467 12 days |
7 |
| 45300 |
xroblot author:xroblot |
refactor(RingTheory/Ideal): generalize some absNorm lemmas and move primesEquiv |
This is the clean-up part of #42567, extracted so that the summability work can build on it.
Two divisibility and positivity results about the absolute norm of an ideal are generalized from `ℤ` to a Dedekind domain, and from prime ideals to proper ideals, with the earlier versions deprecated.
The equivalence between the height-one prime ideals of the integral closure of `ℤ` in `ℚ` and the prime numbers is moved to the Dedekind domain files, where it belongs, and redefined through the absolute norm rather than through a generator of the corresponding ideal of `ℤ`. It now assumes less, and the auxiliary API it used to be built from is deprecated without replacement.
Finally, the equivalence between the height-one spectra of two isomorphic rings is reworked so that the surjectivity proofs have the expected type, which removes the need for a `backward.isDefEq` option.
Prepared with Claude Code 🤖
|
tech debt |
136/71 |
Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/Padics/HeightOneSpectrum.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/Ideal/Int.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean |
5 |
1 |
['github-actions'] |
nobody |
12-76525 12 days ago |
12-76660 12 days ago |
14-3342 14 days |
1 |
| 45369 |
Multramate author:Multramate |
chore: fix stale file and module references in comments |
This updates references in comments and docstrings to files and modules that have been moved, renamed or deleted.
🤖 Generated with [Claude Code](https://claude.com/claude-code) |
LLM-generated |
38/44 |
Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Convex/MetricSpace.lean,Mathlib/Analysis/InnerProductSpace/TensorProduct.lean,Mathlib/Analysis/Normed/Operator/BoundedLinearMaps.lean,Mathlib/Analysis/SpecialFunctions/Log/PosLog.lean,Mathlib/CategoryTheory/Bicategory/Functor/StrictPseudofunctor.lean,Mathlib/CategoryTheory/ConcreteCategory/Bundled.lean,Mathlib/CategoryTheory/EffectiveEpi/Basic.lean,Mathlib/CategoryTheory/Functor/FunctorHom.lean,Mathlib/CategoryTheory/Functor/KanExtension/Basic.lean,Mathlib/CategoryTheory/Limits/Types/Products.lean,Mathlib/CategoryTheory/Monoidal/Closed/Enrichment.lean,Mathlib/CategoryTheory/Triangulated/Opposite/Pretriangulated.lean,Mathlib/CategoryTheory/Triangulated/TStructure/TruncLTGE.lean,Mathlib/Combinatorics/Enumerative/Pentagonal/Ring.lean,Mathlib/Data/List/TFAE.lean,Mathlib/Data/Nat/Multiplicity.lean,Mathlib/GroupTheory/GroupExtension/Defs.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/FundThmCalculus.lean,Mathlib/Probability/Independence/Conditional.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/Tactic/Basify.lean,Mathlib/Tactic/Basify/Attr.lean,Mathlib/Tactic/Ring/Compare.lean,Mathlib/Topology/Algebra/InfiniteSum/TsumUniformlyOn.lean,Mathlib/Topology/Algebra/Module/Spaces/WeakDual.lean |
28 |
6 |
['Multramate', 'felixpernegger', 'github-actions'] |
nobody |
12-74495 12 days ago |
12-79788 12 days ago |
12-79715 12 days |
0 |
| 45343 |
thinkthoughts author:thinkthoughts |
feat(Data/Nat/Totient): totient of a pairwise coprime product |
My PR adds a theorem for Euler's totient function over a product of natural numbers, where any two distinct factors have a greatest common divisor of 1.
It also adds a theorem for products of distinct primes, where each prime contributes its value minus one. The prime-specific result follows from the more general totient-product theorem.
Both results provide reusable statements in Mathlib using existing properties of Euler's totient function.
---
**Validation:** The revised PR passed all 12 applicable Mathlib CI checks, including build and lint checks. Two additional checks were skipped. No new imports or axioms introduced.
**Research context:** This comes from my work on the General Divisor Theorem and Lean prime-gap formalization; specifically consdering Euler's totient function and products of distinct primes.
General Divisor Theorem: https://github.com/thinkthoughts/general-divisor-theorem
Lean prime-gap formalization: https://github.com/thinkthoughts/lean-bgp212
Related (my initial) mathematical work: https://translatepi.ai/main.pdf
**AI assistance:** I used Claude to develop the Lean proofs, prepare the patch, and perform local compilation and lint checks. I used ChatGPT to review the mathematical specification and help identify a reusable Mathlib contribution. ChatGPT and DeepSeek also assisted with reviewing the sustainably optimized proof, and explaining its mathematical structure.
I read Cantor's diagonal argument in 2003 and have since directed my own work, and reviewed the results; so I'm responsible for the submitted work. And thanks for your help!
|
t-data
new-contributor
LLM-generated
|
18/0 |
Mathlib/Data/Nat/Totient.lean |
1 |
6 |
['SnirBroshi', 'github-actions', 'thinkthoughts'] |
nobody |
12-71319 12 days ago |
12-71319 12 days ago |
13-6814 13 days |
0 |
| 43539 |
abhijitaj1997 author:abhijitaj1997 |
feat(CategoryTheory/Monoidal/Cartesian/Endomorphism): add ring and semiring structures |
Given two monoidal object in a nice enough category, this show that the monoidal morphisms between then forms an additive group. This additive group is part of a larger semiring structure.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-category-theory
|
133/0 |
Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Endomorphism.lean |
2 |
41 |
['Multramate', 'abhijitaj1997', 'alreadydone', 'github-actions', 'joelriou', 'robin-carlier'] |
joelriou assignee:joelriou |
12-68285 12 days ago |
12-68285 12 days ago |
61-22650 61 days |
0 |
| 45331 |
plp127 author:plp127 |
feat(RingTheory/Valuation): cardinality of a valued field is bounded by the cardinality of the residue field and value group |
We show the cardinality of a valued field is at most the cardinality of the residue field raised to the power of the cardinality of the value group.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-ring-theory |
89/0 |
Mathlib.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Cardinality.lean |
3 |
4 |
['github-actions', 'vihdzp'] |
nobody |
12-68078 12 days ago |
13-17072 13 days ago |
13-66055 13 days |
0 |
| 42189 |
cameronfreer author:cameronfreer |
feat(ModelTheory/Basic): add characterization of languages with countably many symbols |
Add the instance `Countable.countable_relations`, the counterpart of `Countable.countable_functions`, and relate `Countable L.Symbols` and `L.card ≤ ℵ₀` to the separate countability of function and relation symbols, which is how model-theoretic statements usually assume a countable language:
* `countable_symbols_iff : Countable L.Symbols ↔ Countable (Σ l, L.Functions l) ∧ Countable (Σ l, L.Relations l)`
* `card_le_aleph0_iff_countable : L.card ≤ ℵ₀ ↔ Countable (Σ l, L.Functions l) ∧ Countable (Σ l, L.Relations l)`
Also add a general instance `Countable.countable_sum` for `L.sum L'`, move the `constantsOn` instance from `Encoding.lean` to `LanguageMap.lean` as `Countable.countable_constantsOn`, and replace the `withConstants` instance in `Encoding.lean` with `Countable.countable_withConstants` in `LanguageMap.lean`, derived from the sum instance.
---
For example, [`Descriptive/Polish.lean#L46`](https://github.com/cameronfreer/infinitary-logic/blob/1a478e80794080a536931c029281bb65266b3171/InfinitaryLogic/Descriptive/Polish.lean#L46) in cameronfreer/infinitary-logic assumes only that the relation symbols are countable. Thanks to @NoneMore for suggesting the `Encoding.lean` cleanup.
🤖 These proofs were written with the assistance of Claude Opus 5 high and reviewed by GPT Sol 5.6 xhigh.
|
t-logic
new-contributor
LLM-generated
|
33/12 |
Mathlib/ModelTheory/Basic.lean,Mathlib/ModelTheory/Encoding.lean,Mathlib/ModelTheory/LanguageMap.lean |
3 |
5 |
['NoneMore', 'cameronfreer', 'github-actions'] |
nobody |
12-67561 12 days ago |
103-25629 103 days ago |
103-25556 103 days |
0 |
| 42758 |
cameronfreer author:cameronfreer |
feat(ModelTheory): add syntax and semantics for infinitary logic |
Add syntax and semantics for the infinitary logics L∞ω and Lω₁ω.
In `BoundedFormulaInf L ι α n`, the `iSup`/`iInf` constructors are indexed by a single type `ι`, which is used for every infinitary conjunction and disjunction in a formula. The specialization
```lean
abbrev BoundedFormulaω (α : Type u') (n : ℕ) := L.BoundedFormulaInf ℕ α n
```
lives in the same universe as the finitary `BoundedFormula`, as suggested by @plp127 in [#mathlib4 > ModelTheory: API for infinitary formulas of L_{∞,ω} @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/ModelTheory.3A.20API.20for.20infinitary.20formulas.20of.20L_.7B.E2.88.9E.2C.CF.89.7D/near/613390601).
Also add derived connectives with `alls`/`exs`, `Realize` with `simp` lemmas for each constructor and derived connective, and the embedding `BoundedFormula.toInf` with `realize_toInf`.
---
I developed this with extensive assistance from several Claude and GPT models along with [lean4-skills](https://github.com/cameronfreer/lean4-skills) and [lean-lsp-mcp](https://github.com/oOo0oOo/lean-lsp-mcp) as part of the ongoing project [cameronfreer/infinitary-logic](https://github.com/cameronfreer/infinitary-logic/).
|
t-logic
LLM-generated
new-contributor
|
446/0 |
Mathlib.lean,Mathlib/ModelTheory/Infinitary/Semantics.lean,Mathlib/ModelTheory/Infinitary/Syntax.lean,MathlibTest/InfinitarySyntax.lean |
4 |
4 |
['cameronfreer', 'github-actions'] |
nobody |
12-67551 12 days ago |
85-68633 85 days ago |
87-47522 87 days |
0 |
| 45385 |
vihdzp author:vihdzp |
feat: cofinality lemmas for ordinal arithmetic |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-set-theory |
37/0 |
Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean |
1 |
1 |
['github-actions'] |
nobody |
12-62427 12 days ago |
12-62480 12 days ago |
12-62407 12 days |
0 |
| 29624 |
mcdoll author:mcdoll |
feat(LinearAlgebra/LinearPMap): add definition of resolvent and resolvent identities |
This PR defines the resolvent of an unbounded operator as a linear map. There are slight differences to the way the resolvent is defined in the literature: we use a purely algebraic description, in particular we do not assume that the operator is closed.
We prove the well-known first and second resolvent identities.
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
To indicate co-authors, include at least one commit authored by each
co-author among the commits in the pull request. If necessary, you may
create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
When merging, all the commits will be squashed into a single commit listing all co-authors.
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #42423
- [x] depends on: #42425
- [x] depends on: #43923
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-analysis
label:t-algebra$ |
292/5 |
Mathlib.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/Resolvent.lean |
4 |
66 |
['YaelDillies', 'github-actions', 'j-loreaux', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'mcdoll', 'riccardobrasca'] |
nobody |
12-58945 12 days ago |
12-58945 12 days ago |
120-18263 120 days |
0 |
| 41882 |
theebayuser author:theebayuser |
feat(Data/List): decidability of HasPeriod and periods of repeated lists |
Hello, this PR extends `Mathlib/Data/List/PeriodicityLemma.lean` with:
* a `Decidable (List.HasPeriod w p)` instance (it is a prefix test), and
* two directions that relate periods to repetition:
* `hasPeriod_flatten_replicate` — `(replicate n l).flatten` has period `l.length`
* `eq_flatten_replicate_of_hasPeriod` — a word with period `p` and length `r * p` is the `r`-fold repetition of its length-`p` prefix.
This characterizes `r`-th powers of words by a period plus a length constraint, which a future follow-up PR that I plan to work on will use.
AI disclosure: This code was mostly generated by Claude Fable 5 and Opus 4.8 as part of my larger project on combinatorics on words, which I then reviewed and revised to contribute to mathlib.
|
t-data
LLM-generated
new-contributor
|
56/1 |
Mathlib/Data/List/PeriodicityLemma.lean |
1 |
8 |
['SnirBroshi', 'github-actions', 'theebayuser'] |
TwoFX assignee:TwoFX |
12-50441 12 days ago |
30-34898 30 days ago |
114-24520 114 days |
0 |
| 43440 |
Raph-DG author:Raph-DG |
feat(AlgebraicGeometry): serre's R_k condition for schemes |
In this PR, we define Serre's R_k condition. We also show that R_1 is equivalent to all local rings in codimension one being DVRs, though we show this under the assumption that the local rings are all domains. This assumption can be dropped once #28683 is merged.
AI disclosure: assisted by claude opus 5
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
104/0 |
Mathlib.lean,Mathlib/AlgebraicGeometry/RegularInCodimension.lean |
2 |
14 |
['Brian-Nugent', 'Raph-DG', 'github-actions', 'justus-springer'] |
joelriou assignee:joelriou |
12-50434 12 days ago |
55-61001 55 days ago |
65-40968 65 days |
0 |
| 45350 |
JovanGerb author:JovanGerb |
chore: decapitalize types in theorems |
According to the naming convention, types need to be decapitalized in theorem names. This PR fixes a few violations.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
|
69/35 |
Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/CategoryTheory/Extensive.lean,Mathlib/CategoryTheory/Monoidal/Comon_.lean,Mathlib/FieldTheory/IsAlgClosed/Classification.lean,Mathlib/GroupTheory/CosetCover.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean,Mathlib/Order/KrullDimension.lean,Mathlib/RingTheory/Regular/RegularSequence.lean,Mathlib/SetTheory/Cardinal/Embedding.lean |
10 |
5 |
['github-actions', 'grunweg'] |
grunweg assignee:grunweg |
12-49589 12 days ago |
12-49589 12 days ago |
12-49516 12 days |
0 |
| 42353 |
sankalpsthakur author:sankalpsthakur |
feat(RingTheory): add nilpotence lemmas for zero sums |
In a semiring, adds:
- `sq_eq_sq_of_add_eq_zero`: if `x + y = 0` then `x^2 = y^2`
- `IsNilpotent.of_add_eq_zero_left`: if `x + y = 0` and `y` is nilpotent, so is `x`
- `isNilpotent_iff_of_add_eq_zero`: under `x + y = 0`, `x` is nilpotent iff `y` is
Motivated by #10539.
---
### Validation
Built locally: `lake build Mathlib.RingTheory.Nilpotent.Basic` succeeds.
### AI/LLM disclosure
AI coding tools were used to help draft this change and PR description. I reviewed the complete change, understand the reasoning, and verified the build locally before submitting. |
t-ring-theory
new-contributor
LLM-generated
|
49/0 |
Mathlib/RingTheory/Nilpotent/Basic.lean |
1 |
29 |
['github-actions', 'sankalpsthakur', 'tb65536'] |
mattrobball assignee:mattrobball |
12-48362 12 days ago |
74-12097 74 days ago |
80-5224 80 days |
0 |
| 32157 |
peabrainiac author:peabrainiac |
feat(Analysis/Calculus): Hadamard's lemma |
Add [Hadamard's lemma](https://en.wikipedia.org/wiki/Hadamard%27s_lemma) for functions from finite-dimensional normed spaces to Banach spaces.
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #31141
[](https://gitpod.io/from-referrer/)
|
t-analysis |
121/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/Hadamard.lean |
2 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
12-47989 12 days ago |
12-48037 12 days ago |
12-48509 12 days |
0 |
| 45022 |
Parcly-Taxel author:Parcly-Taxel |
chore: remove some tech debt |
The removals in this PR are `backward.defeqAttrib.useBackward`, some adaptation notes from the upgrade to 4.30.0-rc1 and one `backward.isDefEq.respectTransparency.types`. |
tech debt |
21/54 |
Mathlib/Algebra/DirectSum/Algebra.lean,Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/QuaternionBasis.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arctan.lean,Mathlib/CategoryTheory/SmallObject/Construction.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean,Mathlib/LinearAlgebra/Determinant.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Pi.lean,Mathlib/Order/CompleteLattice/Basic.lean |
12 |
1 |
['github-actions'] |
nobody |
12-38399 12 days ago |
12-38448 12 days ago |
20-47216 20 days |
0 |
| 45404 |
davidiach author:davidiach |
feat(InformationTheory/KullbackLeibler): add restriction lemmas |
Restricting two finite measures to the same set decreases their KL divergence. This PR adds the integral identity that explains why, and the inequality that follows from it.
Neither lemma requires the set to be measurable. Both concern restrictions without normalization and build on the existing `klFun` API.
Verified against current mathlib on Lean 4.36.0-rc2, including builds, linters, and axiom checks.
AI assistance: Astra Pro identified the contribution; Codex extracted and refined the proofs, checked for duplicates, and ran verification.
|
t-measure-probability
LLM-generated
new-contributor
|
32/0 |
Mathlib/InformationTheory/KullbackLeibler/Basic.lean |
1 |
3 |
['davidiach', 'github-actions'] |
nobody |
12-21725 12 days ago |
12-21792 12 days ago |
12-21719 12 days |
0 |
| 44039 |
Nicola9Falciola author:Nicola9Falciola |
feat(LinearAlgebra/Matrix/GeneralLinearGroup/Card): add the cardinality of `GL n R` given `f : R →+* S` a local ring hom |
---
Add a new section `IsLocalHom`, given a local ring hom `f : R →+* S` we have that:
- The induced map on `GL n R →* GL n S` is surjective
- We can explicitly express its kernel
- We can thus write `Nat.card GL n R = Nat.card (RingHom.ker f) ^ (n ^ 2) * Nat.card GL n S`
This is needed to prove the formula for `GL n ZMod N`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #43845
- [x] depends on: #43898
- [x] depends on: #43945
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
36/0 |
Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Card.lean |
1 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
12-19589 12 days ago |
12-19645 12 days ago |
12-25847 12 days |
1 |
| 44841 |
grunweg author:grunweg |
feat: `ContDiffAt.hasStrictFDerivAt_fderiv_of_minSmoothness_le` |
Give a sufficient criterion for a derivative being a strict derivative: a map being `C^1` at a point suffices over the real or complex numbers, otherwise we need analyticity.
This will be used to generalise the inverse function theorem to analytic manifolds.
---
- [x] depends on: #44840
I added the new lemmas to a new file, as there was no existing module with the right set of imports. I'm happy to move it elsewhere (or give the file a better name) if preferred.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis |
112/4 |
Mathlib.lean,Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Analysis/Calculus/ContDiff/StrictFDerivAt.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean |
4 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
12-18340 12 days ago |
12-18390 12 days ago |
12-18317 12 days |
2 |
| 42821 |
EtienneC30 author:EtienneC30 |
chore: deprecate PMF |
Deprecate [PMF](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Probability/ProbabilityMassFunction/Basic.html#PMF). The preferred spelling is to use [MeasureTheory.Measure.sum](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Measure/MeasureSpace.html#MeasureTheory.Measure.sum) and [MeasureTheory.Measure.dirac](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Measure/Dirac.html#MeasureTheory.Measure.dirac), see how [ProbabilityTheory.poissonMeasure](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Probability/Distributions/Poisson/Basic.html#ProbabilityTheory.poissonMeasure) and [ProbabilityTheory.geometricMeasure](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Probability/Distributions/Geometric.html#ProbabilityTheory.geometricMeasure) are defined for instance.
This was discussed on Zulip among reviewers, and see also https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/generic.20shannon.20entropy.20formalization.20mathlib4/near/584361371 for pointers to some PRs where some discussion on the topic happened.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #42908
- [x] depends on: #42909
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
large-import
|
258/175 |
Mathlib/Probability/ProbabilityMassFunction/Basic.lean,Mathlib/Probability/ProbabilityMassFunction/Binomial.lean,Mathlib/Probability/ProbabilityMassFunction/Constructions.lean,Mathlib/Probability/ProbabilityMassFunction/Integrals.lean,Mathlib/Probability/ProbabilityMassFunction/Monad.lean |
5 |
7 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
RemyDegenne assignee:RemyDegenne |
12-11043 12 days ago |
12-11335 12 days ago |
31-68902 31 days |
0 |
| 45409 |
JackFeliks author:JackFeliks |
feat(Analysis/SpecificLimits): bound alternating series error from convergence |
Our change allows the same error bound to be used in more cases, for example when calculating π/4 using the Leibniz series. Existing uses continue to work.
---
I came up with this contribution while testing my own experimental stack of algorithms.
Codex prepared the code and tests, and Argon reviewed the proposal. |
t-analysis
LLM-generated
new-contributor
|
81/27 |
Mathlib/Analysis/Real/Pi/Leibniz.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,MathlibTest/AlternatingSeries.lean |
3 |
3 |
['JackFeliks', 'github-actions'] |
nobody |
12-9169 12 days ago |
12-11499 12 days ago |
12-11426 12 days |
0 |
| 45207 |
Hagb author:Hagb |
feat({Algebra/MonoidAlgebra,RingTheory/MvPolynomial}/Ideal): characterize membership of ideal generated by polynomial terms |
$p \in \langle {i | c_ix^{\alpha_i}} \rangle$ if and only if $\mathrm{coeff}_d(p) \in \langle c_i | \alpha_i \le d \rangle$.
It is used in #45208.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-ring-theory
large-import
|
76/27 |
Mathlib/Algebra/MonoidAlgebra/Ideal.lean,Mathlib/RingTheory/MvPolynomial/Ideal.lean |
2 |
1 |
['github-actions'] |
nobody |
12-7786 12 days ago |
15-77042 15 days ago |
15-76969 15 days |
1 |
| 44275 |
seewoo5 author:seewoo5 |
feat(FourierTransform): linear equivariance |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Linear equivariance of Fourier transform: `𝓕 (f ∘ A) w = |A.toLinearMap.det|⁻¹ • 𝓕 f (A.symm.adjoint w)`. Proof is essentially by change of variable. Originally written by Opus 5, with additional golfs by myself.
This was formalized while I was refactoring OpenAI's formalization on Cohn-Elkies bound and its optimal exponent. Note that one can generalize further (actually without much effort) to the case where the domain and codomain of `A` are different, by replacing determinant with [`LinearMap.normDet`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/InnerProductSpace/NormDet.html#LinearMap.normDet). But it seems that this would add a lot imports, and I may had to make a separate file (something like `Fourier/Linear.lean`?), but I'm not sure if this is a good idea. The general version can be found [here](https://github.com/seewoo5/cohn-elkies-refactor/blob/b5165ff7049114ce2c551f15b8c75d4aca5ab850/CohnElkiesForMathlib/Analysis/Fourier/FourierTransform.lean#L30). |
t-analysis
LLM-generated
|
16/0 |
Mathlib/Analysis/Fourier/FourierTransform.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
12-7594 12 days ago |
12-7651 12 days ago |
42-19143 42 days |
0 |
| 43902 |
seewoo5 author:seewoo5 |
feat(Trigonometric): define coth and prove basic properties |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Define `Complex.coth`, `Real.coth` and prove basic theorems (almost same as those of `tanh`). I found that there's `cot` but no `coth` yet.
[](https://gitpod.io/from-referrer/)
|
t-analysis |
37/0 |
Mathlib/Analysis/Complex/Trigonometric.lean |
1 |
8 |
['SnirBroshi', 'github-actions', 'luigi-massacci', 'seewoo5'] |
nobody |
12-7263 12 days ago |
12-7324 12 days ago |
52-60706 52 days |
0 |
| 44996 |
WenrongZou author:WenrongZou |
feat(MvPowerSeries/Order): order of a difference of products |
In this PR, we add some lemmas about `MvPowerSeries.order`.
- `coeff_eq_of_lt_weightedOrder_sub`: if `weight w d < (f - g).weightedOrder w`, then `coeff d f = coeff d g`.
- `le_weightedOrder_prod_sub_prod`: if `n ≤ (a i - b i).weightedOrder w` for all `i ∈ s`, then `n ≤ (∏ i ∈ s, a i - ∏ i ∈ s, b i).weightedOrder w`.
- `add_nsmul_le_weightedOrder_prod_sub_prod`: if, in addition, every `a i` and `b i` has weighted order at least `k`, the bound becomes `n + (#s - 1) • k`.
We also add the corresponding `order` versions: `coeff_eq_of_lt_order_sub`, `le_order_prod_sub_prod` and `add_nsmul_le_order_prod_sub_prod`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-ring-theory
maintainer-merge
|
55/1 |
Mathlib/RingTheory/MvPowerSeries/Order.lean |
1 |
7 |
['Vierkantor', 'WenrongZou', 'github-actions', 'riccardobrasca'] |
nobody |
12-4858 12 days ago |
18-9973 18 days ago |
22-13712 22 days |
1 |
| 41685 |
plp127 author:plp127 |
feat: free modular lattice on three generators |
We define `FreeModLatThree`, the free modular lattice on three generators, as an inductive type and prove the universal property.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
587/0 |
Mathlib.lean,Mathlib/Order/FreeModLatThree.lean |
2 |
24 |
['YaelDillies', 'alreadydone', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'tb65536'] |
YaelDillies assignee:YaelDillies |
11-81937 11 days ago |
12-76705 12 days ago |
117-27575 117 days |
0 |
| 45426 |
tb65536 author:tb65536 |
chore(RingTheory/DedekindDomain/AdicValuation/Ramification): remove usage of Ideal.ramificationIdx' |
This PR removes usages of `Ideal.ramificationIdx'` from `RingTheory/DedekindDomain/AdicValuation/Ramification`, preparing the way for the eventual deprecation of `Ideal.ramificationIdx'`.
The generalization `multiplicity_map_eq_mul` was suggested by AI. It looks a bit strange, but is exactly what's needed here, and I couldn't find a cleaner generalization.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-ring-theory
t-algebra
label:t-algebra$ |
38/5 |
Mathlib/RingTheory/DedekindDomain/AdicValuation/Ramification.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/RingTheory/RamificationInertia/Ramification.lean |
4 |
1 |
['github-actions'] |
nobody |
11-75425 11 days ago |
11-75473 11 days ago |
11-75400 11 days |
0 |
| 45429 |
JJYYY-JJY author:JJYYY-JJY |
feat(Probability/Martingale): add Ville's inequality |
Proves Ville's inequality: a nonnegative supermartingale `f` reaches a level `a > 0` with probability at most `μ[f 0] / a`, both up to a fixed time and over all natural-number times. Nonnegativity is only required almost everywhere. Also adds a supermartingale version of expected_stoppedValue_mono.
This is the first PR towards Freedman's inequality.
Plan:
- quadratic upper bounds for Real.exp and Bernstein's inequality;
- the predictable quadratic variation of a discrete-time process, the Bernstein exponential
supermartingale, and Freedman's inequality, proved by applying Ville's inequality from this PR.
Found #43185 which may cause conflict, willing to fix once it's merged.
AI usage: Codex and Claude were used to refined part of the proofs. |
t-measure-probability
LLM-generated
|
104/0 |
Mathlib.lean,Mathlib/Probability/Martingale/OptionalStopping.lean,Mathlib/Probability/Martingale/Ville.lean,docs/references.bib |
4 |
2 |
['github-actions'] |
nobody |
11-66179 11 days ago |
11-73427 11 days ago |
11-73354 11 days |
0 |
| 43857 |
vihdzp author:vihdzp |
feat: split `transfiniteIterate` into `sup` and `inf` versions |
We rename `transfiniteIterate` to `supTransfiniteIterate` and create the analogous `infTransfiniteIterate` in its place. One of them uses suprema to compute the value at limit points, and the other uses infima.
The plan is to then use both of these definitions to deprecate `OrdinalApprox.lfpApprox` and `OrdinalApprox.gfpApprox`, which are simply specializations of these.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
t-order
|
177/139 |
Mathlib/CategoryTheory/Abelian/GrothendieckCategory/EnoughInjectives.lean,Mathlib/CategoryTheory/ObjectProperty/LimitsClosure.lean,Mathlib/CategoryTheory/Presentable/SharplyLT/Basic.lean,Mathlib/Order/TransfiniteIteration.lean |
4 |
2 |
['YaelDillies', 'github-actions'] |
YaelDillies assignee:YaelDillies |
11-63904 11 days ago |
11-63904 11 days ago |
54-1683 54 days |
0 |
| 45419 |
themathqueen author:themathqueen |
feat(RingTheory): some API for `LinearMap.baseChange` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-ring-theory |
45/0 |
Mathlib/LinearAlgebra/TensorProduct/RightExactness.lean,Mathlib/RingTheory/Flat/Basic.lean,Mathlib/RingTheory/Flat/Equalizer.lean,Mathlib/RingTheory/Flat/FaithfullyFlat/Basic.lean |
4 |
3 |
['github-actions', 'themathqueen'] |
nobody |
11-62910 11 days ago |
11-68795 11 days ago |
11-83770 11 days |
0 |
| 45376 |
plp127 author:plp127 |
feat(Order): `IsModularLattice` instances for `WithTop` and `WithBot` |
Provide `IsModularLattice` instances for `WithTop` and `WithBot` when the base type is a modular lattice.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
11/0 |
Mathlib/Order/ModularLattice.lean |
1 |
4 |
['github-actions', 'plp127', 'vihdzp'] |
nobody |
11-57762 11 days ago |
11-57813 11 days ago |
12-70997 12 days |
0 |
| 45441 |
janbernloehr author:janbernloehr |
feat(Analysis/Normed/Operator/Compact): preserve compact remainders under one-sided inverses |
Add `IsCompactOperator.sub_id_of_rightInverse` and `IsCompactOperator.sub_id_of_leftInverse`: if `f - id` is compact and `g` is a continuous linear right or left inverse of `f`, then `g - id` is compact.
Work over an arbitrary ring and a module whose underlying additive group is a topological group. The proofs use compactness under composition and negation, through the identities `(f - id) ∘L g = id - g` and `g ∘L (f - id) = id - g`.
These lemmas are used in my thesis formalization to show that compact derivative remainders are preserved under inverse coordinate changes. They package an elementary consequence of compactness being preserved under composition with continuous linear maps and negation.
---
Local validation passed with Lean `v4.36.0-rc2`: the affected-module build, style lint, axiom checks, standalone usage examples, and `git diff --check`. There are no PR dependencies.
AI assistance: OpenAI Codex was used when writing the Lean proofs.
Related background: #35048 (the existing Fredholm alternative), #39274 (broader Fredholm infrastructure), and #43906 (a closed, unmerged compact-perturbation development).
|
t-analysis
new-contributor
LLM-generated
|
37/0 |
Mathlib/Analysis/Normed/Operator/Compact/Basic.lean |
1 |
2 |
['github-actions'] |
nobody |
11-57511 11 days ago |
11-60253 11 days ago |
11-60180 11 days |
0 |
| 45444 |
janbernloehr author:janbernloehr |
feat(Analysis): characterize weighted summability by geometric tails |
Add `ENNReal.tsum_rpow_mul_lt_top_iff_geometric_tails`: for $f:I\to[0,\infty]$, a size map $\nu:I\to\mathbb N$, a real base $b>1$, a positive integer cutoff $M$, and real $t>0$, set
$$
\begin{aligned}
S&:=\sum_i f_i,
& W_t&:=\sum_i(1+\nu(i))^t f_i,\\
T_k&:=\sum_{\nu(i)\ge b^kM}f_i,
& G_t&:=\sum_{k=0}^{\infty}b^{kt}T_k.
\end{aligned}
$$
Prove the quantitative ENNReal estimates
$$
W_t\le(1+bM)^t(S+G_t),
\qquad
G_t\le\frac{b^t}{b^t-1}\,W_t,
$$
and hence the equivalence
$$
W_t<\infty
\quad\Longleftrightarrow\quad
S<\infty\;\land\;G_t<\infty.
$$
The estimates allow infinite coefficients and divergent sums; the first also holds at order zero. Use nonnegative double-sum interchange and finite geometric-series estimates, then derive the real-valued summability criteria as corollaries. No monotonicity of the coefficients or finiteness of the size-map fibers is required.
This criterion is used in the formalisation of my dissertation, in a weighted-regularity argument.
---
Local validation passed with Lean `v4.36.0-rc2`: the affected-module build, style lint, 15 linters, axiom checks, standalone usage examples (including the nonintegral base $b=3/2$ and natural-base specialisations), and `git diff --check`. There are no PR dependencies.
AI assistance: OpenAI Codex was used to adapt and generalize the proofs for the ENNReal formulation.
|
t-analysis
new-contributor
LLM-generated
|
274/0 |
Mathlib.lean,Mathlib/Analysis/SummableGeometricTails.lean |
2 |
2 |
['github-actions'] |
nobody |
11-57506 11 days ago |
11-57956 11 days ago |
11-57883 11 days |
0 |
| 45445 |
janbernloehr author:janbernloehr |
feat(Analysis/Normed/Lp): detect PiLp norms by conjugate pairings |
Add norm-attaining conjugate test vectors for finite real or complex `PiLp` spaces, and deduce a criterion for bounding the norm from all conjugate-unit-ball pairings. Include the corresponding Hölder bound, both endpoint pairs `(1, ∞)` and `(∞, 1)`, and empty index types.
Use the bilinear pairing `∑ i, a i * b i`, with conjugation incorporated into the test vector, so the results support holomorphic interpolation. Reuse `NNReal.isGreatest_Lp` for finite exponents and handle the endpoints explicitly.
These lemmas are used in the formalization of my dissertation to recover ℓp norm bounds from finite test-pairing estimates in the discrete Hilbert-transform argument.
---
## Dependencies and merge order
No prerequisite PRs. Merge this before #45447, which is stacked on this change. The coordinate-restriction contribution is independent.
## Validation
Checked using Lean `v4.36.0-rc2`:
- Module build, style linter and declaration linters.
- Real/complex examples, p=2, both conjugate endpoint pairs and an empty index type.
- Generated import and diff/whitespace checks.
- Axiom inspection: only `propext`, `Classical.choice`, `Quot.sound`.
## AI assistance
OpenAI Codex has been used in the writing of the Lean implementation.
|
t-analysis
LLM-generated
new-contributor
|
167/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Lp/PiLpDual.lean |
2 |
2 |
['github-actions'] |
nobody |
11-57501 11 days ago |
11-57698 11 days ago |
11-57625 11 days |
0 |
| 45447 |
janbernloehr author:janbernloehr |
feat(Analysis/Normed/Lp): interpolate finite matrix bounds |
Add `Matrix.norm_sum_mulVec_interpolate` and `Matrix.norm_mulVec_interpolate`, giving sharp interpolation of finite complex matrix bounds. If `A` has nonnegative bounds `B₀` from `ℓp₀` to `ℓq₀` and `B₁` from `ℓp₁` to `ℓq₁`, conclude for `0 ≤ t ≤ 1`
$$
\|Ax\|_s \le B_0^{1-t} B_1^t \|x\|_r,
\qquad
\frac1r = \frac{1-t}{p_0}+\frac{t}{p_1},\quad
\frac1s = \frac{1-t}{q_0}+\frac{t}{q_1}.
$$
Use entire power families and Hadamard's three-lines theorem for the bilinear estimate, then conjugate norm detection for the operator bound. Endpoint input exponents are positive and finite, with `1 ≤ r < ∞`; output exponents are strictly greater than one and may be infinite.
This result is used in the formalization of my dissertation to interpolate finite matrix estimates for the discrete Hilbert transform. The dimension-independent constant keeps the bounds uniform as finite truncations grow.
---
## Dependencies and merge order
Depends on #45445 **merge that PR first, then this one**.
## Validation
Checked using Lean `v4.36.0-rc2`:
- Module build, style linter and declaration linters.
- Interpolation from 2 and 4 to 8/3, and from `1 → ∞` and `2 → 2` to `4/3 → 4`.
- Zero bounds, t=0 and t=1, empty index types, generated import and diff/whitespace checks.
- Axiom inspection: only `propext`, `Classical.choice`, `Quot.sound`.
## AI assistance
OpenAI Codex has been used to write the Lean implementation based on my dissertation proofs. |
t-analysis
LLM-generated
new-contributor
|
472/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Lp/PiLpDual.lean,Mathlib/Analysis/Normed/Lp/PiLpInterpolation.lean |
3 |
2 |
['github-actions'] |
nobody |
11-57495 11 days ago |
11-57564 11 days ago |
11-57491 11 days |
0 |
| 45448 |
grunweg author:grunweg |
feat(Geometry/Manifold/VectorBundle/Basic): small missing API lemmas |
For all three of them, the analogous lemmas already exists for differentiable sections. From the project on the fundamental of Riemannian geometry: Ehresmann connections, curvature and geodesics.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-differential-geometry |
18/0 |
Mathlib/Geometry/Manifold/VectorBundle/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
11-56480 11 days ago |
11-56522 11 days ago |
11-56449 11 days |
1 |
| 36878 |
plp127 author:plp127 |
chore: override `npow` in compositional monoids |
If `FooHom` is the type of foo homomorphisms, then `FooHom A A` naturally gets the structure of a monoid by setting one to be the identity homomorphism and setting multiplication to be composition. This PR overrides the `npow` field of this `Monoid` to have `f ^ n` be definitionally equal to `f^[n]`. `FooEquiv A A` also naturally gets a group structure in the same way, this PR overrides the `npow` field to have `f ^ n` be definitionally equal to `f^[n]` and to have `f ^ (n + 1)` be definitionally equal to `f ^ n * f`. This does break one pre-existing definitional equality: when `e : Equiv.Perm α`, `e⁻¹ ^ n = (e ^ n)⁻¹` will no longer be definitional.
This PR also sets the `zpow` field of `Group (FooEquiv A A)` instances so that `(f ^ n).toEquiv` is definitionally equal to `f.toEquiv ^ n`.
The monoid and group instances to modify are found by searching loogle for `"one_apply"`.
The motivation is to make natural number powers commute definitionally with the coercion from `AlgEquiv` to `LinearMap`.
---
- [x] depends on: #45218
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
large-import |
206/66 |
Mathlib/Algebra/AddConstMap/Equiv.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/Order/Group/End.lean,Mathlib/Algebra/Ring/Aut.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/Algebra/Star/MonoidHom.lean,Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/Algebra/Star/StarRingHom.lean,Mathlib/FieldTheory/Perfect.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/Coalgebra/Hom.lean,Mathlib/Topology/Algebra/Algebra.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean |
18 |
11 |
['eric-wieser', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'plp127'] |
nobody |
11-51588 11 days ago |
11-51638 11 days ago |
16-62611 16 days |
1 |
| 41042 |
Raph-DG author:Raph-DG |
feat(Topology/CategoryTheory): the skyscraper sheaf as a sheaf of modules |
In this PR we define the skyscraper sheaf as a sheaf of modules
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
383/0 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Skyscraper.lean |
2 |
5 |
['Raph-DG', 'attilavjda', 'chrisflav', 'github-actions', 'mathlib-merge-conflicts'] |
joelriou assignee:joelriou |
11-50459 11 days ago |
87-26296 87 days ago |
102-39993 102 days |
0 |
| 42142 |
philipp-svinger author:philipp-svinger |
feat(Analysis/ODE): peano existence theorem, Tonelli approximation 1 |
Add Tonelli approximation method for ODEs.
Implement the structure IsPeano similar to IsPicardLindelof. Construct a sequence of approximations using Tonelli technique.
First step towards Peano existence
Co-authored-by: Florian Grube <fgrube@math.uni-bielefeld.de>
Co-authored-by: Paul Niessner <pniessner@math.uni-bielefeld.de>
Co-authored-by: Julian Rolfes <jrolfes@math.uni-bielefeld.de>
Co-authored-by: Luke Schleef <lschleef@math.uni-bielefeld.de>
Co-authored-by: Philipp Svinger <psvinger@math.uni-bielefeld.de>
---
We want to add the proof of the Peano existence theorem for ODEs, using Tonelli approximations.
This will be a series of PRs working towards this goal. In this first PR, we
implement the structure IsPeano similar to IsPicardLindelof and construct a sequence of approximations using Tonelli technique. See our further PRs for more information, last: #42148
---
The statements, definitions and proofs were written without AI.
AI was used afterwards to help us to adapt our code to the style and naming conventions.
We also used it in the process of writing a documentation.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis
new-contributor
|
207/0 |
Mathlib.lean,Mathlib/Analysis/ODE/Peano.lean |
2 |
24 |
['github-actions', 'mcdoll', 'philipp-svinger', 'sgouezel'] |
urkud assignee:urkud |
11-50458 11 days ago |
44-68893 44 days ago |
101-30028 101 days |
5 |
| 44943 |
JovanGerb author:JovanGerb |
fix(ClickSuggestions): display all `grw` side goals |
This PR fixes the `grw` suggestions in `#click_suggestions` in the case that `grw` creates a side goal, for example when using `grw` inside a multiplication, or inside `|·|` (both of which require positivity). Previously, these side goals were not shown, and only the side goals coming from the lemma were shown.
This doesn't come with a test because the change is just in what's in the widget, which we can't test easily.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-meta |
35/32 |
Mathlib/Tactic/ClickSuggestions/GRewrite.lean,Mathlib/Tactic/ClickSuggestions/TryPremises.lean |
2 |
10 |
['JovanGerb', 'Vierkantor', 'github-actions', 'mathlib-merge-conflicts'] |
kim-em assignee:kim-em |
11-50452 11 days ago |
12-53975 12 days ago |
23-51057 23 days |
0 |
| 45450 |
mcdoll author:mcdoll |
chore(NumberTheory): replace anonymous constructor by .mk in `ArithmeticFunction` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-number-theory
tech debt
|
24/27 |
Mathlib/NumberTheory/ArithmeticFunction/Defs.lean,Mathlib/NumberTheory/ArithmeticFunction/LFunction.lean,Mathlib/NumberTheory/ArithmeticFunction/Misc.lean,Mathlib/NumberTheory/ArithmeticFunction/Moebius.lean,Mathlib/NumberTheory/ArithmeticFunction/VonMangoldt.lean,Mathlib/NumberTheory/ArithmeticFunction/Zeta.lean,Mathlib/NumberTheory/LSeries/Convolution.lean |
7 |
1 |
['github-actions'] |
nobody |
11-50447 11 days ago |
11-50495 11 days ago |
11-50422 11 days |
0 |
| 44470 |
SnirBroshi author:SnirBroshi |
feat(SetTheory/Ordinal/Exponential): `opow_le_of_isSuccLimit` works for `c ≠ 0` |
When `IsSuccLimit b`, `a ^ b ≤ c ↔ ∀ b' < b, a ^ b' ≤ c` holds unless `a = c = 0`.
(otherwise the LHS is true but the RHS is false because `b' = 0` requires `0 ^ 0 ≤ 0`)
We have this lemma for `a ≠ 0`, and this adds it for `c ≠ 0`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-set-theory |
14/0 |
Mathlib/SetTheory/Ordinal/Exponential.lean |
1 |
2 |
['github-actions', 'vihdzp'] |
nobody |
11-49561 11 days ago |
36-18903 36 days ago |
36-27790 36 days |
0 |
| 44443 |
plp127 author:plp127 |
feat(Topology/Algebra/IsUniformGroup): group is left/right uniform group iff it's equal to left/right uniformity |
Prove that for a topological group `G` with a uniform space structure, `G` is a left/right uniform group iff the uniformity is equal to `IsTopologicalGroup.leftUniformSpace G`/`IsTopologicalGroup.rightUniformSpace G`.
Also rename `uniformity_eq_comap_nhds_one'` to `uniformity_eq_comap_nhds_one_right` to match `uniformity_eq_comap_nhds_one_left`.
---
- [x] depends on: #44423
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-topology
t-group-theory
|
61/25 |
Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Topology/Algebra/IsUniformGroup/Basic.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean,Mathlib/Topology/Algebra/Module/Multilinear/Topology.lean,Mathlib/Topology/Algebra/Module/Spaces/UniformConvergenceCLM.lean |
5 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
11-45797 11 days ago |
11-45849 11 days ago |
24-14637 24 days |
1 |
| 45451 |
Parcly-Taxel author:Parcly-Taxel |
chore: remove transparency `set_option`s in `SimpleGraph`, part 1 |
These should be less controversial changes from #45430. |
tech debt
t-combinatorics
|
14/33 |
Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Ends/Defs.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/StronglyRegular.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
8 |
1 |
['github-actions'] |
nobody |
11-42284 11 days ago |
11-42381 11 days ago |
11-44777 11 days |
1 |
| 41466 |
EzequielS2 author:EzequielS2 |
feat(Algebra/Order): stronger sublist product inequality via diff |
## Summary
Add `Sublist.prod_le_prod'_of_mem_diff` and `Sublist.sum_le_sum_of_mem_diff`.
## Test plan
- [x] `lake build` and `lake exe runLinter` on `Mathlib.Algebra.Order.BigOperators.Group.List`
|
t-algebra
new-contributor
label:t-algebra$ |
12/4 |
Mathlib/Algebra/Order/BigOperators/Group/List.lean |
1 |
8 |
['EzequielS2', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen', 'wwylele'] |
nobody |
11-41137 11 days ago |
11-40105 11 days ago |
52-49101 52 days |
0 |
| 41449 |
EzequielS2 author:EzequielS2 |
feat(Topology/ContinuousMap): domMulAct action on C(X, Y) |
## Summary
- Define the action of `Mᵈᵐᵃ` on `C(α, β)` when `M` acts continuously on `α`.
- Add `SMul`, `MulAction`, `SMulCommClass`, and `ContinuousSMul` instances.
- Closes #5379.
## Test plan
- [x] `lake build Mathlib.Topology.ContinuousMap.DomAct`
- [x] `lake exe runLinter Mathlib.Topology.ContinuousMap.DomAct`
|
t-topology
new-contributor
|
105/0 |
Mathlib.lean,Mathlib/Topology/ContinuousMap/DomAct.lean |
2 |
7 |
['EzequielS2', 'github-actions', 'j-loreaux'] |
nobody |
11-38931 11 days ago |
11-39043 11 days ago |
32-69613 32 days |
1 |
| 45454 |
artie2000 author:artie2000 |
feat(Algebra/Group/Submonoid): bot is pointed, top is not |
Unnecessary lemmas split from #36863 using ChatGPT 5.5.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
12/2 |
Mathlib/Algebra/Group/Submonoid/Support.lean |
1 |
1 |
['github-actions'] |
nobody |
11-38446 11 days ago |
11-38498 11 days ago |
11-38425 11 days |
0 |
| 45442 |
plp127 author:plp127 |
feat(Order/ModularLattice): dualize `IsModularLattice` |
Dualize `IsModularLattice.mk` and `IsModularLattice.sup_inf_le_assoc_of_le`, so that `@[to_dual]` can translate them properly.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
8/9 |
Mathlib/Order/ModularLattice.lean |
1 |
1 |
['github-actions', 'vihdzp'] |
nobody |
11-33172 11 days ago |
11-56966 11 days ago |
11-56893 11 days |
0 |
| 45423 |
kebekus author:kebekus |
feat(Analysis/Meromorphic): characterize meromorphic functions vanishing along `codiscreteWithin` |
This PR characterizes the meromorphic functions on `U` whose germ along `Filter.codiscreteWithin U` is zero, and adds a connectedness-free version of `MeromorphicOn.mul_inv_eventuallyEq`. These results are the ingredients needed to show that germs of meromorphic functions along `codiscreteWithin U` form a field when `U` is connected — the zero germ is exactly the class of functions of infinite order, and every other germ is invertible via the pointwise inverse. That construction will follow in a later PR.
This material is used in [Project VD](https://github.com/kebekus/ProjectVD), formalizing Value Distribution Theory for meromorphic functions on the complex plane. Claude Code was used to create this PR.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis
LLM-generated
|
54/10 |
Mathlib/Analysis/Meromorphic/IsolatedZeros.lean,Mathlib/Analysis/Meromorphic/Order.lean |
2 |
1 |
['github-actions'] |
nobody |
11-32357 11 days ago |
11-32357 11 days ago |
11-32284 11 days |
0 |
| 45392 |
vihdzp author:vihdzp |
chore: state Borel isomorphism theorem using `Uncountable` |
We also deprecate the specialization of it to `ℕ → Bool`, after proving the instance that allows to infer the uncountability of this type automatically.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-measure-probability
tech debt
|
53/25 |
Mathlib/Basic/Countable/Defs.lean,Mathlib/LinearAlgebra/Dimension/ErdosKaplansky.lean,Mathlib/MeasureTheory/Constructions/Polish/Basic.lean,Mathlib/MeasureTheory/Constructions/Polish/EmbeddingReal.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Finite.lean |
6 |
1 |
['github-actions'] |
nobody |
11-27385 11 days ago |
11-27434 11 days ago |
11-30551 11 days |
0 |
| 45453 |
Parcly-Taxel author:Parcly-Taxel |
chore: remove transparency `set_option`s in `SimpleGraph`, part 2 |
More fixes from #45430.
* `ConnectedComponent.lift` now has `Reachable` in its hypotheses, which allows removing a `set_option`.
* There was a long-standing typo in the statement of `Walk.ofBoxProdRight_boxProdRight`, which has been corrected. Equational lemmas for `Walk.ofBoxProd{Left,Right}` have been added too.
* The golfed proof of `free_killCopies` was done by GPT-6.1 Sol, then hand-optimised. |
tech debt
t-combinatorics
LLM-generated
|
52/67 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Ends/Defs.lean,Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Prod.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
6 |
1 |
['github-actions'] |
nobody |
11-22149 11 days ago |
11-22251 11 days ago |
11-38646 11 days |
1 |
| 44363 |
Parcly-Taxel author:Parcly-Taxel |
chore: remove `set_option` in `Order.Nucleus` |
|
tech debt
t-order
|
7/15 |
Mathlib/Order/Nucleus.lean |
1 |
13 |
['Parcly-Taxel', 'github-actions', 'grunweg', 'mathlib-merge-conflicts', 'mathlib-splicebot'] |
nobody |
11-14501 11 days ago |
12-14309 12 days ago |
37-53673 37 days |
0 |
| 43209 |
YaelDillies author:YaelDillies |
feat(Geometry/Convex): `WithTop X` is a convex space if `X` is |
... by setting any convex combination that puts positive weight on `⊤`/`⊥` to `⊤`/`⊥`.
This will be used to talk about convex/concave functions to the extended real numbers.
Generated by Claude Opus, largely rewritten by hand afterwards.
Assisted-by: Claude Opus 5
---
- [x] depends on: #43610
- [x] depends on: #43612
- [x] depends on: #43613
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry
LLM-generated
|
176/1 |
Mathlib.lean,Mathlib/Data/Finsupp/Option.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/Geometry/Convex/ConvexSpace/WithTop.lean |
4 |
37 |
['YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
11-9462 11 days ago |
11-9511 11 days ago |
21-40885 21 days |
0 |
| 44588 |
xroblot author:xroblot |
feat(RingTheory/RootsOfUnity): generalize Ideal.rootsOfUnityMapQuot to commutative rings |
The morphism from the roots of unity of order `n` to the units of a quotient ring is currently stated for the ring of integers of a number field, although nothing about it needs more than a commutative ring. It is moved to a new file and stated in that generality.
It is injective as soon as `n` does not lie in the ideal, for any domain.
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude.
|
t-ring-theory |
146/61 |
Mathlib.lean,Mathlib/NumberTheory/NumberField/Ideal/Basic.lean,Mathlib/RingTheory/RootsOfUnity/Quotient.lean |
3 |
1 |
['github-actions'] |
nobody |
11-7101 11 days ago |
11-7101 11 days ago |
11-7543 11 days |
0 |
| 37579 |
IvanRenison author:IvanRenison |
feat(Combinatorics/SimpleGraph/Girth): add lemmas about the length of a walk being equal to the girth |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #37561
- [x] depends on: #37577
- [x] depends on: #37574
- [x] depends on: #37562
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
30/0 |
Mathlib/Combinatorics/SimpleGraph/Girth.lean |
1 |
19 |
['IvanRenison', 'SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
11-1617 11 days ago |
11-1672 11 days ago |
45-16284 45 days |
0 |
| 45465 |
xroblot author:xroblot |
feat(FieldTheory/Finite): sum of the powers of the elements of a finite field |
For `i ≠ 0`, the sum of `x ^ i` over all the elements `x` of a finite field with `q` elements is `-1` if `q - 1` divides `i`, and `0` otherwise. As a special case, the sum of all the elements of a finite field is `1` if it has two elements and `0` otherwise.
The PR also adds, for a finite group with zero, the identification of a product (or a sum) over the nonzero elements with a product over the units, and fixes the docstring of `sum_pow_units` and the module docstring, which gave the value `q - 1` instead of `-1`.
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude.
|
t-algebra label:t-algebra$ |
38/17 |
Mathlib/Algebra/GroupWithZero/Units/Fintype.lean,Mathlib/FieldTheory/Finite/Basic.lean |
2 |
4 |
['SnirBroshi', 'github-actions', 'xroblot'] |
nobody |
11-873 11 days ago |
11-914 11 days ago |
11-841 11 days |
0 |
| 45154 |
chenson2018 author:chenson2018 |
fix: scope some pointwise `Set` instances |
While working on relation algebras in CSLib, I noticed that a few pointwise data carrying instances on `Set` were not scoped. In particular, this includes `Set.instInvolutiveStar`, `Set.involutiveInv`, `Set.sdiv`, and their `to_additive` equivalents. I have changed these to `instance_reducible` definitions that are scoped instances under `Pointwise`. The names remain the same, and the only other changes are to add `open scoped Pointwise` as required in a few modules.
I originally asked about this at [mathlib4 > unscoped pointwise instances on Set](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/unscoped.20pointwise.20instances.20on.20Set/with/633732819)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
|
53/8 |
Mathlib/Algebra/Group/Pointwise/Set/Basic.lean,Mathlib/Algebra/Group/Pointwise/Set/Scalar.lean,Mathlib/Algebra/Lie/Subalgebra.lean,Mathlib/Algebra/Module/Submodule/Basic.lean,Mathlib/Algebra/Order/Ring/Ordering/Defs.lean,Mathlib/Algebra/Star/Center.lean,Mathlib/Algebra/Star/Conjneg.lean,Mathlib/Algebra/Star/LinearMap.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Algebra/Star/Subalgebra.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/Fuglede.lean,Mathlib/Analysis/Convex/Extreme.lean,Mathlib/Combinatorics/Additive/Dissociation.lean,Mathlib/Combinatorics/SimpleGraph/Cayley.lean,Mathlib/Combinatorics/SimpleGraph/Circulant.lean,Mathlib/FieldTheory/Minpoly/ConjRootClass.lean,Mathlib/GroupTheory/Coxeter/Basic.lean,Mathlib/LinearAlgebra/AffineSpace/AffineMap.lean,Mathlib/LinearAlgebra/Matrix/Cartan/Realisation.lean,Mathlib/LinearAlgebra/RootSystem/WeylGroup.lean,Mathlib/MeasureTheory/Group/Integral.lean,Mathlib/Topology/Algebra/ValuativeRel/Completion.lean |
24 |
2 |
['github-actions', 'mathlib-merge-conflicts', 'thomaskwaring'] |
nobody |
10-83599 10 days ago |
10-83696 10 days ago |
18-36635 18 days |
0 |
| 45221 |
Nicola9Falciola author:Nicola9Falciola |
feat(Algebra/Algebra/Subalgebra/Basic): `Algebra R (p.compatibleMaps p)` and `Module.End.restrictAlgHom` |
---
This PR resolves TODO in `Algebra/Module/Submodule/LinearMap` (line 242).
It adds :
- API lemmas for `compatibleMaps`.
- The `SemiRing` and `Algebra` instances for `q.compatibleMaps.q` and relative API.
- The `AlgHom` version of `LinearMap.restric` and relative API.
- Fixes the docstring of `Submodule.compatibleMaps`, which referred to the wrong variable
names and said "ring" instead of "semiring".
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
53/1 |
Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Module/Submodule/LinearMap.lean |
2 |
13 |
['Nicola9Falciola', 'github-actions', 'mathlib-splicebot', 'ocfnash'] |
ocfnash assignee:ocfnash |
10-75861 10 days ago |
10-75952 10 days ago |
16-75591 16 days |
0 |
| 45455 |
artie2000 author:artie2000 |
feat(Algebra/Ring/Subsemiring): more properties of pointed, spanning subsemiring |
* Pointed subsemiring (ring cone) does not contain $$-1$$
* Spanning subsemiring preserved by map and comap
Unnecessary lemmas split from #36863 using ChatGPT 5.5.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #36863 |
t-algebra label:t-algebra$ |
13/0 |
Mathlib/Algebra/Ring/Subsemiring/Support.lean |
1 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
10-75303 10 days ago |
10-75361 10 days ago |
10-75288 10 days |
0 |
| 45456 |
artie2000 author:artie2000 |
feat(Algebra/Order/Ring): more constructors for ring (pre)orderings |
Unnecessary lemmas split from #36863 using ChatGPT 5.5.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #36863 |
t-algebra label:t-algebra$ |
18/0 |
Mathlib/Algebra/Order/Ring/Ordering/Basic.lean |
1 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
10-75251 10 days ago |
10-75306 10 days ago |
10-75233 10 days |
0 |
| 42923 |
plp127 author:plp127 |
feat(FieldTheory/KummerExtension): criterion for `X ^ n - C a` to be irreducible for even `n` |
Prove the criterion for `X ^ n - C a` to be irreducible when `n` is not necessarily odd. This resolves a TODO.
---
- [x] depends on: #42344
- [x] depends on: #42886
- [x] depends on: #45461
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-ring-theory
label:t-algebra$ |
169/22 |
Mathlib/FieldTheory/KummerExtension.lean,Mathlib/FieldTheory/KummerPolynomial.lean |
2 |
9 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'plp127', 'tb65536', 'vihdzp'] |
nobody |
10-72226 10 days ago |
10-72291 10 days ago |
36-75786 36 days |
0 |
| 45227 |
artie2000 author:artie2000 |
chore(Algebra/Group/Subgroup): deprecate HasMemOrNegMem |
All usages of this class have been removed in favour of the definition `AddSubmonoid.IsSpanning`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #36863
- [x] depends on: #37298 |
t-algebra
increases-technical-debt
label:t-algebra$ |
10/6 |
Mathlib/Algebra/Group/Subgroup/Defs.lean |
1 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
10-69041 10 days ago |
10-69096 10 days ago |
10-69023 10 days |
0 |
| 45412 |
JadAbouHawili author:JadAbouHawili |
doc(Order/RelIso): fix docstrings in RelEmbedding and RelIso |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
4/3 |
Mathlib/Order/RelIso/Basic.lean |
1 |
5 |
['chenson2018', 'github-actions', 'themathqueen'] |
nobody |
10-68026 10 days ago |
10-68086 10 days ago |
11-85883 11 days |
0 |
| 45479 |
Jun2M author:Jun2M |
feat(Logic/Function): factor functions along surjections |
Define `Function.Surjective.factor`. If `g.FactorsThrough f`, this gives the unique function `d` satisfying `d ∘ f = g`.
Adapted from the [Matroid repository](https://github.com/apnelson1/Matroid).
Codex was used for review.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
|
94/0 |
Mathlib/Data/Set/Image.lean,Mathlib/Logic/Function/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
10-62539 10 days ago |
10-62620 10 days ago |
10-62547 10 days |
0 |
| 45483 |
chenle02 author:chenle02 |
feat(MeasureTheory/Function/ConvergenceInDistribution): the Billingsley approximation theorem |
## Statement
`tendstoInDistribution_of_approx` (Billingsley, *Convergence of Probability Measures*, 2nd ed.,
Theorem 3.2). Let `E` be a separable pseudometric space with its Borel σ-algebra, `l` a countably
generated filter on `ι` and `l'` a nontrivial filter on `κ`. Let `U i, X k i : Ω i → E` (on the
probability spaces `(Ω i, μ i)`), `Y k : Ωκ k → E` (on `(Ωκ k, ν k)`) and `Z : Ω' → E`. If
* `X k i` converges in distribution to `Y k` along `l`, for each `k`,
* `Y k` converges in distribution to `Z` along `l'`,
* `U i` is a.e.-measurable for each `i`, and
* for every `δ > 0`, `limsup_{i → l} μ i {ω | δ ≤ dist (U i ω) (X k i ω)}` tends to `0` along `l'`,
then `U i` converges in distribution to `Z` along `l`.
```lean
theorem tendstoInDistribution_of_approx {κ : Type*} {Ωκ : κ → Type*}
{mκ : ∀ k, MeasurableSpace (Ωκ k)} {ν : (k : κ) → Measure (Ωκ k)}
[∀ k, IsProbabilityMeasure (ν k)] {l' : Filter κ} [l'.NeBot] [l.IsCountablyGenerated]
{X : κ → (i : ι) → Ω i → E} {Y : (k : κ) → Ωκ k → E} {U : (i : ι) → Ω i → E}
(hX : ∀ k, TendstoInDistribution (X k) l (Y k) μ (ν k))
(hY : TendstoInDistribution Y l' Z ν μ') (hU : ∀ i, AEMeasurable (U i) (μ i))
(h_approx : ∀ δ > 0, Tendsto
(fun k ↦ limsup (fun i ↦ μ i {ω | δ ≤ dist (U i ω) (X k i ω)}) l) l' (𝓝 0)) :
TendstoInDistribution U l Z μ μ'
```
Two auxiliary results are added:
* `tendstoInDistribution_iff_forall_lipschitz_integral_tendsto`: the `TendstoInDistribution`
version of `tendsto_iff_forall_lipschitz_integral_tendsto` (bounded Lipschitz test functions),
analogous to the existing `tendstoInDistribution_iff_forall_integral_rclike_tendsto`.
* `abs_integral_sub_integral_le_of_lipschitzWith`: for `F` `L`-Lipschitz with oscillation at most
`M`, `|∫ F ∘ A ∂μ - ∫ F ∘ B ∂μ| ≤ L * δ + M * μ.real {δ ≤ dist A B}` (`δ ≥ 0`). This estimate
was previously inlined in the proof of `tendstoInDistribution_of_tendstoInMeasure_sub`; that
proof now calls the lemma (about 45 lines removed there), with no change to its statement.
## Proof idea
Test against a bounded `L`-Lipschitz `F` (oscillation `≤ M`). For any `k`, `δ`,
`|E F(U i) - E F(Z)| ≤ L δ + M P(δ ≤ dist (U i) (X k i)) + |E F(X k i) - E F(Y k)| + |E F(Y k) - E F(Z)|`.
Given `η > 0`, choose `δ` with `L δ < η/4`, then (using `l'.NeBot`) a single `k` for which the
last term is `< η/4` and `limsup_i P(δ ≤ dist (U i) (X k i)) < ε` with `M ε ≤ η/4`; for this `k`,
eventually in `i` the probability is `< ε` and the third term is `< η/4`.
## Relation to existing results
* Slutsky-type lemma `tendstoInDistribution_of_tendstoInMeasure_sub` is the special case
`X k = X`, `Y k = Z` (one prelimit space). The new theorem is more general in three ways: the
prelimit spaces `Ω i` may depend on `i` (matching the definition of `TendstoInDistribution`), the
approximating limits `Y k` live on their own spaces `Ωκ k`, and `E` only needs to be a separable
pseudometric space rather than a seminormed group. The statement and proof of the Slutsky lemma
are left as they are apart from extracting the comparison estimate; if reviewers prefer, it
could instead be derived from the new theorem (with `κ = Unit`, `l' = ⊤`).
* #37279 (multivariate CLT) also edits this file: it adds `:= by fun_prop` to
`forall_aemeasurable`, switches the `tendsto` field to `Measure.toProbabilityMeasure`, adds
`TendstoInDistribution.const_const`, removes some `set_option`s and adapts the proofs of
`congr`, `continuous_comp` and `tendstoInDistribution_of_ae_tendsto`. It contains nothing like the
approximation theorem. Its hunks are all above `TendstoInMeasure.tendstoInDistribution`, while
this PR inserts below it and edits the body of `tendstoInDistribution_of_tendstoInMeasure_sub`.
`git apply --check` of the #37279 hunks for this file on top of this branch succeeds (offset
only). The new proofs reach the `ProbabilityMeasure` coercion only through `simpa` and the
existing `tendstoInDistribution_iff_forall_integral_rclike_tendsto`, so they should not depend
on the representation that #37279 changes; this has not been compiled against #37279.
## Reference
P. Billingsley, *Convergence of Probability Measures*, 2nd ed., Wiley, 1999, Theorem 3.2.
AI tools (Claude and Codex) were used to port and adapt this proof to Mathlib; the author reviewed it.
|
t-measure-probability
new-contributor
LLM-generated
|
152/49 |
Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean |
1 |
4 |
['github-actions', 'lua-vr'] |
nobody |
10-56500 10 days ago |
10-59740 10 days ago |
10-59667 10 days |
0 |
| 45482 |
chenle02 author:chenle02 |
feat(Analysis/Distribution/SchwartzSpace): the Schwartz space on a finite-dimensional space is separable |
## What is proved
In `Mathlib/Analysis/Distribution/SchwartzSpace/Separable.lean`:
```lean
instance SchwartzMap.instSecondCountableTopology
{E F : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E] [NormedAddCommGroup F]
[NormedSpace ℝ F] [FiniteDimensional ℝ E] [SecondCountableTopology F] :
SecondCountableTopology 𝓢(E, F)
```
so `SeparableSpace 𝓢(E, F)` is found by instance search, for example for
`𝓢(EuclideanSpace ℝ (Fin d), ℂ)`, and in particular for `𝓢(ℝ, ℝ)`.
There are two supporting instances, both stated in general form:
```lean
-- Mathlib/Topology/Compactification/OnePoint/Basic.lean
instance OnePoint.instSecondCountableTopology [WeaklyLocallyCompactSpace X] [R1Space X]
[SecondCountableTopology X] : SecondCountableTopology (OnePoint X)
-- Mathlib/Analysis/Distribution/SchwartzSpace/Separable.lean
instance ContinuousMultilinearMap.instSecondCountableTopologyFin [FiniteDimensional 𝕜 E]
[SecondCountableTopology F] (n : ℕ) : SecondCountableTopology (E [×n]→L[𝕜] F)
```
## Proof idea
* For `f : 𝓢(E, F)`, the function `x ↦ ‖x‖ ^ k • iteratedFDeriv ℝ n f x` tends to `0` along
`cocompact E`, because it is bounded by `‖x‖⁻¹ * seminorm (k + 1) n f`. It therefore extends
by `0` to a continuous function on `OnePoint E`, and the sup norm of that extension is exactly
`SchwartzMap.seminorm ℝ k n f`.
* The resulting map `𝓢(E, F) →L[ℝ] Π (k, n), C(OnePoint E, E [×n]→L[ℝ] F)` is inducing,
because each Schwartz seminorm is the norm of one coordinate.
* Its target is second countable. `OnePoint E` is compact and second countable (new instance),
`E [×n]→L[ℝ] F` is second countable (new instance, proved by induction via currying from the
existing `E →L[𝕜] F` instance), and `ContinuousMap.instSecondCountableTopology` gives the rest.
## History of this PR
The first version of this PR proved only the case `E = ℝ`, by bounding each Schwartz seminorm
by the `L¹` norm of a derivative (`norm_le_integral_norm_deriv`, `derivCLM_pow_apply`). The
general argument above covers `E = ℝ`, so that `L¹` proof and its two auxiliary lemmas have
been removed. The file now depends only on `SchwartzSpace.Basic`, not on `SchwartzSpace.Deriv`
and the integration library.
## Follow-ups
* `ContinuousMultilinearMap.instSecondCountableTopologyFin` could be moved next to the
`E →L[𝕜] F` instance in `Mathlib/Analysis/Normed/Module/FiniteDimension.lean`, possibly in a
more general form (a `Fintype` index with finite-dimensional factors). It sits in this file for
now so that the PR does not trigger a rebuild of most of the analysis library.
* Consequences that need separability, for example for tempered distributions.
AI tools (Claude and Codex) were used to port and adapt this proof to Mathlib; the author reviewed it.
|
t-analysis
new-contributor
LLM-generated
|
177/0 |
Mathlib.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Separable.lean,Mathlib/Topology/Compactification/OnePoint/Basic.lean |
3 |
3 |
['github-actions', 'lua-vr'] |
nobody |
10-56406 10 days ago |
10-61978 10 days ago |
10-62636 10 days |
0 |
| 44355 |
artie2000 author:artie2000 |
chore(Order): move Order/CompleteLattice/SetLike.lean to more descriptive location |
Order/CompleteLattice/SetLike.lean -> Order/CompleteSublattice/SetLike.lean
Order/CompleteSublattice.lean -> Order/CompleteSublattice/Basic.lean
This clears the file location for the material in #44253
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
file-removed
t-order
|
5/5 |
Mathlib.lean,Mathlib/Order/CompleteSublattice/Basic.lean,Mathlib/Order/CompleteSublattice/SetLike.lean,Mathlib/RingTheory/SimpleModule/Isotypic.lean,Mathlib/SetTheory/Descriptive/Tree.lean |
5 |
5 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
10-51555 10 days ago |
10-51609 10 days ago |
37-61315 37 days |
1 |
| 44906 |
yudukikun5120 author:yudukikun5120 |
feat(Archive): formalize negation in vector logic |
This adds a formalization of negation in Mizraji's two-valued vector logic to `Archive/VectorLogic.lean`, using mathlib's matrix and real-number APIs.
For two orthonormal real vectors `s` and `n` in an arbitrary finite-dimensional coordinate space, define `N = nsᵀ + snᵀ` and the logical identity `I₂ = ssᵀ + nnᵀ`. Prove that negation exchanges the truth vectors, exchanges the coefficients of their linear combinations, and satisfies `N * N = I₂`. Double negation fixes every linear combination of the truth vectors. The formalization also shows that negation annihilates vectors orthogonal to both, so it does not assert that `N²` is the ambient identity in higher dimension.
The definitions follow Eduardo Mizraji's *Vector logics: The matrix-vector representation of logical calculus* (1992), as reproduced in §4.2, equations (15)–(16), of his 2016 paper: https://doi.org/10.1387/theoria.13959.
---
This is a draft for feedback on whether this paper-specific formalization is suitable for `Archive`; its placement has not been agreed with maintainers.
Validation on macOS arm64 with Lean 4.35.0:
- `lake build Archive.VectorLogic`
- `lake exe lint-style Archive.VectorLogic`
- `lake exe mk_all --lib Archive --check`
- Separate local checks with a three-dimensional truth pair, including a counterexample to the ambient identity assertion.
AI disclosure: OpenAI Codex generated the implementation, proofs, and this PR description, and ran the local validation. The changes are marked as LLM-generated. This description does not claim completion of independent human review.
|
LLM-generated
new-contributor
t-data
|
102/0 |
Archive.lean,Archive/VectorLogic.lean |
2 |
3 |
['github-actions', 'yudukikun5120'] |
nobody |
10-50919 10 days ago |
25-308 25 days ago |
25-235 25 days |
0 |
| 39067 |
mbkybky author:mbkybky |
feat(Algebra/Module): define modules admitting finite free resolutions |
We say that an `R`-module `M` has a finite free resolution if there exists an exact sequence `0 ⟶ Eₙ ⟶ ⋯ ⟶ E₀ ⟶ M ⟶ 0` such that `Eᵢ` are finite free `R`-modules.
- [x] depends on: #41880
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
171/0 |
Mathlib.lean,Mathlib/Algebra/Module/FiniteFreeResolution/Basic.lean |
2 |
4 |
['github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
mariainesdff assignee:mariainesdff |
10-50460 10 days ago |
35-79020 35 days ago |
88-30787 88 days |
2 |
| 41540 |
plp127 author:plp127 |
chore: rename arguments of `Nat.strong_induction_on` |
Name the motive `motive` and name the minor premises according to the case. Also rename for `Fin.strong_induction_on`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
37/39 |
Mathlib/Algebra/Lie/LieTheorem.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Analytic/Uniqueness.lean,Mathlib/Combinatorics/Enumerative/Bell.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Computability/Language.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fintype/Basic.lean,Mathlib/Data/Fintype/Card.lean,Mathlib/Data/Nat/Choose/Central.lean,Mathlib/Data/Nat/Digits/Lemmas.lean,Mathlib/Data/Nat/Nth.lean,Mathlib/FieldTheory/Separable.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Defs.lean,Mathlib/NumberTheory/Bernoulli.lean,Mathlib/NumberTheory/BernoulliPolynomials.lean,Mathlib/NumberTheory/ModularForms/LevelOne/DimensionFormula.lean,Mathlib/Order/Fin/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/Nilpotent.lean,Mathlib/RingTheory/LittleWedderburn.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Basic.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Eval.lean,Mathlib/RingTheory/Polynomial/Nilpotent.lean,Mathlib/RingTheory/WittVector/Frobenius.lean,Mathlib/SetTheory/Cardinal/NatCard.lean |
29 |
5 |
['github-actions', 'mathlib-merge-conflicts'] |
TwoFX assignee:TwoFX |
10-50459 10 days ago |
12-40578 12 days ago |
89-16871 89 days |
0 |
| 44586 |
dagurtomas author:dagurtomas |
feat(CategoryTheory/Limits): countable limits from finite and sequential limits |
Show that countable cofiltered limits can be computed as sequential limits, and that finite limits plus sequential limits give all countable limits; prove the dual colimit statements. Construct countable directed presentations using Deligne's finite diagrams, and name the general dual result `IsCofiltered.exists_codirected`. The countable presentations and limit constructions live in separate files. This supersedes #44534 and resolves the entire countable-limit `proof_wanted` series, correcting the last statement's sequential-colimit hypothesis.
|
LLM-generated
t-category-theory
file-removed
|
214/67 |
Mathlib.lean,Mathlib/CategoryTheory/Countable.lean,Mathlib/CategoryTheory/Filtered/Basic.lean,Mathlib/CategoryTheory/Filtered/Countable.lean,Mathlib/CategoryTheory/Limits/Constructions/Countable.lean,Mathlib/CategoryTheory/Limits/Shapes/Countable.lean,Mathlib/CategoryTheory/MorphismProperty/Basic.lean,Mathlib/CategoryTheory/Presentable/Directed.lean,Wanted.lean,Wanted/CategoryTheory/Limits/Shapes/Countable.lean |
10 |
2 |
['dagurtomas', 'github-actions'] |
joelriou assignee:joelriou |
10-50456 10 days ago |
33-4010 33 days ago |
33-3937 33 days |
0 |
| 44462 |
wwylele author:wwylele |
feat(Geometry/Euclidean): the corner simplex |
This is working towards #44252 to connect `Simplex.volume` and `Orientation.volumeForm` for arbitrary simplex. The idea is that for the model simplex, namely `cornerSimplex` spanned by the standard Euclidean space basis, it is easy to calculate both `Simplex.volume` and `Orientation.volumeForm`. Then they can be transferred to arbitrary simplex by a affine map. This PR introduces every thing about the corner simplex before the part that touches `Affine.Simplex.volume`.
---
This is similar to the object in #40479, but I dislike the name there, and that PR has gone stale due to its deprecated dependencies. I also intentionally made this less general (instead of the corner simplex from any orthonormal basis, this one is only defined in `EuclideanSpace`). This makes the formulation of "a face of `cornerSimplex` is another `cornerSimplex`" more straightforward, as it simply corresponds to the index change in `EuclideanSpace`
That being sad, I am open to major changes such as
- If it is desired to generalize corner simplex to any orthonormal basis in any inner product space, I can certainly do that. (Alternatively, we can review #40479 and get it over the line)
- If there is a more elegant way to prove the main theorem in #44252 without corner simplex, I can also do that.
- Naming
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [ ] depends on: #44340
- [ ] depends on: #44463 |
t-euclidean-geometry |
139/0 |
Mathlib.lean,Mathlib/Geometry/Euclidean/CornerSimplex.lean |
2 |
7 |
['copilot-pull-request-reviewer', 'github-actions', 'mathlib-dependent-issues', 'wwylele'] |
nobody |
10-49561 10 days ago |
31-81258 31 days ago |
32-46001 32 days |
1 |
| 45470 |
benpigchu author:benpigchu |
feat(Data): theorem about `List.splitBy` of `List.append` when `getLast` of the first list and `head` of the second list are related |
This PR add a theorem describing the behaviour of `List.splitBy` of `List.append` when the `ha` assumption in `List.splitBy_append` does not hold.
---
This theorem came from https://github.com/dwrensha/compfiles/blob/1745e6ced3e671bd74417548494b034eb2c87da8/Compfiles/Imo2022P1.lean#L148
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-data
new-contributor
|
59/0 |
Mathlib/Data/List/SplitBy.lean |
1 |
2 |
['github-actions'] |
nobody |
10-43292 10 days ago |
10-83944 10 days ago |
10-83871 10 days |
0 |
| 44939 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add Schur's lemma for central elements |
We add a bridge lemma saying that central elements act as scalars on simple modules. |
t-algebra label:t-algebra$ |
7/0 |
Mathlib/RepresentationTheory/AlgebraRepresentation/Basic.lean |
1 |
12 |
['JX-Mo', 'alreadydone', 'github-actions', 'themathqueen'] |
nobody |
10-39510 10 days ago |
10-39568 10 days ago |
23-60839 23 days |
1 |
| 45497 |
chenle02 author:chenle02 |
feat(MeasureTheory): tightness in separable Hilbert spaces |
This PR adds a tightness criterion for measures on a Hilbert space, stated with a Hilbert basis. It also adds the "tight + unique cluster point ⇒ convergence" step that usually follows Prokhorov's theorem.
**(A) Tightness in a Hilbert space.** New file `Mathlib/MeasureTheory/Measure/TightHilbert.lean`. Here `b : HilbertBasis ι ℝ E` and `S : Set (Measure E)`.
* `HilbertBasis.isCompact_closedBall_inter_iInter`: if `ε m → 0`, then
`closedBall 0 r ∩ ⋂ m, {x | ‖x - ∑ i ∈ s m, ⟪b i, x⟫ • b i‖ ≤ ε m}` is compact.
* `HilbertBasis.isTightMeasureSet_of_tendsto_measure`: `S` is tight if both of these hold:
- the norms are bounded in probability uniformly over `S`:
`Tendsto (fun r ↦ ⨆ μ ∈ S, μ {x | r < ‖x‖}) atTop (𝓝 0)`;
- for every `ε > 0`,
`Tendsto (fun s : Finset ι ↦ ⨆ μ ∈ S, μ {x | ε < ‖x - ∑ i ∈ s, ⟪b i, x⟫ • b i‖}) atTop (𝓝 0)`.
This needs no measurability assumption.
* `HilbertBasis.isTightMeasureSet_of_lintegral`: the second-moment version. It assumes
`⨆ μ ∈ S, ∫⁻ x, ‖x‖ₑ ^ 2 ∂μ ≠ ∞` and that the tails `⨆ μ ∈ S, ∫⁻ x, ‖x - ∑ i ∈ s, ⟪b i, x⟫ • b i‖ₑ ^ 2 ∂μ` tend to `0`.
* `HilbertBasis.isTightMeasureSet_of_lintegral_inner_sq_le`: for `[Countable ι]`, assume `∫⁻ x, ‖⟪b i, x⟫‖ₑ ^ 2 ∂μ ≤ c i` for all `μ ∈ S` and all `i`, with `∑' i, c i ≠ ∞`. Then `S` is tight.
* Supporting lemmas:
- `HilbertBasis.hasSum_inner_sq` (Parseval);
- `HilbertBasis.hasSum_indicator_inner_sq` and `HilbertBasis.tsum_indicator_enorm_inner_sq` (the tail outside `s` is `‖x - ∑ i ∈ s, ⟪b i, x⟫ • b i‖ ^ 2`);
- `HilbertBasis.completeSpace`;
- `HilbertBasis.countable` and `Orthonormal.countable` (in a separable space).
**(B) Tight + unique cluster point ⇒ convergence.**
* In `Prokhorov.lean`, for `E` T2 with its Borel σ-algebra:
- `ProbabilityMeasure.tendsto_of_isTightMeasureSet_of_forall_mapClusterPt`: if `{μ i | i}` is tight and every cluster point of `μ` along `l` equals `ν`, then `Tendsto μ l (𝓝 ν)`;
- `ProbabilityMeasure.exists_tendsto_of_isTightMeasureSet`: if `l` is `NeBot`, the family is tight and any two cluster points are equal, then the family converges.
* In `LevyConvergence.lean`:
- `TendstoInDistribution.of_isTightMeasureSet_of_forall_mapClusterPt`;
- `ProbabilityMeasure.tendsto_of_isTightMeasureSet_of_tendsto_charFunDual` (separable Banach space): a tight family whose `charFunDual` converge pointwise to that of `ν₀` converges to `ν₀`. This is the infinite-dimensional form of Lévy's theorem, where tightness has to be assumed;
- `ProbabilityMeasure.tendsto_of_isTightMeasureSet_of_tendsto_charFun` (complete separable inner product space; the same statement with `charFun`);
- `TendstoInDistribution.of_isTightMeasureSet_of_tendsto_charFunDual`.
**Proof idea.**
* (A): Fix `ε`.
- Pick `r` with `μ {r < ‖x‖} ≤ ε / 2` for all `μ ∈ S`.
- For each `m`, pick `s m` with `μ {1/(m+1) < dist(x, span (b '' s m))} ≤ δ m`, where `∑ δ m < ε / 2`.
- The resulting set `K` is closed. It is totally bounded: its points are within `δ / 2` of a bounded subset of a finite-dimensional subspace. Since `E` is complete, `K` is compact, and the union bound gives `μ Kᶜ ≤ ε`.
- The moment versions follow by Markov's inequality, Parseval and `lintegral_tsum`.
* (B): By Prokhorov (`isCompact_closure_of_isTightMeasureSet`), the closure of the family is compact. `IsCompact.tendsto_nhds_of_unique_mapClusterPt` then gives convergence. For the characteristic-functional corollaries, a cluster point has the limiting `charFunDual`, because `P ↦ ∫ probCharDual L ∂P` is continuous. `Measure.ext_of_charFunDual` then identifies the cluster point.
**Relation to existing Mathlib and open PRs.**
* `TightNormed.lean` treats proper and finite-dimensional spaces: tightness from norms, or from inner products against an orthonormal basis. In infinite dimensions closed balls are not compact, so those criteria do not apply; (A) is the infinite-dimensional analogue. I put it in a new file to keep `TightNormed.lean` (and its importers) free of the `l2Space` import.
* `ProbabilityMeasure.tendsto_of_tight_of_separatesPoints` (`LevyConvergence.lean`) is close to (B) but uses a separating subalgebra and a Polish space. (B) is the purely topological step: it needs only T2 and a Borel σ-algebra, works along any filter, and takes the cluster-point identification as a hypothesis.
* #45375 (refactor of the proof of Prokhorov's theorem) only changes the interior of `Prokhorov.lean`, up to the end of the `Forward` section. It contains neither (A) nor (B). The new lemmas here are appended after the `Backward` section, plus one docstring bullet. `git merge-tree` against the PR head reports a clean merge.
* #37279 (multivariate CLT) changes `TendstoInDistribution` to use `Measure.toProbabilityMeasure` and edits one line of `LevyConvergence.lean`. It contains neither (A) nor (B). The additions here are at the end of `LevyConvergence.lean` and already state the cluster-point hypothesis with `toProbabilityMeasure`; `git merge-tree` reports a clean merge.
* A search of open PRs found nothing else with a Hilbert-space tightness criterion or a "tight + unique cluster point" lemma.
**References.**
* Yu. V. Prokhorov, *Convergence of random processes and limit theorems in probability theory*, Theory Probab. Appl. 1 (1956).
* K. R. Parthasarathy, *Probability measures on metric spaces*, Academic Press (1967), Chapter VI (Probability measures in a Hilbert space).
* V. I. Bogachev, *Measure theory, Vol. II*, Springer (2007): Definition 8.6.1 (uniform tightness, p. 202); Theorem 8.6.2 (Prokhorov's theorem, p. 202); Example 8.6.5(i) (tightness from a uniform moment bound, p. 205); Theorem 8.6.7 (a uniformly bounded, uniformly tight family has compact closure in the weak topology, p. 206). This is the `[bogachev2007]` key cited in `TightHilbert.lean`.
AI tools (Claude and Codex) were used to port and adapt this proof to Mathlib; the author reviewed it.
|
t-measure-probability
new-contributor
LLM-generated
|
375/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/LevyConvergence.lean,Mathlib/MeasureTheory/Measure/Prokhorov.lean,Mathlib/MeasureTheory/Measure/TightHilbert.lean |
4 |
2 |
['github-actions'] |
nobody |
10-8649 10 days ago |
10-56110 10 days ago |
10-56037 10 days |
0 |
| 45494 |
chenle02 author:chenle02 |
feat(MeasureTheory): the cylinder σ-algebra on the weak dual |
This PR adds `Mathlib/MeasureTheory/Constructions/WeakDual.lean`, which defines the cylinder σ-algebra on `WeakDual 𝕜 E` (the σ-algebra generated by the evaluations `T ↦ T x`) and proves that a finite measure for it is determined by its finite-dimensional marginals.
## Statements
The setting is the general one of `WeakDual`: `𝕜` a commutative topological semiring with `[MeasurableSpace 𝕜]`, and `E` a topological `𝕜`-module.
* `WeakDual.cylinderMeasurableSpace 𝕜 E : MeasurableSpace (WeakDual 𝕜 E)`, defined as `MeasurableSpace.comap (fun T x ↦ T x) MeasurableSpace.pi`. This mirrors the definition of the weak-* topology as an induced topology.
* `cylinderMeasurableSpace_eq_iSup`: it equals `⨆ x, MeasurableSpace.comap (fun T ↦ T x) ‹_›`.
* `measurable_cylinder_iff`: a map `f : α → WeakDual 𝕜 E` is measurable iff `fun a ↦ f a x` is measurable for every `x`. Also `measurable_eval_cylinder` and `measurable_coeFn_cylinder`.
* `cylinderMeasurableSpace_le_borel` (needs `[BorelSpace 𝕜]`): it is contained in `borel (WeakDual 𝕜 E)`. `cylinderMeasurableSpace_le` gives the same for any `OpensMeasurableSpace` structure.
* `ext_of_forall_finset_map_eq`: two measures `μ ν`, with `μ` finite, are equal if `μ.map (fun T (x : I) ↦ T x) = ν.map (fun T (x : I) ↦ T x)` for every `I : Finset E`.
* `map_eq_iff_forall_finset_map_eq`: two a.e.-measurable random elements `X : Ω → WeakDual 𝕜 E` and `Y : Ω' → WeakDual 𝕜 E` (under a finite `P` and `P'`) have the same law iff they have the same finite-dimensional laws. This is the analogue of `ProbabilityTheory.map_eq_iff_forall_finset_map_restrict_eq` for processes.
* `cylinderMeasurableSpace_eq_comap_of_denseRange` (needs `[FrechetUrysohnSpace E] [PseudoMetrizableSpace 𝕜] [BorelSpace 𝕜]`): for any `d : ι → E` with `DenseRange d`, the σ-algebra is `comap (fun T i ↦ T (d i)) pi`.
* `ext_of_forall_finset_map_eq_of_denseRange`: under the same hypotheses, it is enough to compare finite-dimensional marginals along `d`.
* `countablyGenerated_cylinderMeasurableSpace`: if in addition `E` is separable and `𝕜` is countably generated, then the cylinder σ-algebra is countably generated.
## Design: a `def`, not an instance
The measurable structure of a topological type in Mathlib is normally its Borel σ-algebra, and lemmas such as `Continuous.measurable` rely on `OpensMeasurableSpace`. On `WeakDual 𝕜 E` the cylinder σ-algebra is contained in the Borel σ-algebra, but the two are different in general. Equality needs extra hypotheses, for instance E separable Fréchet/nuclear, and that is not proved here. A global instance would therefore close off the Borel choice for every user of `WeakDual`. So the σ-algebra is a `def` marked `@[instance_reducible]`, in the same way as `borel` and `cylinderEvents`, and users enable it with `attribute [local instance] WeakDual.cylinderMeasurableSpace`.
This adds no global instance and creates no diamond. `WeakDual` is a non-reducible `def`, so the norm-Borel instance `ContinuousLinearMap.instMeasurableSpace` on `E →L[𝕜] F` (for normed `E`) does not apply to it. I checked that `MeasurableSpace (WeakDual ℝ ℝ)` still fails to synthesize after importing that file. A downstream project that wants an instance can set `instance : MeasurableSpace (WeakDual 𝕜 E) := WeakDual.cylinderMeasurableSpace 𝕜 E` on its own type synonym. Projects that do this all get the same σ-algebra.
## Proof idea
The coercion `F : T ↦ (x ↦ T x)` generates the σ-algebra by definition. Hence `μ.map F` and `ν.map F` are both projective limits of the same family of finite-dimensional laws, and `IsProjectiveLimit.unique` makes them equal. Every measurable set has the form `F ⁻¹' t`, so `μ = ν` follows. For the dense-range version, `T x` is the limit of `T (d (j n))` along a sequence (Fréchet–Urysohn, and each `T` is continuous), so `measurable_of_tendsto_metrizable` shows that the evaluations along `d` already generate the σ-algebra.
## Prior art
* Two projects outside Mathlib already define this σ-algebra, each as a global instance:
* mrdouglasny/gaussian-field defines `instMeasurableSpaceConfiguration` on `Configuration E := WeakDual ℝ E` as `comap (fun ω f ↦ ω f) pi`. It proves `configuration_measurable_of_eval_measurable` and, for Gaussian measures, `pushforward_eq_of_eval_eq`.
* mrdouglasny/bochner (`Minlos/NuclearSpace.lean`) defines an instance on `WeakDual ℝ E` as `⨆ f, (borel ℝ).comap (· f)`.
These two definitions are not defeq, so importing both projects fails to synthesize instances; gaussian-field's notes record this. A shared definition in Mathlib avoids that diamond. No code was taken from either project.
* Mathlib has `cylinderEvents` and `measurableCylinders` on product types, and `ProbabilityTheory.map_eq_iff_forall_finset_map_restrict_eq` for processes. Neither covers `WeakDual`, and Mathlib has no `MeasurableSpace` on `WeakDual`, `WeakBilin` or `WeakSpace`.
* Open PRs: a search for WeakDual measurable, cylinder, Minlos, nuclear, "random distribution" and "measure on dual" found no overlapping PR. #42278 (nuclear spaces) touches no measurable structure on duals, but it would be a natural input to a later Minlos theorem. #44909 (Kolmogorov extension) covers existence on product spaces, so it complements the uniqueness result here.
* Zulip could only be searched through the public web archive, which showed no prior thread.
## Follow-ups
* The Bochner–Minlos theorem on duals of nuclear spaces, stated for this σ-algebra.
* Borel = cylinder on `WeakDual 𝕜 E` under suitable separability hypotheses (e.g. separable Fréchet `E`). This would allow a `BorelSpace` statement for the cylinder σ-algebra.
* Tempered distributions: once the `SeparableSpace 𝓢(ℝ, ℝ)` instance (#45482) lands, `countablyGenerated_cylinderMeasurableSpace` and `ext_of_forall_finset_map_eq_of_denseRange` apply directly to `WeakDual ℝ 𝓢(ℝ, ℝ)`. `SchwartzMap` is already first-countable on master.
AI tools (Claude and Codex) were used to port and adapt this proof to Mathlib; the author reviewed it.
|
t-measure-probability
new-contributor
LLM-generated
|
245/0 |
Mathlib.lean,Mathlib/MeasureTheory/Constructions/WeakDual.lean |
2 |
2 |
['github-actions'] |
nobody |
10-8628 10 days ago |
10-58082 10 days ago |
10-58009 10 days |
0 |
| 45487 |
chenle02 author:chenle02 |
feat(Probability/Distributions/Poisson): higher moments of the Poisson distribution |
This PR adds a new file `Mathlib/Probability/Distributions/Poisson/Moments.lean` with the
moments of the Poisson distribution `poissonMeasure r`, `r : ℝ≥0`.
Main statements (namespace `ProbabilityTheory`):
* `hasSum_mul_descFactorial_poissonMeasure` and `integral_descFactorial_poissonMeasure`:
the factorial moments, `∫ n, (n.descFactorial k : ℝ) ∂Po(r) = r ^ k`.
* `integrable_exp_mul_map_cast_poissonMeasure`, `integrableExpSet_id_map_cast_poissonMeasure`:
`x ↦ exp (t * x)` is integrable for every `t`, so `integrableExpSet id Po(ℝ, r) = univ`.
* `memLp_id_map_cast_poissonMeasure (p : ℝ≥0) : MemLp id p Po(ℝ, r)` and
`integrable_pow_map_cast_poissonMeasure : Integrable (fun x ↦ x ^ k) Po(ℝ, r)`.
* `hasSum_mul_pow_poissonMeasure` and `integral_pow_map_cast_poissonMeasure`: the raw moments are
the Touchard polynomials, `∫ x, x ^ k ∂Po(ℝ, r) = ∑ j ∈ range (k + 1), S(k, j) * r ^ j` with
`S(k, j) = Nat.stirlingSecond k j`.
* `integral_id_map_cast_poissonMeasure : ∫ x, x ∂Po(ℝ, r) = r`
* `integral_pow_two_map_cast_poissonMeasure : ∫ x, x ^ 2 ∂Po(ℝ, r) = r ^ 2 + r`
* `integral_pow_three_map_cast_poissonMeasure : ∫ x, x ^ 3 ∂Po(ℝ, r) = r ^ 3 + 3 * r ^ 2 + r`
* `integral_pow_four_map_cast_poissonMeasure :
∫ x, x ^ 4 ∂Po(ℝ, r) = r ^ 4 + 6 * r ^ 3 + 7 * r ^ 2 + r`
* `variance_id_map_cast_poissonMeasure : Var[id; Po(ℝ, r)] = r`
* `centralMoment_three_map_cast_poissonMeasure : centralMoment id 3 Po(ℝ, r) = r`
* `centralMoment_four_map_cast_poissonMeasure : centralMoment id 4 Po(ℝ, r) = 3 * r ^ 2 + r`
Proof idea: the factorial moment sum is reindexed by `n ↦ n + k` (the first `k` terms vanish)
and becomes `r ^ k` times the total mass of `Po(r)`. Writing `n ^ k` in terms of falling factorials
with `Nat.pow_eq_sum_stirlingSecond_mul_descFactorial` gives the general raw moment; the moments
of order 1 to 4 are its special cases. The central moments follow by expanding `(x - r) ^ j` into
raw moments, adding the corresponding `HasSum` statements and `ring`. Integrability comes from finiteness
of the moment generating function via `memLp_of_mem_interior_integrableExpSet`.
---
Relation to #33688: that PR adds `HasSum`/`tsum` expectation lemmas for the old `poissonPMF` /
`poissonPMFReal` API in `Mathlib/Probability/Distributions/Poisson.lean`. Those declarations
and that file are no longer on master (the distribution is now `poissonMeasure` in
`Poisson/Basic.lean`), and #33688 is labelled `merge-conflict` / `awaiting-author`. This PR
states the mean at the level of `poissonMeasure` in the same style as `integral_id_binomial`
and `integral_id_gaussianReal`; it does not depend on #33688 and touches different files.
AI tools (Claude and Codex) were used to port and adapt this proof to Mathlib; the author reviewed it.
|
t-measure-probability
new-contributor
LLM-generated
|
187/0 |
Mathlib.lean,Mathlib/Probability/Distributions/Poisson/Moments.lean |
2 |
2 |
['github-actions'] |
nobody |
10-8620 10 days ago |
10-56038 10 days ago |
10-58695 10 days |
0 |
| 45384 |
vihdzp author:vihdzp |
feat: type alias for overriding the order instance of a type |
See the module docstring for motivation. This is intended as a stepping stone towards switching the ordinal API to bundled relations (see #44009, #44010), while still allowing the usage of unbundled relations when they're needed (see e.g. #38357).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
97/0 |
Mathlib.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/SuccPred/Basic.lean,Mathlib/Order/WellFounded.lean,Mathlib/Order/WithLT.lean |
5 |
5 |
['SnirBroshi', 'github-actions', 'vihdzp'] |
nobody |
10-2425 10 days ago |
11-29397 11 days ago |
11-38548 11 days |
0 |
| 37724 |
xgenereux author:xgenereux |
feat(UniqueFactorizationDomain/Multiplicity): `WfDvdMonoid.max_power_factor` for finsupp |
A version of `WfDvdMonoid.max_power_factor` for finsets/finsupp. That is, we take the highest power which divides everything in the finset.
AI disclaimer: I asked Claude Code to simplify the proofs at commit https://github.com/leanprover-community/mathlib4/pull/37724/changes/579eceaad06e32941615830e6838547d464d28b6.
Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
70/12 |
Mathlib/RingTheory/UniqueFactorizationDomain/Multiplicity.lean |
1 |
12 |
['chrisflav', 'github-actions', 'mathlib-merge-conflicts', 'riccardobrasca', 'xgenereux'] |
riccardobrasca assignee:riccardobrasca |
10-1537 10 days ago |
20-14630 20 days ago |
105-4306 105 days |
0 |
| 44583 |
CBirkbeck author:CBirkbeck |
chore(Analysis/Distribution/SchwartzSpace/Deriv): define `derivCLM` via `lineDerivOpCLM` |
Define `SchwartzMap.derivCLM` as `lineDerivOpCLM 𝕜 𝓢(ℝ, F) 1` instead of building it from scratch. Its name, signature and `derivCLM_apply` are unchanged.
---
<!--redteam:v1 {"owner":"AI-DOOM-97fce5ac-e255-4515-b311-12ecf245ce72","findings":["RT-20261007-498fbf"],"patterns":["clm-rebuilt-instead-of-composed"],"severity":"MAJOR"}-->
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-analysis
LLM-generated
|
7/15 |
Mathlib/Analysis/Distribution/SchwartzSpace/Deriv.lean |
1 |
4 |
['CBirkbeck', 'eric-wieser', 'github-actions', 'tb65536'] |
nobody |
9-83787 9 days ago |
9-84815 9 days ago |
9-84742 9 days |
0 |
| 44599 |
CBirkbeck author:CBirkbeck |
chore(CategoryTheory/Limits/Shapes/Equalizers): deprecate duplicate `parallelPairIsoMk` |
Deprecate `parallelPairIsoMk`, a duplicate of `parallelPair.ext` (they are equal by `rfl`), and use `parallelPair.ext` instead. `IsKernel.ofIso` and `IsCokernel.ofIso` are now the (co)kernel cases of `Fork.isLimitOfIsos` and `Cofork.isColimitOfIsos`.
---
<!--redteam:v1 {"owner":"AI-DOOM-97fce5ac-e255-4515-b311-12ecf245ce72","findings":["RT-20261007-e6d8f0"],"patterns":["second-construction-same-file"],"severity":"MAJOR"}-->
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
LLM-generated |
14/26 |
Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/CategoryTheory/Limits/Shapes/Equalizers.lean,Mathlib/CategoryTheory/Limits/Shapes/Kernels.lean |
3 |
4 |
['github-actions', 'mathlib-merge-conflicts', 'tb65536'] |
nobody |
9-81659 9 days ago |
9-81716 9 days ago |
9-82768 9 days |
0 |
| 44613 |
keithadler author:keithadler |
feat(RepresentationTheory): irreducible representations are bounded by conjugacy classes |
For a finite group `G` and an algebraically closed field `k` in which `|G|` is invertible, `Representation.char_orthonormal` gives orthogonality of irreducible characters. This PR adds the consequence that is used in practice:
* `Representation.classFunction ρ : ConjClasses G → k`, the character as a class function;
* `Representation.linearIndependent_classFunction`: the class functions of a family of pairwise non-isomorphic irreducible representations are linearly independent;
* `Representation.card_le_card_conjClasses`: such a family has at most `Nat.card (ConjClasses G)` members.
This is the upper-bound half of "the number of irreducible representations equals the number of conjugacy classes" (the other half, that characters span the class functions, is not yet in Mathlib). The bound is exactly what is needed to show that an explicit list of `Nat.card (ConjClasses G)` pairwise non-isomorphic irreducibles is complete; e.g. with the companion PR on conjugacy classes of `Perm α`, that the Specht modules exhaust the irreducible representations of `S_n` (used downstream in https://github.com/keithadler/saxl-lean).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---
|
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
118/0 |
Mathlib.lean,Mathlib/RepresentationTheory/CharacterCount.lean |
2 |
3 |
['artie2000', 'github-actions'] |
nobody |
9-77198 9 days ago |
32-68337 32 days ago |
32-68264 32 days |
0 |
| 44207 |
urkud author:urkud |
chore(Calculus/FDeriv/Comp): reorganize the file |
Cleanup `Calculus/FDeriv/Comp` and prepare it to generalizing to TVS.
- split the file into sections `TwoFunctions` and `Iterate`; in the future, these sections will have different typeclass assumptions;
- move the typeclass assumptions and the variables about `f`, `g`, `s`,
`t`, `x`, `y` to `variable` lines, so that they don't have to be
repeated in every theorem;
- move the lemmas about `fderiv`/`fderivWithin` of a composition after
the lemmas about `Differentiable*`;
- use `@[to_fun]` to generate the eta-expanded versions of the lemmas
about `g ∘ f` instead of writing some of them down and leaving the rest
absent;
- state `HasStrictFDerivAt.comp` about `g ∘ f`, like all the other chain
rules in the file.
The last two items change API:
* `DifferentiableAt.fun_comp'` is renamed to `DifferentiableAt.fun_comp`,
which is the name `to_fun` generates, with a deprecated alias for the
old one.
* the eta-expanded form of `HasStrictFDerivAt.comp` is now
`HasStrictFDerivAt.fun_comp`. The call sites that need that form are
adjusted; note that a goal need not mention `fun x ↦ _` to need it,
e.g. `HasStrictFDerivAt (c • f) _ _` unfolds to the eta-expanded form
and not to `_ ∘ _`.
Extracted by Claude from a larger refactor written by Yury.
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
|
t-analysis
LLM-generated
|
94/113 |
Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/FDeriv/Bilinear.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/FDeriv/CompCLM.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousAlternatingMap.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousMultilinearMap.lean,Mathlib/Analysis/Calculus/FDeriv/Mul.lean,Mathlib/Analysis/Calculus/FDeriv/Norm.lean,Mathlib/Analysis/Calculus/FDeriv/WithLp.lean,Mathlib/Analysis/Calculus/Implicit.lean,Mathlib/Analysis/Complex/RealDeriv.lean,Mathlib/Analysis/InnerProductSpace/Calculus.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean |
14 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
9-68485 9 days ago |
9-82505 9 days ago |
9-82432 9 days |
0 |
| 45420 |
PSchwahn author:PSchwahn |
feat(Algebra): define sets of finite products in a magma |
This PR adds a file `Algebra/Products.lean` containing declarations about products of tuples of elements in a magma, together with some basic API. We plan to expand on this later. Ultimately we plan to use these to prove results about [Leibniz algebras](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Leibniz.20algebras/with/598438796).
We note that `Fin.prod` (from `Batteries.Data.Fin.Basic`) provides a similar functionality as our declaration `OrderedLeftProduct`. However `Fin.prod` requires a multiplicative unit on the magma and it associates the products to the right, whereas `OrderedLeftProduct` is associated to the left and works for any magma. This will become important because we work with non-associative operations and in the future would like to align with the literature (e.g. on Leibniz algebras).
Co-authored by: Viviana del Barco, Gustavo Infanti, Artem Lopatin, Exequiel Rivas
---
|
t-algebra
new-contributor
label:t-algebra$ |
162/0 |
Mathlib.lean,Mathlib/Algebra/Products.lean |
2 |
2 |
['github-actions'] |
nobody |
9-67698 9 days ago |
11-70327 11 days ago |
11-70254 11 days |
0 |
| 44208 |
urkud author:urkud |
chore(Calculus/FDeriv/Prod): reorganize the file |
Prepare `Calculus/FDeriv/Prod` for generalizing to topological vector spaces.
- replace the anonymous sections by `section Prod` (covering the lemmas
about `E × F`) and rename the inner `section Prod` to `section ProdMk`;
- move the variables about `f`, `f'`, `s`, `x`, `L` to the sections that
use them, so that `section Pi` and `section PiFin` are independent of
the rest of the file;
- move `hasFDerivAt_prodMk_left`/`hasFDerivAt_prodMk_right` out of
`section ProdMk`, `HasFDerivAtFilter.fst` before `HasStrictFDerivAt.fst`,
and `fderiv.snd` after `fderivWithin_snd`.
This order reduced `diff` to the TVS version to actual typeclass assumptions changes.
No lemma is added, removed, or restated.
Extracted by Claude from a larger refactor written by Yury.
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
---
|
t-analysis
LLM-generated
|
37/41 |
Mathlib/Analysis/Calculus/FDeriv/Prod.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
9-67082 9 days ago |
9-67331 9 days ago |
22-29410 22 days |
0 |
| 45514 |
PSchwahn author:PSchwahn |
feat(Logic/Equiv/Fin/Basic): extension/deletion operations on permutations on `Fin n` |
Add basic operations on permutations on `Fin n`:
- `Fin.Perm.castSucc`: extend a permutation on `Fin n` to one on `Fin (n + 1)` in the obvious way.
- `Fin.Perm.removeNth`: removes a given position in a permutation on `Fin (n + 1)`, and collapses the domain and range to `Fin n`. Useful in conjunction with `Fin.succAbove`.
Along this, add some API theorems:
- `removeNth_of_castSucc_lt₁`, `removeNth_of_castSucc_lt₂`, `removeNth_of_le_castSucc₁` and `removeNth_of_le_castSucc₂` are analogous to [Fin.succAbove_of_castSucc_lt](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Fin/SuccPred.html#Fin.succAbove_of_castSucc_lt) resp. [Fin.succAbove_of_le_castSucc](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Fin/SuccPred.html#Fin.succAbove_of_le_castSucc).
- `succAbove_removeNth` shows how `Fin.Perm.removeNth` interacts with [Fin.succAbove](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Fin/SuccPred.html#Fin.succAbove).
- `castSucc_zero` and `castSucc_succ` are simp lemmas for `Fin.Perm.castSucc`.
--- |
new-contributor
t-logic
|
130/0 |
Mathlib/Logic/Equiv/Fin/Basic.lean |
1 |
3 |
['github-actions'] |
nobody |
9-61687 9 days ago |
9-61746 9 days ago |
9-61673 9 days |
0 |
| 43104 |
elazarg author:elazarg |
feat(InformationTheory/KullbackLeibler): finite Kullback-Leibler divergence |
Add finite-sum formulas for `InformationTheory.klDiv` on finite measurable spaces, including equal-mass and probability-measure specializations and formulas for sums of weighted Dirac measures. Provide both `ℝ≥0∞`-valued and `toReal` versions.
Supporting API includes a formula for the Radon–Nikodym derivative at points of nonzero reference-measure mass, a finite-sum formula for the integral of the log-likelihood ratio, and singleton-mass and absolute-continuity lemmas for sums of weighted Dirac measures.
---
Continuing #42584, another part of https://github.com/elazarg/kraft.
Following review, this uses the existing `klDiv` instead of introducing `klDivFin`. The `toReal` formulas connect it to real-valued sums in downstream code.
For measures of unequal mass, the formulas retain the correction term `ν.real univ - μ.real univ`.
The KL formulas are in `KullbackLeibler/Basic.lean`; the supporting lemmas are in the corresponding measure-theory modules.
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
new-contributor
LLM-generated
|
100/1 |
Mathlib/InformationTheory/KullbackLeibler/Basic.lean,Mathlib/MeasureTheory/Measure/Decomposition/RadonNikodym.lean,Mathlib/MeasureTheory/Measure/Dirac/Basic.lean,Mathlib/MeasureTheory/Measure/LogLikelihoodRatio.lean |
4 |
9 |
['EtienneC30', 'elazarg', 'github-actions', 'vlad902'] |
urkud assignee:urkud |
9-50455 9 days ago |
56-69844 56 days ago |
65-50452 65 days |
0 |
| 42029 |
NoneMore author:NoneMore |
feat(ModelTheory): add elementary chains |
This PR adds the definition of elementary chains and construct their direct limits, shows that the canonical maps and compatible cocone lifts are elementary and derives theory preservation and cardinality bounds for the limit.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #42125
AI disclosure: Most declarations, comments, and documentation in this PR were generated with Codex. Some proofs were structurally simplified using the `/golf` command from Lean 4 Skills. I reviewed the resulting code and documentation and can vouch for all submitted content.
[](https://gitpod.io/from-referrer/)
|
t-logic |
312/0 |
Mathlib.lean,Mathlib/ModelTheory/ElementaryChain.lean |
2 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
9-28546 9 days ago |
9-28605 9 days ago |
9-36092 9 days |
1 |
| 39037 |
JovanGerb author:JovanGerb |
chore(CategoryTheory): improve some `ConcreteCategory` instances |
Two instances involving concrete categories have the wrong synthesis order. This is fixed by using a different binder info for the `FunLike` instance.
Previously, type class search would end up with a goal of the form `∀ x y, FunLike (?FV x y) _ _`. The metavariable then caused the type class search to explode.
Lean has an algorithm for determining the right synthOrder, which usually works well, but failed in these two cases. This is becase the type `FV` appears in the conclusion, so it thinks that the `?FV` metavariable will get assigned. But it ends up not being assigned in practice.
The `FunLike` parameter of `ConcreteCategory` is an `outParam`, which means that it can be inferred by synthesizing the `ConcreteCategory` instance.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
9/2 |
Mathlib/CategoryTheory/Action/Concrete.lean,Mathlib/CategoryTheory/Limits/Shapes/ConcreteCategory.lean |
2 |
14 |
['JovanGerb', 'Vierkantor', 'github-actions', 'grunweg', 'leanprover-radar', 'mathlib-bors'] |
Vierkantor and kim-em assignee:kim-em assignee:Vierkantor |
9-18449 9 days ago |
12-49112 12 days ago |
38-10563 38 days |
0 |
| 44955 |
user202729 author:user202729 |
chore: change all occurrences of equational lemma to equation lemma |
Change all occurrences of "equational lemma" to "equation lemma". Also add a missing apostrophe.
---
As far as I can tell, both are grammatical: the "equation" in "equation lemma" is a noun adjunct, while "equational" is an adjective. It feels like noun adjunct is "more advanced English" though.
Before this pull request: ("equation lemma" is more popular than "equational lemma")
```
[mathlib4]$ rg 'equational lemma'|wc -l
10
[mathlib4]$ rg 'equation lemma'|wc -l
31
[mathlib4]$ rg 'equational theorem'|wc -l
6
[mathlib4]$ rg 'equation theorem'|wc -l
2
```
and in Lean: (same, but only slightly)
```
[lean4]$ rg 'equational lemma'|wc -l
16
[lean4]$ rg 'equation lemma'|wc -l
20
[lean4]$ rg 'equational theorem'|wc -l
85
[lean4]$ rg 'equation theorem'|wc -l
38
```
Not sure if it's worth unifying the theorem case (probably yes. But in this case, apparently "equational theorem" is more popular than "equation theorem".), and/or unify lemma and theorem (probably not, mathlib distinguishes lemmas and theorems).
|
new-contributor |
10/10 |
Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/MappingCone.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Sites/CoversTop/Basic.lean,Mathlib/CategoryTheory/Sites/Hypercover/One.lean,Mathlib/Data/Nat/Fib/Zeckendorf.lean,Mathlib/Tactic/Eqns.lean,Mathlib/Tactic/Translate/ToAdditive.lean,docs/Conv/Guide.lean |
9 |
4 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
9-14920 9 days ago |
9-14969 9 days ago |
18-60460 18 days |
0 |
| 45528 |
joelriou author:joelriou |
chore(CategoryTheory/Limits): remove set_option for multiequalizers |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-category-theory
tech debt
|
36/80 |
Mathlib/CategoryTheory/Limits/Preserves/Shapes/Multiequalizer.lean,Mathlib/CategoryTheory/Limits/Shapes/Equalizers.lean,Mathlib/CategoryTheory/Limits/Shapes/Multiequalizer.lean,Mathlib/Order/CompleteLattice/MulticoequalizerDiagram.lean |
4 |
1 |
['github-actions'] |
nobody |
9-12137 9 days ago |
9-12198 9 days ago |
9-12126 9 days |
5 |
| 41892 |
Ljon4ik4 author:Ljon4ik4 |
feat: mapOfCompatibleSMul is the same map independently of S |
The `mapOfCompatibleSMul : M ⊗[A] N →ₗ[S] M ⊗[R] N` is the same map independently of `S`. This PR adds two lemmas asserting that (one for the underlying AddHom, one for the kernels).
I am not quite sure whether the second one is in the optimal shape: It was the shape useful to me, but maybe there is some better way to phrase it or it should be omitted completely (since it follows from the first one...).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
18/1 |
Mathlib/LinearAlgebra/TensorProduct/Basic.lean |
1 |
31 |
['Ljon4ik4', 'Ruben-VandeVelde', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'ocfnash', 'themathqueen'] |
eric-wieser assignee:eric-wieser |
9-11508 9 days ago |
9-11508 9 days ago |
108-65074 108 days |
0 |
| 40948 |
Thmoas-Guan author:Thmoas-Guan |
feat(LinearAlgebra): exterior power commute with base change |
In this PR, we added the commute of exterior power and base change.
AI usage: filling in construction of the final equivalence with lemmas decribing it, all the preliminary constructions are refactored by human later.
Co-authored-by: Zichen Wang <zichenwang25@stu.pku.edu.cn>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #44604
[](https://gitpod.io/from-referrer/)
|
t-algebra
LLM-generated
label:t-algebra$ |
157/0 |
Mathlib.lean,Mathlib/LinearAlgebra/ExteriorAlgebra/Grading.lean,Mathlib/LinearAlgebra/ExteriorPower/BaseChange.lean |
3 |
25 |
['Thmoas-Guan', 'github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'ocfnash', 'robin-carlier'] |
joelriou assignee:joelriou |
9-5414 9 days ago |
9-5414 9 days ago |
132-5496 132 days |
3 |
| 41426 |
gmcninch-prof author:gmcninch-prof |
feat: add symmetric multilinear maps |
Define `SymmetricMap R M N ι`, the type of symmetric `R`-multilinear maps
from `ι → M` to `N` (i.e. multilinear maps invariant under permutation of
their arguments).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
The code is adapted from Kenny Lau's work
[here](https://github.com/kckennylau/EllipticCurve/blob/master/EllipticCurve/ProjectiveSpace/TensorProduct/SymmetricMap.lean)
-- see [`SymmetricMap`](https://github.com/gmcninch-prof/mathlib4/blob/symmetric-power-lift/Mathlib/LinearAlgebra/TensorProduct/SymmetricMap.lean).
This PR previously also contained the universal property / `lift` for
`SymmetricPower` (relating linear maps out of `Sym[R]^n M` to symmetric
multilinear maps), but per reviewer feedback on Zulip that work has been
split into a separate PR that depends on this one.
Zulip discussion [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/SymmetricPower.20universal.20property/near/608532652)
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
397/0 |
Mathlib.lean,Mathlib/LinearAlgebra/TensorProduct/SymmetricMap.lean |
2 |
10 |
['github-actions', 'gmcninch-prof', 'jcommelin'] |
riccardobrasca assignee:riccardobrasca |
8-50462 8 days ago |
119-68307 119 days ago |
121-36536 121 days |
1 |
| 44822 |
William7743 author:William7743 |
feat(Geometry/Euclidean/Inversion): affine limits and filter identities |
Adds filter-level limit and continuity lemmas for `EuclideanGeometry.inversion` in
`Geometry/Euclidean/Inversion/Basic.lean`:
* `not_continuousAt_inversion_center_of_neBot` — nonzero-radius inversion is
discontinuous at a non-isolated center (`[NeBot (𝓝[≠] c)]`).
* `continuousAt_inversion_iff` — inversion is continuous at `x` iff `x ≠ c ∨ R = 0`.
* `tendsto_inversion_cobounded_nhds_center` /
`tendsto_inversion_cobounded_nhdsNE_center` — as the argument tends to infinity,
inversion tends to the center, resp. its punctured neighborhood for nonzero radius.
* `map_inversion_cobounded` / `map_inversion_nhdsNE_center` — for nonzero radius,
inversion pushes the cobounded filter exactly to `𝓝[≠] c` and back, via its
involutivity.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-euclidean-geometry
LLM-generated
new-contributor
|
53/0 |
Mathlib/Geometry/Euclidean/Inversion/Basic.lean |
1 |
6 |
['SnirBroshi', 'William7743', 'github-actions'] |
jsm28 assignee:jsm28 |
8-50458 8 days ago |
9-33101 9 days ago |
9-35060 9 days |
0 |
| 45042 |
YaelDillies author:YaelDillies |
feat(Util/Notation3): don't try matching tactic blocks |
This means that `notation3` can e.g. be used to create a delaborator for concrete cycle notation `c[...]` whereas previously it would fail due to the `by decide` in the expansion.
This is best effort, in the sense that eluding a proof in pretty-printing is necessarily a loss, unless we somehow run the tactic block while pretty-printing to determine whether the proof could have come from the tactic or had been hand-provided by the user.
Remove the `(prettyPrint := false)` flag in concrete cycle notation and the application of `Cycle.nodup_coe_iff` in the default proof term: the decidability instance applies it automatically anyway.
Generated by Claude Opus, hand-edited by myself afterwards.
Assisted-by: Claude Opus 5.5
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
LLM-generated
t-meta
|
29/15 |
Mathlib/GroupTheory/Perm/Cycle/Concrete.lean,Mathlib/Util/Notation3.lean,MathlibTest/Util/Notation3.lean |
3 |
3 |
['JovanGerb', 'YaelDillies', 'github-actions'] |
kim-em assignee:kim-em |
8-50452 8 days ago |
20-82360 20 days ago |
20-82287 20 days |
0 |
| 45529 |
joelriou author:joelriou |
feat(CategoryTheory/MorphismProperty): images of pushouts by functors |
If `P : MorphismProperty C` and `F : C ⥤ D` is a functor which preserves pushouts, we show `P.pushouts.map F ≤ (P.map F).pushouts`. Similar results are obtained for other shapes.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-category-theory |
79/2 |
Mathlib/CategoryTheory/MorphismProperty/Limits.lean,Mathlib/CategoryTheory/MorphismProperty/TransfiniteComposition.lean |
2 |
1 |
['github-actions'] |
robin-carlier assignee:robin-carlier |
8-50449 8 days ago |
9-12674 9 days ago |
9-12601 9 days |
3 |
| 42041 |
FrankieNC author:FrankieNC |
feat(Topology/MetricSpace): minkowski (box-counting) dimension |
Define the lower and upper Minkowski (box-counting) dimensions of a set in a pseudo-emetric space via covering numbers, prove the basic API (monotonicity, closure invariance, unions, finite sets), and show `dimH s ≤ lowerMinkowskiDim s ≤ upperMinkowskiDim s` (Falconer, Fractal Geometry, Ch. 3). |
t-topology |
354/0 |
Mathlib.lean,Mathlib/Topology/MetricSpace/Cover.lean,Mathlib/Topology/MetricSpace/CoveringNumbers.lean,Mathlib/Topology/MetricSpace/MinkowskiDimension.lean,docs/references.bib |
5 |
5 |
['github-actions', 'wwylele'] |
nobody |
8-49560 8 days ago |
62-18249 62 days ago |
107-59979 107 days |
0 |
| 42608 |
Deicyde author:Deicyde |
doc: add wikidata attributes |
This PR adds a batch of 10 `@[wikidata]` attributes.
Claude helped generate the list of crossrefs (by scanning Wikidata + Mathlib). Comments are generated by [crossref-report](https://github.com/jcommelin/mathlib-crossref-report) and Wikilean.
See https://wikilean.jackmccarthy.org/review?pr=42608 for reviewer UI.
---
|
LLM-generated |
18/3 |
Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Convex/SimplicialComplex/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Data/Matrix/Diagonal.lean,Mathlib/Data/Set/Defs.lean,Mathlib/Order/Defs/PartialOrder.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/Topology/Constructions.lean |
9 |
19 |
['Deicyde', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
8-38395 8 days ago |
8-38445 8 days ago |
56-73208 56 days |
0 |
| 43023 |
SnirBroshi author:SnirBroshi |
feat(Order/RelSeries): change `FiniteDimensional` to allow empty types |
This also means that the zero ring is now `FiniteRingKrullDim`, and that `Empty` is `FiniteDimensionalOrder`.
[#mathlib4 > Should zero ring be finite-dimensional?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Should.20zero.20ring.20be.20finite-dimensional.3F/with/495871110)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
67/55 |
Mathlib/Order/KrullDimension.lean,Mathlib/Order/RelSeries.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,Mathlib/RingTheory/KrullDimension/Basic.lean |
5 |
5 |
['SnirBroshi', 'github-actions', 'plp127', 'themathqueen'] |
nobody |
8-32877 8 days ago |
79-79456 79 days ago |
79-79383 79 days |
0 |
| 42630 |
will1491 author:will1491 |
feat(Analysis/Complex): define Wirtinger derivatives |
Define the Wirtinger derivatives `Complex.wirtingerDeriv` and `Complex.wirtingerDerivBar` from `fderiv ℝ`, and prove: the Cauchy-Riemann characterization of complex differentiability (pointwise and on open sets), agreement of `wirtingerDeriv` with `deriv` for holomorphic functions, additivity, Leibniz product rules, conjugation identities, both Wirtinger chain rules, and the Wirtinger decomposition of a real-linear map `ℂ →L[ℝ] ℂ`.
Extracted from https://github.com/will1491/RiemannDynamics, where it underlies the Beltrami-equation and Cauchy/Beurling-transform theory used in the proof of the measurable Riemann mapping theorem.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis
new-contributor
|
253/0 |
Mathlib.lean,Mathlib/Analysis/Complex/Wirtinger.lean |
2 |
6 |
['Maldooor', 'github-actions', 'mathlib-merge-conflicts', 'will1491'] |
felixpernegger assignee:felixpernegger |
8-29393 8 days ago |
59-64037 59 days ago |
90-39086 90 days |
0 |
| 44404 |
peabrainiac author:peabrainiac |
feat(Topology): σ-locally finite families of sets |
Define σ-locally finite families of sets, i.e. families that consist of countably many locally finite families, and provide API for them analogous to some of the existing API for `LocallyFinite`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
For some mathematical context, σ-locally finite families generalise both countable and locally finite families but are incomparable to locally countable families - that is, not every locally countable family is σ-locally finite, and not every σ-locally finite family is locally countable. While local countability might seem like a more natural condition in a vacuum, the reason σ-locally finite families are of interest is that they show up in several point-set topological applications:
- In order for a regular space to be paracompact, it suffices for open covers of it to admit σ-locally finite open refinements instead of locally finite ones; we prove this and conclude that regular Lindelöf spaces are paracompact in the follow-up PR #44411. This characterisation is also useful e.g. for proving that Fσ subsets of regular paracompact spaces are paracompact, which is one way to prove paracompactness of Milnor's $EG$ and $BG$ for compact Hausdorff groups.
- In order for a cover to be numerable (i.e. admit a subordinate partition of unity) it suffices for it to be refined by a σ-locally finite cover by cozero sets. This is important for e.g. proving the stacking lemma for numerable covers, which was useful for proving homotopy invariance of numerable fibre bundles in [classifying-bundles](https://peabrainiac.github.io/classifying-bundles/docs/ClassifyingBundles/NumerableBundle.html).
- Cozero sets and Fσ sets are both closed under σ-locally finite unions but not e.g. locally countable ones.
Since Engelking's general topology book introduces σ-locally finite families and proves several theorems about them, among others the mentioned paracompactness criterion, we list it as a reference in the file. The term is not exclusive to the book though, see e.g. nlab [here](https://ncatlab.org/nlab/show/countably+locally+finite+set+of+subsets) and pi-base [here](https://topology.pi-base.org/properties/P000054). |
t-topology |
150/0 |
Mathlib.lean,Mathlib/Data/Set/Restrict.lean,Mathlib/Topology/SigmaLocallyFinite.lean |
3 |
17 |
['github-actions', 'peabrainiac', 'peakpoint'] |
nobody |
8-27875 8 days ago |
8-27922 8 days ago |
15-48838 15 days |
3 |
| 44632 |
skwh54 author:skwh54 |
feat(RingTheory): prove semiprimary rings are closed under opposites |
This PR proves that a ring is semiprimary if and only if its opposite ring is semiprimary, resolving the three proof_wanted declarations in Wanted/RingTheory/SimpleModule/WedderburnArtin.lean.
It adds the required Jacobson radical symmetry and quotient-ring equivalence, and includes the Artinian/Noetherian consequence as an example in MathlibTest.
The Jacobson radical symmetry proof is adapted from [Haruhisa Enomoto's Lean 3 formalization](https://github.com/haruhisa-enomoto/lean-noncommutative-ring/blob/master/src/nc_jacobson_ideal.lean).
This PR was created with assistance from Codex. |
file-removed
t-ring-theory
new-contributor
LLM-generated
|
174/21 |
Mathlib.lean,Mathlib/Algebra/Ring/Units.lean,Mathlib/RingTheory/Jacobson/Opposite.lean,Mathlib/RingTheory/SimpleModule/WedderburnArtin.lean,MathlibTest/JacobsonOpposite.lean,Wanted.lean,Wanted/RingTheory/SimpleModule/WedderburnArtin.lean |
7 |
6 |
['github-actions', 'skwh54', 'tb65536'] |
nobody |
8-20745 8 days ago |
16-79381 16 days ago |
32-14446 32 days |
0 |
| 45556 |
JX-Mo author:JX-Mo |
feat(RingTheory/TensorProduct): add base change for the center of algebras |
We compare the base change of the center and the center of the base change for a given algebra.
Opus 5.5 comes up the idea of introducing the helper `δ` as a linear map to simplify the last proof. |
t-ring-theory
LLM-generated
|
86/0 |
Mathlib.lean,Mathlib/RingTheory/TensorProduct/Center.lean |
2 |
2 |
['JX-Mo', 'github-actions'] |
nobody |
8-18145 8 days ago |
8-18218 8 days ago |
8-18145 8 days |
0 |
| 43280 |
idontgetoutmuch author:idontgetoutmuch |
feat(Topology/VectorBundle): coordinate lemmas for the bundle of bilinear forms |
Coordinate lemmas for bundles of continuous linear maps.
Bundle.Trivialization.continuousLinearMap_symm_apply, hom_trivializationAt_symm_apply: the inverse of the trivialization of the bundle fun x ↦ E₁ x →SL[σ] E₂ x sends a model map L to v ↦ e₂⁻¹ (L (e₁ v)).
inCoordinates_apply_eq₂_of_trivial: inCoordinates_apply_eq₂ when the target bundle is trivial.
trivializationAt_symm_apply_bilin: the same for bilinear maps into a fixed space, deduced from hom_trivializationAt_symm_apply.
Motivation: in #33714 (existence of a Riemannian metric), the local metric is defined as the inverse trivialization applied to the inner product on the model fibre, and trivializationAt_symm_apply_bilin rewrites it as ⟪e u, e v⟫, from which symmetry and positivity follow. This PR is the first piece split out of #33714, which will be rebased on it. |
t-topology
new-contributor
|
68/20 |
Mathlib/Topology/VectorBundle/Hom.lean,Mathlib/Topology/VectorBundle/Riemannian.lean |
2 |
29 |
['github-actions', 'grunweg', 'idontgetoutmuch'] |
grunweg assignee:grunweg |
8-16827 8 days ago |
8-16872 8 days ago |
65-39031 65 days |
0 |
| 29558 |
Thmoas-Guan author:Thmoas-Guan |
feat(Algebra): definition of global dimension |
In this PR, we define global dimension supremum over `projectiveDimension`
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
To indicate co-authors, include at least one commit authored by each
co-author among the commits in the pull request. If necessary, you may
create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
When merging, all the commits will be squashed into a single commit listing all co-authors.
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #32058
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
116/0 |
Mathlib.lean,Mathlib/RingTheory/GlobalDimension.lean |
2 |
37 |
['Thmoas-Guan', 'erdOne', 'github-actions', 'jjdishere', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vlad902'] |
jjdishere assignee:jjdishere |
8-14826 8 days ago |
8-14827 8 days ago |
68-22957 68 days |
8 |
| 43758 |
joelcanary author:joelcanary |
feat(NumberTheory/ArithmeticFunction): the Redheffer determinant equals the Mertens function |
This PR adds the zeta (divisibility) matrix, the Redheffer matrix and the Mertens function, and proves **Redheffer's theorem** (1977): the determinant of the `(n+1) × (n+1)` Redheffer matrix equals the Mertens function `M(n+1) = ∑_{k ≤ n+1} μ(k)`.
In `Mathlib/NumberTheory/ArithmeticFunction/Moebius.lean`:
- `ArithmeticFunction.sum_divisors_moebius (k) : ∑ d ∈ k.divisors, μ d = if k = 1 then 1 else 0`, the pointwise form of `moebius_mul_coe_zeta`.
New file `Mathlib/NumberTheory/ArithmeticFunction/Redheffer.lean`:
- `ArithmeticFunction.mertens : ArithmeticFunction ℤ`, the summatory function of `μ`, with `mertens_apply : mertens n = ∑ k ∈ Icc 1 n, μ k`, `mertens_one`, `mertens_add_one` and `mertens_eq_sum_fin` (the `0`-based form `∑ i : Fin n, μ (i + 1)` used on the matrix side);
- `Matrix.zetaMatrix R n : Matrix (Fin n) (Fin n) R` for any `R` with `0` and `1` (entry `1` iff `i + 1 ∣ j + 1`), with `zetaMatrix_apply` (simp), `zetaMatrix_isUpperTriangular` and, for `CommRing R`, `det_zetaMatrix : det = 1` and `det_zetaMatrix_updateCol : det (updateCol 0 u) = ∑ j, μ (j + 1) * u j` (the first row of the inverse is `(μ 1, …, μ n)`);
- `Matrix.redheffer R n` (the zeta matrix with its first column set to ones), with `redheffer_apply` (simp) and `redheffer_eq_updateCol`;
- `Matrix.det_redheffer (n) : (redheffer R (n + 1)).det = mertens (n + 1)` for any `CommRing R` (with `mertens` cast into `R`).
The remaining declarations (the row vector `(μ 1, …, μ n)`, the reindexing of a `Fin n`-sum over divisibility as a sum over `m.divisors`, and three intermediate steps) are `private`: they are proof scaffolding, not API.
Proof sketch: by linearity of `det` in the first column, `det (redheffer R (n+1)) = det (zetaMatrix R (n+1)) + det (zetaMatrix with first column (0,1,…,1))`. The first term is `1`; by Cramer's rule (`det_smul_inv_mulVec_eq_cramer`) the second is the first row of the inverse of the zeta matrix dotted with `(0,1,…,1)`, and that row is `(μ 1, …, μ (n+1))` because `μ * ζ = 1` (`moebius_mul_coe_zeta`, via `sum_divisors_moebius`). The remaining sum `μ 2 + ⋯ + μ (n+1)` is `mertens (n+1) - 1`.
The ring `R` is an explicit argument of `zetaMatrix` and `redheffer` since nothing else determines it. Neither the Mertens function nor the Redheffer matrix currently appear in Mathlib. The new file imports only `LinearAlgebra.Matrix.Block` and `NumberTheory.ArithmeticFunction.Moebius`. References added to `docs/references.bib`: `redheffer1977` (the theorem) and `odlyzko1985` (cited in the module docstring for the disproof of the Mertens conjecture).
AI use: the Lean code and this description were written with an AI agent (Claude) under my direction, from a proof in my own project; I reviewed every declaration, and the branch was checked locally with `lake build`, `lake exe lint-style` and `lake exe runLinter` before each push.
|
t-number-theory
new-contributor
LLM-generated
|
238/0 |
Mathlib.lean,Mathlib/NumberTheory/ArithmeticFunction/Moebius.lean,Mathlib/NumberTheory/ArithmeticFunction/Redheffer.lean,docs/references.bib |
4 |
17 |
['MichaelStollBayreuth', 'Parcly-Taxel', 'github-actions', 'joelcanary', 'mathlib-merge-conflicts', 'wwylele'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
8-6234 8 days ago |
8-6289 8 days ago |
57-16043 57 days |
2 |
| 45560 |
artie2000 author:artie2000 |
feat(Algebra/Order): bijections between order structures and positive cones |
* Bundle the constructors between pointed (and also spanning) submonoids and subsemirings - ie, group and ring cones - and (linear) order structures on groups and rings, respectively, into equivalences.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
102/0 |
Mathlib/Algebra/Order/Group/Cone.lean,Mathlib/Algebra/Order/Ring/Cone.lean |
2 |
1 |
['github-actions'] |
nobody |
7-74712 7 days ago |
7-74841 7 days ago |
7-74768 7 days |
0 |
| 40644 |
j-loreaux author:j-loreaux |
refactor: use `LinearMap.IsWeak` for `WeakBilin` |
This introduces `WeakBilin.linearEquiv : WeakBilin B ≃ₗ[𝕜] E` as the canonical map between a space `E` and its type synonym `WeakBilin B`, for `B : E →ₗ[𝕜] F →ₗ[𝕜] 𝕜`. This serves to provides an abstraction barrier between these defeq types.
We then add `WeakBilin.pairing : WeakBilin B →ₗ[𝕜] F →ₗ[𝕜] 𝕜` as a copy of the bilinear map `B` where we exchange the domain via `LinearEquiv.arrowCongr`.
Finally, we provide an instance of `LinearMap.IsWeak (WeakBilin.pairing B)`. This allows us to remove abuse of definitional equality in the API for `WeakBilin`, and to deprecate most of the basic results in favor of their `LinearMap.IsWeak` variants.
The one result which we don't deprecate is `WeakBilin.continuous_of_continuous_eval`. This is because the specific version we can tag with `fun_prop`, but the more general version would not
be suitable as a `fun_prop` lemma because the linear map `B` inducing the topology would be a metavariable, and cannot be inferred from the type.
---
- [ ] depends on: #40489
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis
t-topology
tech debt
|
220/118 |
Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/Analysis/LocallyConvex/WeakSpace.lean,Mathlib/Analysis/Normed/Module/WeakDual.lean,Mathlib/MeasureTheory/Measure/FiniteMeasure.lean,Mathlib/Topology/Algebra/Module/Spaces/CharacterSpace.lean,Mathlib/Topology/Algebra/Module/Spaces/PointwiseConvergenceCLM.lean,Mathlib/Topology/Algebra/Module/Spaces/WeakBilin.lean,Mathlib/Topology/Algebra/Module/Spaces/WeakDual.lean |
9 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
mcdoll assignee:mcdoll |
7-59539 7 days ago |
10-24228 10 days ago |
10-24155 10 days |
0 |
| 45413 |
joelriou author:joelriou |
feat(CategoryTheory/Abelian): monoidal abelian categories with functorial flat resolutions |
If `A` is a monoidal category, we introduce a property of objects `ObjectProperty.Monoidal.flat : ObjectProperty A` which is satisfied by objects `X : A` such that both functors `tensorLeft X : A ⥤ A` and `tensorRight X : A ⥤ A` are exact (i.e. preserve both finite limits and finite colimits).
Moreover, if `A` is an abelian category, we introduce a typeclass `Abelian.HasFunctorialFlatResolution A` which says that objects in `A` admit a functorial epimorphism from a flat object.
---
- [x] depends on: #45418
- [x] depends on: #45417
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-category-theory |
116/4 |
Mathlib.lean,Mathlib/CategoryTheory/Abelian/Flat/Basic.lean,Mathlib/CategoryTheory/Limits/ExactFunctor.lean,Mathlib/CategoryTheory/ObjectProperty/Retract.lean |
4 |
4 |
['github-actions', 'joelriou', 'mathlib-dependent-issues', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
7-59062 7 days ago |
7-59108 7 days ago |
9-71760 9 days |
0 |
| 25982 |
Multramate author:Multramate |
feat(AlgebraicGeometry/EllipticCurve/Group): compute range of baseChange |
This PR continues the work from #10142.
Original PR: https://github.com/leanprover-community/mathlib4/pull/10142 |
t-algebraic-geometry
large-import
|
214/21 |
Mathlib.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Ring/Action/Submonoid.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Galois.lean,Mathlib/GroupTheory/GroupAction/Defs.lean |
5 |
4 |
['Multramate', 'github-actions', 'tb65536'] |
riccardobrasca assignee:riccardobrasca |
7-50461 7 days ago |
45-66525 45 days ago |
54-341 54 days |
0 |
| 31884 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory): definition of Gorenstein local ring |
In this PR, we gave basic definition of Gorenstein local ring and Gorestein ring and prove that they are stable under ring equiv.
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #41885
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
82/0 |
Mathlib.lean,Mathlib/RingTheory/Gorenstein/Defs.lean |
2 |
12 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
jjdishere assignee:jjdishere |
7-50460 7 days ago |
19-34265 19 days ago |
109-29517 109 days |
7 |
| 38331 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory/AdicCompletion): AdicCompletion of Noetherian ring is Noetherian |
For `I` an ideal of `R`, if `R/I` is Noetherian and `I` is finitely generated, the the completion of `R` wrt `I` is Noetherian.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #41556
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
large-import
|
215/5 |
Mathlib/RingTheory/AdicCompletion/Noetherian.lean |
1 |
19 |
['Thmoas-Guan', 'erdOne', 'faenuccio', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
jjdishere assignee:jjdishere |
7-50458 7 days ago |
19-32756 19 days ago |
79-66026 79 days |
5 |
| 42138 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): copies into `⊤` and containment in the complete graph |
Add copy constructors mirroring the existing `Copy.bot` API.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #43201
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
tech debt
|
116/31 |
Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean |
3 |
29 |
['Ruben-VandeVelde', 'SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mitchell-horner', 'vlad902'] |
jjdishere assignee:jjdishere |
7-50457 7 days ago |
44-39121 44 days ago |
86-2254 86 days |
0 |
| 42471 |
mo271 author:mo271 |
feat(RingTheory/LaurentSeries): add Leibniz rule |
This adds `hasseDeriv_mul` and `derivative_mul`.
Written with the help of Gemini
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
LLM-generated
|
101/0 |
Mathlib/RingTheory/LaurentSeries.lean |
1 |
10 |
['felixpernegger', 'github-actions', 'mathlib-bors', 'mo271', 'wwylele'] |
mariainesdff assignee:mariainesdff |
7-50456 7 days ago |
87-24488 87 days ago |
93-22089 93 days |
0 |
| 42959 |
gasparattila author:gasparattila |
feat: add `fun_simp` tactic |
This PR adds a tactic and simp set `fun_simp` for simplifying bundled morphisms. The main use case is simplifying functions before calling `fun_prop`. In the future, this tactic could be added to `fun_prop` itself as a preprocessing step.
---
The idea of this tactic is based on #42516 by @mcdoll. Unlike #42516, which simply uses a simp set, this implementation has a preprocessing step to allow using applied forms of lemmas without eta-expanding.
The tests were written using Codex.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-meta
LLM-generated
|
485/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/FunSimp.lean,Mathlib/Tactic/FunSimp/Attr.lean,MathlibTest/FunSimp.lean |
5 |
2 |
['gasparattila', 'github-actions'] |
thorimur assignee:thorimur |
7-50455 7 days ago |
16-1003 16 days ago |
16-930 16 days |
0 |
| 44743 |
vihdzp author:vihdzp |
refactor(Wiedijk100Theorems/AreaOfACircle): deprecate file |
The area formula for circles exists within Mathlib already, and in fact we also have formulas for the volume of an n-sphere. So we deprecate the file on the archive, in favor for the Mathlib theorem.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Not sure if this is the right thing to do. Maybe we could change the link on 100.yaml, but still keep the archive file as an alternate proof of a similar result?
|
t-measure-probability |
16/5 |
Archive/Wiedijk100Theorems/AreaOfACircle.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,docs/100.yaml |
3 |
1 |
['github-actions'] |
RemyDegenne assignee:RemyDegenne |
7-50451 7 days ago |
29-34740 29 days ago |
29-34667 29 days |
0 |
| 43815 |
SnirBroshi author:SnirBroshi |
feat(Data/Sym/Sym2): `Sym2.map` lifts equivalences |
`Sym2.map : (α → β) → (Sym2 α → Sym2 β)` preserves injectivity / surjectivity / bijectivity, and can lift `α ≃ β` to `Sym2 α ≃ Sym2 β`.
---
Is this what people might call "functoriality of `Sym2.map`"? Or maybe of `Sym2`? Or does `Sym2.map` itself already demonstrates that `Sym2` is functorial? Not sure
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
45/3 |
Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Data/Sym/Sym2.lean |
2 |
1 |
['github-actions'] |
nobody |
7-49560 7 days ago |
55-48035 55 days ago |
55-47962 55 days |
1 |
| 43220 |
wwylele author:wwylele |
refactor(Combinatorics/Partition): eliminate T2Space requirement from generating function |
Previously, the key lemma in this file had the shape `HasProd (fun i ↦ 1 + ∑' j, f (i + 1) (j + 1) • X ^ ((i + 1) * (j + 1))) (genFun f)`, which has a nested infinite sum inside the infinite prod. As a result, all related lemma needed T2Space when it doesn't have to. The new formulation extract the inner sum into a power series definition `genFunFactor` that works in general topological space, eliminating `T2Space` for the `HasProd`/`HasSum` lemma.
The old formula is kept under the name `hasProd_genFun'`. This is still used in the downstream file `Glaisher.lean`. To reduce the code change size, the refactor in `Glaisher.lean` is deferred to a future PR
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
96/79 |
Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Combinatorics/Enumerative/Partition/GenFun.lean,Mathlib/Combinatorics/Enumerative/Partition/Glaisher.lean |
3 |
3 |
['copilot-pull-request-reviewer', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
7-46374 7 days ago |
31-5286 31 days ago |
71-42356 71 days |
1 |
| 41064 |
BryceT233 author:BryceT233 |
feat(RingTheory/LocalRing): `adjoinRoot` and local rings |
Given a commutative ring $R$ and a monic polynomial $p$ over $R$, we show that $R[X]/(p)$ is a local ring if and only if $R$ is a local ring and the reduction of $p$ modulo the maximal ideal of $R$ is a prime power in the polynomial ring over the residue field.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
- [x] depends on: #40590
- [x] depends on: #40857
- [x] depends on: #41065
- [x] depends on: #41066 |
t-ring-theory |
199/3 |
Mathlib.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/LocalRing/AdjoinRoot.lean,Mathlib/RingTheory/Nilpotent/Lemmas.lean,Mathlib/RingTheory/Radical/Basic.lean |
5 |
5 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
7-40969 7 days ago |
7-41017 7 days ago |
7-40944 7 days |
0 |
| 45571 |
JovanGerb author:JovanGerb |
feat(ClickSuggestions): better insertion logic |
This PR makes `#click_suggestions` insert its suggestions in the correct place, even if the cursor is not in the place where the tactic should go.
In particular, if the cursor is placed after a tactic, or at the start of a tactic, then the position of the insertion is made to align with that tactic syntax, instead of using the cursor position.
What is more difficult is to determine the appropriate indentation level after a loose `by`. So, the user still needs to manually add the newline after a `by` before using `#click_suggestions`. This might be improved in a future PR.
This PR adds a test file that tests the insertion behaviour. In addition to testing the new behaviour, we also tests some other behaviours that weren't previously tested.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-meta |
411/49 |
Mathlib/Tactic/ClickSuggestions.lean,Mathlib/Tactic/ClickSuggestions/Util.lean,MathlibTest/ClickSuggestions/Insertion.lean,MathlibTest/ClickSuggestions/TestImpl.lean |
4 |
1 |
['github-actions'] |
nobody |
7-38032 7 days ago |
7-42778 7 days ago |
7-42705 7 days |
0 |
| 43261 |
YaelDillies author:YaelDillies |
feat(Geometry/Convex): cancellative convex spaces |
Define cancellative convex spaces as those space where non-trivial convex combinations are injective in any of their inputs. Show that modules, affine spaces, products of cancellative convex spaces, subspaces of cancellative convex spaces... are cancellative convex spaces.
Cancellative convex spaces are the correct setting for a large number of convexity concepts. Such a convex space embeds into some (canonical) affine space and therefore satisfies the geometrically intuitive properties of convexity. Non-cancellative convex spaces are pathological from the point of view of polytope theory.
[nLab](https://ncatlab.org/nlab/show/convex+space)
Generated by Claude Opus, reviewed and golfed by myself.
From the Polytopes in Berlin workshop, where participants were confused whether they could generalise their results from affine spaces to convex spaces.
Assisted-by: Claude Opus 5
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry
LLM-generated
|
210/14 |
Mathlib/Algebra/Order/GroupWithZero/Basic.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Geometry/Convex/ConvexSpace/AffineSpace.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/Geometry/Convex/ConvexSpace/Module.lean,Mathlib/Geometry/Convex/ConvexSpace/Prod.lean,Mathlib/Geometry/Convex/Set.lean |
7 |
15 |
['YaelDillies', 'b-mehta', 'github-actions', 'martinwintermath', 'mathlib-merge-conflicts'] |
nobody |
7-24171 7 days ago |
7-24235 7 days ago |
61-76737 61 days |
2 |
| 42272 |
xroblot author:xroblot |
feat(Algebra/QuadraticAlgebra): the degenerate cases over a field |
Complete the classification of `QuadraticAlgebra K a b` over a field by describing the two degenerate case.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #42708
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
41/0 |
Mathlib/Algebra/QuadraticAlgebra/Basic.lean,Mathlib/Algebra/QuadraticAlgebra/Discriminant.lean |
2 |
6 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
7-22935 7 days ago |
7-23277 7 days ago |
54-58270 54 days |
0 |
| 44427 |
xroblot author:xroblot |
feat(Tactic/NormNum): norm_num extension for Squarefree |
Add a `norm_num` extension deciding `Squarefree n` for numerals `n` in `ℕ` and `ℤ`.
If `n` is not squarefree, the proof uses a witness `a > 1` with `a * a ∣ n`, found with `Nat.minSqFac`. If `n` is squarefree, the proof is a trial division of `n` by the odd numbers `k = 3, 5, 7, …`, keeping the invariant that every prime divisor of the cofactor is at least `k`.
This is adapted from the Mathlib 3 extension by Mario Carneiro (mathlib#11666), which was left commented out in `Mathlib.Data.Nat.Squarefree` during the port. This commented-out code is removed, and the corresponding tests are restored.
As for the `Nat.Prime` extension, the proof is a certificate rather than a kernel evaluation of `Nat.minSqFac` via `Nat.squarefree_iff_minSqFac`. The certificate is also faster to check, but, as for `Nat.Prime`, large numbers need a higher `maxRecDepth`.
**Note**. I have read and checked the ordinary Lean statements and their proofs, but I am not familiar with metaprogramming, so I cannot really vouch for the meta code itself, which was written with the help of an LLM. A review by someone who is comfortable with `norm_num` extensions would be very welcome.
Created with Claude Code 🤖
---
|
tech debt
t-meta
LLM-generated
|
198/205 |
Mathlib.lean,Mathlib/Data/Nat/Squarefree.lean,Mathlib/Tactic.lean,Mathlib/Tactic/NormNum/Squarefree.lean,MathlibTest/Tactic/NormNum/Ext.lean |
5 |
1 |
['github-actions'] |
nobody |
7-18486 7 days ago |
7-18539 7 days ago |
37-55244 37 days |
0 |
| 44600 |
artie2000 author:artie2000 |
feat(Algebra/Ring): properties of semireal rings |
* Prove that real rings are semireal and that semireal fields are real
* Prove that a ring has a preordering on it iff it's semireal
* Clean up some documentation
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
63/1 |
Mathlib.lean,Mathlib/Algebra/Ring/IsFormallyReal.lean,Mathlib/Algebra/Ring/Semireal/Basic.lean,Mathlib/Algebra/Ring/Semireal/Defs.lean |
4 |
10 |
['artie2000', 'github-actions', 'vihdzp'] |
nobody |
7-9388 7 days ago |
7-85701 7 days ago |
32-60994 32 days |
0 |
| 45581 |
tb65536 author:tb65536 |
chore(Data/Nat/PadicValNat): deprecate `padicValNat` |
This PR deprecates `padicValNat` in favor of `multiplicity`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-number-theory
t-algebra
label:t-algebra$ |
29/25 |
Mathlib/Data/Nat/PadicValNat.lean,Mathlib/NumberTheory/Padics/PadicVal/Defs.lean,Mathlib/NumberTheory/SumTwoSquares.lean,MathlibTest/MaxPowDiv.lean |
4 |
2 |
['github-actions', 'tb65536'] |
nobody |
7-8524 7 days ago |
7-8570 7 days ago |
7-8497 7 days |
0 |
| 43358 |
EtienneC30 author:EtienneC30 |
feat: strong measurability of a path-valued random variable |
If `X` is a right-continuous strongly adapted stochastic process, then it is strongly measurable when seen as a path-valued random variable.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #43352
- [x] depends on: #43525
- [x] depends on: #45077
Co-authored-by: @RemyDegenne
[](https://gitpod.io/from-referrer/)
|
brownian
t-measure-probability
|
203/0 |
Mathlib.lean,Mathlib/Probability/Process/StronglyMeasurablePath.lean,Mathlib/Topology/NhdsWithin.lean |
3 |
9 |
['EtienneC30', 'github-actions', 'jvanwinden', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
7-5978 7 days ago |
7-6053 7 days ago |
40-12138 40 days |
1 |
| 44584 |
CBirkbeck author:CBirkbeck |
chore(AlgebraicTopology/FundamentalGroupoid): deprecate `transReflReparamAux` in favor of `qRight` |
Deprecate `Path.Homotopy.transReflReparamAux` and its lemmas: the function is `fun t ↦ unitInterval.qRight (t, 0)`, which `trans_refl_reparam` and `transRefl` now use.
---
<!--redteam:v1 {"owner":"AI-DOOM-97fce5ac-e255-4515-b311-12ecf245ce72","findings":["RT-20261006-546cb9"],"patterns":["parallel-reparametrisation-helper"],"severity":"MAJOR"}-->
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-algebraic-topology
tech debt
LLM-generated
|
10/12 |
Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean |
1 |
1 |
['github-actions', 'tb65536'] |
nobody |
7-5660 7 days ago |
9-82013 9 days ago |
9-84111 9 days |
0 |
| 45583 |
ouboub author:ouboub |
feat(Analysis/ODE): Grönwall's inequality with a variable coefficient |
Title:
feat(Analysis/ODE): Grönwall's inequality with a variable coefficient- #45583
Description:
I believe I have successfully implemented and tested the differential form of Grönwall's inequality with variable coefficients.
Details can be found in
https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/Gronwall.27s.20inequality.3A.20differential.20form.2C.20variable.20coeff/with/636639527
which includes two PDFs with a more detailed description.
- Here is a short description:
Add Grönwall's inequality in differential form with a variable coefficient `K` and a
variable inhomogeneous term `ε`, both continuous and of arbitrary sign, for a function
with right derivatives: if `f` is continuous on `[a, b]`, `f' t ≤ K t * f t + ε t` on
`[a, b)` and `f a ≤ δ`, then on `[a, b]`
`f t ≤ (δ + ∫ s in a..t, ε s / exp (∫ r in a..s, K r)) * exp (∫ s in a..t, K s)`.
This addresses (for differentiable `f`) the TODO in `Mathlib/Analysis/ODE/Gronwall.lean`
asking for a variable coefficient `K x` of any sign.
The main results found in the new file `Mathlib/Analysis/ODE/GronwallVariableCoeff.lean` are
* `gronwallBoundVar`: the bound above;
* `le_gronwallBoundVar_of_deriv_right_le`: the inequality;
* `gronwallBoundVar_const`: for constant `K` and `ε`, `gronwallBoundVar` agrees with
the existing `gronwallBound`;
* `le_mul_exp_integral_of_deriv_right_le_mul`: the homogeneous case `ε = 0`.
The proof uses the integrating factor `exp (∫ s in a..t, K s)` and the comparison lemma
`image_le_of_deriv_right_le_deriv_boundary`.
- Some open problems:
1. The two auxiliary lemmas `continuousOn_primitive_of_continuousOn` and
`hasDerivWithinAt_Ici_primitive` (one-sided FTC) are stated here; I did not find them
in Mathlib. Should they move to `Mathlib/MeasureTheory/Integral/IntervalIntegral/`,
or into the `intervalIntegral` namespace?
2. I did not dare to put my results into `Mathlib/Analysis/ODE/Gronwall.lean` itself,
3. There might be another TODO in the module docstring: the energy form of Bahouri–Chemin–Danchin, Lemma 3.3.
At some point, I asked Claude for advice on the main lemma, but I didn't include syntax I don't understand or haven't tested. The code might be clumsy.
regards
Uwe Brauer
|
t-analysis
new-contributor
|
270/0 |
Mathlib.lean,Mathlib/Analysis/ODE/GronwallVariableCoeff.lean |
2 |
4 |
['github-actions', 'ouboub'] |
nobody |
7-3219 7 days ago |
7-14413 7 days ago |
7-14340 7 days |
0 |
| 43818 |
JovanGerb author:JovanGerb |
chore: clean up some `to_dual` debt |
This PR cleans up a bunch of uses of `to_dual existing`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #43750
[](https://gitpod.io/from-referrer/)
|
tech debt |
43/186 |
Mathlib/CategoryTheory/Iso.lean,Mathlib/CategoryTheory/Limits/HasLimits.lean,Mathlib/CategoryTheory/Limits/IsLimit.lean,Mathlib/Order/ConditionallyCompletePartialOrder/Basic.lean,Mathlib/Order/GaloisConnection/Basic.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/Interval/Set/Disjoint.lean,Mathlib/Order/OrdContinuous.lean,Mathlib/Order/RelClasses.lean,Mathlib/Order/SuccPred/Archimedean.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Order/WithBot.lean,Mathlib/Topology/Order/Basic.lean,Mathlib/Topology/Order/Bornology.lean,Mathlib/Topology/Order/OrderClosed.lean |
15 |
5 |
['JovanGerb', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
6-82076 6 days ago |
6-82159 6 days ago |
34-85937 34 days |
0 |
| 45595 |
IvanRenison author:IvanRenison |
feat(Data/Holor): define the Hadamard product for holors |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-data |
45/0 |
Mathlib/Data/Holor.lean |
1 |
2 |
['github-actions'] |
nobody |
6-76106 6 days ago |
6-76154 6 days ago |
6-76081 6 days |
0 |
| 45282 |
3y3y3y-huaiji author:3y3y3y-huaiji |
feat(Topology/Order): add zero-crossing for odd maps on antipodal paths |
Add `exists_zero_of_antipodal_path`: a continuous odd map (`f (τ x) = -f x`) along a path connecting antipodal points (`γ b = τ (γ a)`) must have a zero.
This provides a direct path-lifting bridge over `intermediate_value_Icc` for spaces with domain involutions.
* `exists_zero_of_antipodal_path`: main existence theorem.
* `IsOddMap`: anti-invariance predicate `f (τ x) = -f x`.
---
> [!NOTE]
> **LLM Disclosure / AI Use**: This PR was prepared with the assistance of an LLM (`LLM-generated`). All proofs and statements have been formally verified by Lean 4 and checked with linters. |
t-topology
LLM-generated
new-contributor
|
71/0 |
Mathlib.lean,Mathlib/Topology/Order/Antipodal.lean |
2 |
5 |
['3y3y3y-huaiji', 'github-actions', 'leanprover-radar'] |
nobody |
6-73279 6 days ago |
6-73337 6 days ago |
14-37524 14 days |
0 |
| 42370 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Maps): more `map`/`comap` API |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
114/9 |
Mathlib/Combinatorics/SimpleGraph/Maps.lean |
1 |
3 |
['Ruben-VandeVelde', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
6-59353 6 days ago |
63-64021 63 days ago |
98-21995 98 days |
1 |
| 45591 |
DanielJHorton author:DanielJHorton |
feat(LinearAlgebra/ExteriorPower/WedgePairing): add lemma wedgePairing_apply |
This PR adds two lemmas:
- `wedgePairing_apply` in `LinearAlgebra/ExteriorPower/WedgePairing`
- `eqRec_apply` in `Algebra/Module/LinearMap/Baisc`
`eqRec_apply` is an analogue of `_root_.apply_eqRec` for linear maps and is used in the proof of `wedgePairing_apply`.
`wedgePairing_apply` unfolds and simplifies applications of `exteriorPower.wedgePairing`. It has no simp tag because `wedgePairing` is an abbrev (not a def), so the LHS is not in simp NF.
This PR was motivated by a project of mine where I had a proof that needed to expose the application of the underlying volume form in an expression containing `wedgePairing`.
I should probably mention here that there already exists a lemma `exteriorPower.apply_eqRec` in `LinearAlgebra/ExteriorPower/WedgePairing` (not to be confused with `_root_.apply_eqRec`) which is marked as private, but serves a vaguely similar purpose to this proposed `wedgePairing_apply` lemma. That said, it is more tailored to its use case later in the file and I don't think making it public is the way to go (especially if it has potential namespace conflicts with `_root_`).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
23/0 |
Mathlib/Algebra/Module/LinearMap/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/WedgePairing.lean |
2 |
1 |
['github-actions'] |
nobody |
6-58176 6 days ago |
6-58245 6 days ago |
6-77636 6 days |
0 |
| 43305 |
WenrongZou author:WenrongZou |
feat(PowerSeries/Derivative): add some lemmas |
In this PR, I migrated some results from Polynomial/Derivative.lean to PowerSeries/Derivative.lean.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
maintainer-merge
|
59/0 |
Mathlib/RingTheory/PowerSeries/Derivative.lean |
1 |
5 |
['Ruben-VandeVelde', 'WenrongZou', 'github-actions'] |
nobody |
6-56420 6 days ago |
6-56487 6 days ago |
68-82174 68 days |
0 |
| 43036 |
SnirBroshi author:SnirBroshi |
feat(Order/RelSeries): a strict order on a finite domain is finite dimensional |
Bound the length of a `RelSeries r` by the cardinality of `α` when `r` is a strict order (irreflexive and transitive), and show:
- `Finite α → r.IsIrrefl → r.IsTrans → Finite (RelSeries r)`
- `Infinite α → Infinite (RelSeries r)`
- `Finite α → Nonempty α → r.IsIrrefl → r.IsTrans → r.FiniteDimensional`
- `r.IsIrrefl → r.IsTrans → r.InfiniteDimensional → Infinite α`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
65/14 |
Mathlib.lean,Mathlib/Order/RelSeries.lean,Mathlib/Order/RelSeries/Lemmas.lean |
3 |
4 |
['Ruben-VandeVelde', 'SnirBroshi', 'github-actions'] |
nobody |
6-54382 6 days ago |
6-54462 6 days ago |
79-32429 79 days |
0 |
| 42995 |
jacob-greenfield author:jacob-greenfield |
feat: add `List.Pairwise.orderedInsert'`, `List.sortedLE_orderedInsert_lt`, and `List.sortedGE_orderedInsert_gt` |
Introduce a generalized `Pairwise.orderedInsert'` lemma to prove that `Pairwise r l` is maintained after performing an `orderedInsert` using a relation stronger than `r` under certain conditions. Prove `sortedLE_orderedInsert_lt`, showing that `l.orderedInsert (· < ·) a` preserves `SortedLE` for decidable total preorders (analogously for `sortedGE_orderedInsert_gt`). This is useful for inserting an element into a sorted list *behind* any other elements which compare equal.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
I was hoping to avoid `omit`, but that would require moving all of `Pairwise.orderedInsert'`, `Pairwise.orderedInsert`, `pairwise_insertionSort`, `sublist_insertionSort'`, `pair_sublist_insertionSort'`, and `mergeSort_eq_insertionSort` after `end sort` on line 365 and reintroducing all the section variables. I also considered moving `Pairwise.orderedInsert'` somewhere _before_ `variable {α β : Type*} (r : α → α → Prop) (s : β → β → Prop)` on line 30, but that would place it before `orderedInsert` is defined. "Omit" seemed like the least invasive approach.
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
|
27/11 |
Mathlib/Data/List/Sort.lean |
1 |
8 |
['github-actions', 'jacob-greenfield', 'theebayuser'] |
TwoFX assignee:TwoFX |
6-50452 6 days ago |
42-9781 42 days ago |
80-35425 80 days |
0 |
| 45108 |
thorimur author:thorimur |
feat: revamp `mk_all` internals |
This PR revamps `mk_all` to
1. correctly find the source directory and paths from the (already available) `lean_lib`s and rely on more robust Lake API more broadly
2. use a `Config` internally that accounts for the mathlib-specific exceptions, so that in the future downstream projects could read this from json instead
3. checks that we are not overwriting a file that includes more than just imports, and demands `--clobber` to do so
4. (misc.) allow multiple libraries/roots to be specified with `--lib Foo,Bar,Baz`
This also generally refactors the code somewhat to make it more principled and (hopefully) maintainable.
We also change the behavior of API in `Mathlib.Util.GetAllModules` as appropriate in order to rely on more robust paths.
---
- [x] depends on: #45107
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-meta |
271/112 |
Mathlib/Util/GetAllModules.lean,lakefile.lean,scripts/README.md,scripts/mk_all.lean |
4 |
7 |
['github-actions', 'grunweg', 'mathlib-dependent-issues', 'thorimur'] |
kim-em assignee:kim-em |
6-50449 6 days ago |
16-59857 16 days ago |
16-59784 16 days |
0 |
| 44398 |
j-loreaux author:j-loreaux |
feat: transfer algebraic structure to the `WithTopology` synonym |
`WithTopology` is a type synonym that changes the topology, but in various circumstances, one may wish to have the same algebraic structures available on this synonym, as we do for example for `WithLp`. This PR transfers those over using `WithTopology.equiv`.
---
Because this is very mechanical work, I generated this with Claude Code and checked the output.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-topology
t-algebra
LLM-generated
label:t-algebra$ |
500/0 |
Mathlib.lean,Mathlib/Topology/Algebra/WithTopology.lean |
2 |
2 |
['artie2000', 'github-actions'] |
nobody |
6-40962 6 days ago |
6-41028 6 days ago |
34-83153 34 days |
0 |
| 44491 |
staroperator author:staroperator |
feat(Order/Ideal): reprove Rasiowa–Sikorski lemma and deprecate `Order.Cofinal` |
Reprove Rasiowa–Sikorski lemma as `Order.exists_ideal_meets_cofinals`. This non-constructive version is closer to its usual statement (e.g. `Countable` instead of `Encodable`), hides internal constructions and is shorter. Its dual version, `Order.exists_pfilter_meets_coinitials` which is used in set theory more often, will be proved in #34855 when `Order.PFilter` gets `to_dual`-ized.
We also deprecate `Order.Cofinal`, which is the bundled version of `IsCofinal` and can be replaced by its unbundled version.
**The proofs of `embedding_from_cg` and `equiv_between_cg` in ModelTheory/PartialEquiv.lean are fixed by LLM (GPT-6 Astra).** Others are written by me.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order
increases-technical-debt
LLM-generated
|
149/94 |
Mathlib/ModelTheory/PartialEquiv.lean,Mathlib/Order/Cofinal.lean,Mathlib/Order/CountableDenseLinearOrder.lean,Mathlib/Order/Ideal.lean |
4 |
10 |
['github-actions', 'staroperator', 'vihdzp'] |
nobody |
6-40565 6 days ago |
6-40619 6 days ago |
35-38635 35 days |
1 |
| 41823 |
tb65536 author:tb65536 |
feat(Combinatorics/Design/Defs): definitions of combinatorial designs |
This PR adds the definitions of combinatorial designs.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
151/0 |
Mathlib.lean,Mathlib/Combinatorics/Design/Defs.lean |
2 |
18 |
['Jun2M', 'Parcly-Taxel', 'YaelDillies', 'github-actions', 'tb65536'] |
nobody |
6-38970 6 days ago |
7-14949 7 days ago |
115-54220 115 days |
1 |
| 38393 |
staroperator author:staroperator |
refactor(ModelTheory): add typeclasses for algebraic symbols |
`Language.ring` and `Language.presburger` share the same symbols `0`, `1` and `+` and have duplicated instances on `Term` and `realize` simp lemmas. This PR makes these symbols certain typeclasses (similar to [`Language.IsOrdered`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/ModelTheory/Order.html#FirstOrder.Language.IsOrdered)) and removes the duplication.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic
tech debt
|
401/202 |
Mathlib.lean,Mathlib/ModelTheory/Algebra/Classes.lean,Mathlib/ModelTheory/Algebra/Field/IsAlgClosed.lean,Mathlib/ModelTheory/Algebra/Ring/Basic.lean,Mathlib/ModelTheory/Algebra/Ring/FreeCommRing.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Basic.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Definability.lean |
7 |
9 |
['fpvandoorn', 'github-actions', 'mathlib-merge-conflicts', 'staroperator'] |
fpvandoorn assignee:fpvandoorn |
6-38014 6 days ago |
6-38095 6 days ago |
43-30112 43 days |
1 |
| 45601 |
vihdzp author:vihdzp |
feat: grade of element is `⊥` iff element is `⊥` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #45585 |
t-order |
14/2 |
Mathlib/Order/Grade.lean |
1 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
6-34006 6 days ago |
6-34066 6 days ago |
6-34616 6 days |
0 |
| 40479 |
thefundamentaltheor3m author:thefundamentaltheor3m |
feat(LinearAlgebra/AffineSpace/Simplex/Standard): Define the standard $n$-simplex as an `Affine.Simplex` |
In this PR, we define a basis-dependent construction of an affine simplex, using which we define the standard $n$-simplex in `Fin n → k` in terms of `Pi.basisFun`.
The main constructions are `Affine.Simplex.mkOfAffineBasis` and `Affine.Simplex.mkOfBasis`. The former constructs a simplex from any affine basis of an affine space and the latter constructs an affine simplex in a vector space viewed as an affine space. We then relate the construction to `stdSimplex`, defined in `Analysis.Convex.StdSimplex`.
I wrote the definitions myself and used LLM help to develop API.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
LLM-generated
new-contributor
t-algebra
label:t-algebra$ |
153/0 |
Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/Basis.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Standard.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
4 |
19 |
['github-actions', 'mathlib-splicebot', 'thefundamentaltheor3m', 'wwylele'] |
ocfnash assignee:ocfnash |
6-32552 6 days ago |
6-32614 6 days ago |
93-2332 93 days |
0 |
| 45602 |
vihdzp author:vihdzp |
feat: `ClosedIicTopology` on partial order is T0 |
We can't guarantee T1, take e.g. the Sierpinski topology.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-topology
t-order
|
10/16 |
Mathlib/Topology/Order/OrderClosed.lean,Mathlib/Topology/Order/ScottTopology.lean |
2 |
1 |
['github-actions'] |
nobody |
6-29538 6 days ago |
6-29610 6 days ago |
6-42591 6 days |
0 |
| 45604 |
JovanGerb author:JovanGerb |
refactor(GRewrite): `mctx`/`lctx` management |
This PR refactors the way `grw` deals with local contexts/metavariable contexts. Previously, this was integrated in the congruence loop (the big `mutual` block). After this PR, it is part of the function that applies the rewrite lemma.
This refactor is necessary in order to support equality congruence in `grw` using `Lean.Meta.Simp.main`.
The new implementation works as follows. We keep a state of whether any rewrite has occurred.
To rewrite for the first time, we update the local contexts of the meta variables to match the current local context. If we succeed, then we keep this updated metavariable context.
We also check which free variables appear in the metavariable assignments. The rewrite only makes sense when these variables are in scope. So, to keep track of this, we store the *maximal free varaible*, i.e. the used free variable with the largest index in the local context. At any later point, we check whether the rewrite makes sense by checking if this maximal free variable is in scope.
This PR also fixes a few issues around synthesizing instances under binders, and adds tests for them:
- The function `postprocessAppMVars` needs to be run in the local context of the rewrite (with `withLCtx`). Otherwise, we can get an unknown free variable error. Thanks to Aaron Liu for reporting this failure.
- The returned local context of a rewrite is now the maximal one instead of the minimal one, so that type class search has more available local instances. This is useful for synthesizing instances under e.g. a `[...] → _` binder.
- When modifying the local context of a metavariable, we now also update the local instances. This is similarly useful for rewriting under a `[...] → _` binder.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-meta |
141/76 |
Mathlib/Tactic/GRewrite/Core.lean,Mathlib/Tactic/GRewrite/Elab.lean,MathlibTest/Tactic/GRewrite.lean |
3 |
3 |
['JovanGerb', 'github-actions', 'leanprover-radar'] |
nobody |
6-20993 6 days ago |
6-31700 6 days ago |
6-31627 6 days |
0 |
| 43082 |
WenrongZou author:WenrongZou |
feat(RingTheory/Henselian): add Hensel lemma for non-monic polynomials |
In a ring `R` that is Henselian at an ideal `I`, a simple root modulo `I` lifts to a root in `R` even when the polynomial is not monic.
And for local ring, we prove two more equivalent description of the theorem [`HenselianLocalRing.TFAE`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Henselian.html#HenselianLocalRing.TFAE), see stacks project [04GG](https://stacks.math.columbia.edu/tag/04GG).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
93/6 |
Mathlib/RingTheory/Henselian.lean |
1 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
6-15401 6 days ago |
6-54837 6 days ago |
71-69977 71 days |
0 |
| 45608 |
vdelbarc author:vdelbarc |
feat(Algebra/Algebra): add ideals and quotients for non-unital non-associative algebras |
Introduce `NonUnitalNonAssocAlgebra.TwoSidedIdeal R A` as an `R`-submodule closed under multiplication by arbitrary elements of `A` on either side. This provides scalar-closed ideals for quotient constructions in non-unital, non-associative algebras.
Add basic lemmas, together with a forgetful map to the existing ring-theoretic `TwoSidedIdeal A`.
Construct the quotient `A ⧸ I` using the underlying submodule quotient. Equip it with non-unital, non-associative ring and module structures, and provide the quotient map as a non-unital algebra homomorphism, computation lemmas, and an induction principle.
Show that `SMulCommClass R A A` and `IsScalarTower R A A`, when available, descend to the quotient.
Co-Authors: Gustavo Infanti, Exequiel Rivas, Paul Schwahn
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
new-contributor
label:t-algebra$ |
262/0 |
Mathlib.lean,Mathlib/Algebra/Algebra/NonUnitalIdeal.lean |
2 |
2 |
['github-actions'] |
nobody |
6-14730 6 days ago |
6-14780 6 days ago |
6-16177 6 days |
0 |
| 43285 |
WenrongZou author:WenrongZou |
feat(ValuativeTopology): valuative topology of Z_p |
Let `K` be a field with assumption `[ValuativeRel K] [TopologicalSpace K] [IsValuativeTopology K]`. Let `R` be its ring of integers and the topology of `R` is induced by `K`, then there is a valuative topology over `R` . This can be used to deduce the valuative topology of `Z_p`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
59/0 |
Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/Padics/ValuativeRel.lean,Mathlib/Topology/Algebra/ValuativeRel/ValuativeTopology.lean |
3 |
5 |
['WenrongZou', 'github-actions', 'mathlib-merge-conflicts', 'tb65536'] |
nobody |
6-10009 6 days ago |
6-10054 6 days ago |
49-14182 49 days |
1 |
| 45540 |
arsmagic author:arsmagic |
feat(RingTheory/ZMod): odd-unit square criterion in ZMod (2^n) |
For an odd integer a, a is a square in ZMod (2^n) iff a ≡ 1 (mod 2^min(n,3)): case forms isSquare_two_pow_iff_of_odd_three_le (n≥3, mod 8) and isSquare_two_pow_iff_of_odd_le_three (n≤3, mod 2^n), plus the uniform form.
Discussed on Zulip (#Is there code for X? > Squares in ZMod (2^n) for odd units).
(https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Squares.20in.20ZMod.20.282.5En.29.20for.20odd.20units) (Xavier Roblot confirmed #45509 will not cover squares; split into two case forms per Snir Broshi's suggestion.)
Adds the characterization of squares among odd (unit) residues modulo a power of two.
For an odd integer a:
ZMod.isSquare_two_pow_iff_of_odd_three_le — for 3 ≤ n, IsSquare (a : ZMod (2^n)) ↔ a ≡ 1 [ZMOD 8].
ZMod.isSquare_two_pow_iff_of_odd_le_three — for n ≤ 3, ↔ a ≡ 1 [ZMOD 2^n].
ZMod.isSquare_two_pow_iff_of_odd — uniform form via min n 3.
Sufficiency is derived from `ZMod.isComplement'_zpowers_unitFive_neg_one` (#45509), and the custom Hensel lifting has been removed.
AI-tools used during preparation.
|
LLM-generated
t-data
new-contributor
|
128/0 |
Mathlib.lean,Mathlib/RingTheory/ZMod/IsSquare.lean |
2 |
21 |
['SnirBroshi', 'arsmagic', 'felixpernegger', 'github-actions', 'wwylele'] |
nobody |
6-547 6 days ago |
8-75476 8 days ago |
8-75796 8 days |
0 |
| 45393 |
JovanGerb author:JovanGerb |
chore: golf some `conv` proofs |
This PR golfs many `conv` proofs. This is in preparation for #45124 (multigoal linter in `conv`). I used `enter` for these golfs and not `arg`/`lhs`/`rhs`/`ext`, because `enter` supersedes all of these.
Some of the golfs are not required by the new linter, such as for proofs that look like
```
congr
· skip
· rw [...]
```
But this can be cleaned up nonetheless.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
|
84/147 |
Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Mathlib/Algebra/BigOperators/Module.lean,Mathlib/Algebra/Lie/IdealOperations.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/Degree.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/Analysis/Normed/Algebra/Exponential.lean,Mathlib/Analysis/Normed/Group/AddCircle.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/FourierTransform.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/ModuleEmbedding/GabrielPopescu.lean,Mathlib/CategoryTheory/Abelian/NonPreadditive.lean,Mathlib/CategoryTheory/Limits/Shapes/Kernels.lean,Mathlib/CategoryTheory/Preadditive/Biproducts.lean,Mathlib/CategoryTheory/Subobject/Comma.lean,Mathlib/Data/Nat/Digits/Lemmas.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Data/QPF/Multivariate/Constructions/Cofix.lean,Mathlib/Dynamics/Ergodic/AddCircle.lean,Mathlib/FieldTheory/Differential/Liouville.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/Geometry/Convex/ConvexSpace/AffineSpace.lean,Mathlib/GroupTheory/Perm/Sign.lean,Mathlib/LinearAlgebra/AffineSpace/Combination.lean,Mathlib/LinearAlgebra/Matrix/NonsingularInverse.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/Lebesgue.lean,Mathlib/NumberTheory/BernoulliPolynomials.lean,Mathlib/NumberTheory/Cyclotomic/PrimitiveRoots.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Basic.lean,Mathlib/NumberTheory/Padics/RingHoms.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/NumberTheory/Wilson.lean,Mathlib/NumberTheory/ZetaValues.lean,Mathlib/RepresentationTheory/Character.lean,Mathlib/RingTheory/Discriminant.lean,Mathlib/RingTheory/FractionalIdeal/Inverse.lean,Mathlib/RingTheory/Polynomial/Eisenstein/Basic.lean,Mathlib/RingTheory/Polynomial/Eisenstein/IsIntegral.lean,Mathlib/RingTheory/Polynomial/Vieta.lean,Mathlib/RingTheory/Trace/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/Ring.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean,Mathlib/Topology/ContinuousMap/StoneWeierstrass.lean |
43 |
3 |
['github-actions', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
5-81705 5 days ago |
5-81776 5 days ago |
11-36878 11 days |
1 |
| 44554 |
JovanGerb author:JovanGerb |
chore: adaptations for stronger `simpNF` - part 1 |
In some cases the `simpNF` linter does not warn when it should warn. Fixing this in `simpNF` surfaces many violations. This PR fixes many of those violations.
- `MvPolynomial.coeff_sub`, `MvPolynomial.coeff_neg` and `MvPolynomial.coeff_smul` have been deprecated, analogously to how `MvPolynomial.coeff_add` was deprecated in #41427. To make adaptations smoother, I added a lemma `AddMonoidAlgebra.coeff_sub_apply`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
tech debt |
98/123 |
Mathlib/Algebra/Category/FGModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Semi.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/Group/Action/Equidecomp.lean,Mathlib/Algebra/Group/Action/Units.lean,Mathlib/Algebra/Lie/Cochain.lean,Mathlib/Algebra/Lie/Extension.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/Ring/Subring/Defs.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/Real/Hyperreal.lean,Mathlib/CategoryTheory/Category/Cat.lean,Mathlib/CategoryTheory/Category/Preorder.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/FunctorCategory.lean,Mathlib/CategoryTheory/Monoidal/End.lean,Mathlib/Data/Set/Basic.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/Order/Filter/FilterProduct.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Probability/Kernel/Basic.lean,Mathlib/Probability/Kernel/Integral.lean,Mathlib/RepresentationTheory/Coinvariants.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPolynomial/IrreducibleQuadratic.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean,Mathlib/RingTheory/MvPowerSeries/Equiv.lean,Mathlib/RingTheory/Spectrum/Prime/ChevalleyComplexity.lean,Mathlib/SetTheory/Ordinal/Notation.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/ContinuousMap/ContinuousMapZero.lean,Mathlib/Topology/FiberBundle/Constructions.lean,Mathlib/Topology/LocallyFinsupp.lean,Mathlib/Topology/MetricSpace/Snowflaking.lean |
36 |
14 |
['JovanGerb', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'vihdzp'] |
nobody |
5-80808 5 days ago |
5-80938 5 days ago |
32-25669 32 days |
0 |
| 45575 |
lua-vr author:lua-vr |
feat(Topology/Instances/AddCircle): `Infinite (AddCircle p)` for a densely ordered group |
---
Suggested in https://github.com/leanprover-community/mathlib4/pull/45360#discussion_r4408995830. If the scalars form an ordered group, then this version should be more general than using divisibility. CC @vihdzp
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
<!-- Message of single commit: --> |
t-topology
maintainer-merge
|
12/0 |
Mathlib/Topology/Instances/AddCircle/Defs.lean |
1 |
11 |
['felixpernegger', 'github-actions', 'lua-vr', 'vihdzp'] |
nobody |
5-79874 5 days ago |
5-80221 5 days ago |
7-3141 7 days |
2 |
| 45584 |
leomayer1 author:leomayer1 |
refactor(CategoryTheory): change `HasShift` monoid argument to `outParam` |
In current master, `HasShift` has type signature
```
CategoryTheory.HasShift.{v, u, u_2} (C : Type u) (A : Type u_2) [Category.{v, u} C] [AddMonoid A]
```
and the TriangulatedCategory library is full of expressions like `X⟦(1: ℤ)⟧`. The more natural expression `X⟦1⟧` raises an error when an instance of `HasShift C ℕ` cannot be inferred.
This PR changes the type signature of `HasShift` to
```
CategoryTheory.HasShift.{v, u, u_2} (C : Type u) (A : outParam (Type u_2)) [Category.{v, u} C] [AddMonoid A]
```
so that now from the expression `X⟦1⟧` Lean can find the instance `HasShift C ℤ` and infer that `1` should have type `ℤ`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
new-contributor
t-category-theory
|
236/230 |
Mathlib/CategoryTheory/DifferentialObject.lean,Mathlib/CategoryTheory/Localization/Triangulated.lean,Mathlib/CategoryTheory/ObjectProperty/Shift.lean,Mathlib/CategoryTheory/Shift/Basic.lean,Mathlib/CategoryTheory/Shift/CommShift.lean,Mathlib/CategoryTheory/Shift/Localization.lean,Mathlib/CategoryTheory/Shift/ShiftSequence.lean,Mathlib/CategoryTheory/Shift/ShiftedHomOpposite.lean,Mathlib/CategoryTheory/Shift/Twist.lean,Mathlib/CategoryTheory/Triangulated/Adjunction.lean,Mathlib/CategoryTheory/Triangulated/Basic.lean,Mathlib/CategoryTheory/Triangulated/Functor.lean,Mathlib/CategoryTheory/Triangulated/LocalizingSubcategory.lean,Mathlib/CategoryTheory/Triangulated/Opposite/Basic.lean,Mathlib/CategoryTheory/Triangulated/Opposite/Pretriangulated.lean,Mathlib/CategoryTheory/Triangulated/Opposite/Triangle.lean,Mathlib/CategoryTheory/Triangulated/Pretriangulated.lean,Mathlib/CategoryTheory/Triangulated/Rotate.lean,Mathlib/CategoryTheory/Triangulated/SpectralObject.lean,Mathlib/CategoryTheory/Triangulated/Subcategory.lean,Mathlib/CategoryTheory/Triangulated/TStructure/AbelianSubcategory.lean,Mathlib/CategoryTheory/Triangulated/TStructure/Basic.lean,Mathlib/CategoryTheory/Triangulated/TStructure/ETrunc.lean,Mathlib/CategoryTheory/Triangulated/TStructure/Induced.lean,Mathlib/CategoryTheory/Triangulated/TStructure/SpectralObject.lean,Mathlib/CategoryTheory/Triangulated/TStructure/TruncLEGT.lean,Mathlib/CategoryTheory/Triangulated/TStructure/TruncLTGE.lean,Mathlib/CategoryTheory/Triangulated/TriangleShift.lean,Mathlib/CategoryTheory/Triangulated/Triangulated.lean,Mathlib/CategoryTheory/Triangulated/Yoneda.lean |
30 |
8 |
['github-actions', 'joelriou', 'leanprover-radar', 'leomayer1', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
5-79247 5 days ago |
7-3453 7 days ago |
7-3380 7 days |
0 |
| 41362 |
JovanGerb author:JovanGerb |
perf(Algebra/MonoidAlgebra): `no_expose` some operations |
This PR uses `no_expose` for the `Add`, `Sub`, `Neg`, `One` and `Mul` instances of `MonoidAlgebra`. This improves performance, for `MonoidAlgebra` but also for `Polynomial`. The `Zero` instance is left exposed for now as no_exposing it would require a few more adaptations.
This PR modifies the implementation of `fast_instance%` in the same way that `inferInstanceAs` was changed recently in https://github.com/leanprover/lean4/pull/15216.
The `simpNF` linter has an exception for `rfl` lemmas (see also #44554). Some of these lints are hit by this PR because after this PR these are no longer `rfl` lemmas.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #42291
[](https://gitpod.io/from-referrer/)
|
|
87/69 |
Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/MonoidAlgebra/Division.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/Algebra/MonoidAlgebra/Ideal.lean,Mathlib/Algebra/MonoidAlgebra/MapDomain.lean,Mathlib/Algebra/MonoidAlgebra/Module.lean,Mathlib/Algebra/MonoidAlgebra/ToDirectSum.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/FinitePresentation.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/Tactic/FastInstance.lean |
17 |
23 |
['JovanGerb', 'github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
5-75240 5 days ago |
5-77269 5 days ago |
73-5678 73 days |
0 |
| 44358 |
TJHeeringa author:TJHeeringa |
chore(LinearAlgebra): generalize IsAdjointPair |
The implemented definition `IsAdjointPair` required sesquilinear maps. This is a stronger requirement than necessary. This PR relaxes the conditions on `IsAdjointPair` to the minimal ones.
---
This is needed to generalize the RKHS from `InnerProductSpace/Reproducing.lean`.
The location of the definition is still `LinearAlgebra/SesquilinearForm/Basic`. That is clearly not a good fit. However, I don't know a better location either. Places like `LinearAlgebra/BilinearForm/Basic` are also dealing with a less general construction.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
85/45 |
Mathlib/LinearAlgebra/SesquilinearForm/Basic.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
5-70363 5 days ago |
5-70418 5 days ago |
28-72211 28 days |
0 |
| 45625 |
grunweg author:grunweg |
chore(Geometry/Manifold/VectorBundle): rename iff lemmas about differentiability to mention iff |
All these lemmas characterise differentiability using a trivialization, hence could mention `iff` as part of their name.
They should, since there exist conceivable statements of the same name without the `iff`
(e.g., about some section being differentiable).
This also increases naming consistency: a number of similar lemmas in that file already use the `iff` naming.
Zulip discussion supporting this: [#mathlib4 > Naming convention @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Naming.20convention/near/636496147)
Continuation of #45588.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-differential-geometry |
34/22 |
Mathlib/Geometry/Manifold/VectorBundle/ContinuousAlternatingMap.lean,Mathlib/Geometry/Manifold/VectorBundle/Hom.lean,Mathlib/Geometry/Manifold/VectorBundle/MDifferentiable.lean,Mathlib/Geometry/Manifold/VectorBundle/Riemannian.lean |
4 |
1 |
['github-actions'] |
nobody |
5-69405 5 days ago |
5-69718 5 days ago |
5-69645 5 days |
1 |
| 38231 |
NoneMore author:NoneMore |
feat(ModelTheory/Definablity): add syntax-to-definability bridge lemmas |
Add bridge lemmas from syntax to definability and refactor downstream proofs to use them.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/) |
t-logic |
104/55 |
Mathlib/ModelTheory/Definability.lean,Mathlib/ModelTheory/ElementarySubstructures.lean |
2 |
3 |
['github-actions', 'mathlib-merge-conflicts', 'staroperator'] |
nobody |
5-69360 5 days ago |
6-30748 6 days ago |
95-71271 95 days |
0 |
| 45449 |
grunweg author:grunweg |
feat: more lemmas about differentiability of sections |
For each lemma, the analogous lemma about `C^n` sections already exists.
And make two arguments to `mdifferentiableWithinAt_totalSpace` implicit.
From the project on the fundamental of Riemannian geometry: Ehresmann connections, curvature and geodesics.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-differential-geometry |
71/15 |
Mathlib/Geometry/Manifold/VectorBundle/ContinuousAlternatingMap.lean,Mathlib/Geometry/Manifold/VectorBundle/Hom.lean,Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean,Mathlib/Geometry/Manifold/VectorBundle/MDifferentiable.lean |
4 |
2 |
['github-actions', 'grunweg'] |
nobody |
5-68024 5 days ago |
5-68191 5 days ago |
8-21755 8 days |
1 |
| 45629 |
MichaelStollBayreuth author:MichaelStollBayreuth |
chore(Analysis/Fourier/AddCircle): move the Fourier series API into the `AddCircle` namespace |
The declarations about the monomials `fourier n`, Fourier coefficients and the Fourier basis of `AddCircle T` lived in the root namespace (this dates back to when this was the only Fourier theory in Mathlib). By now, some of the names clash with declarations in various namespaces, e.g., `fourier_zero`, `fourier_neg` and `fourier_add` clash with `FourierTransform.fourier_zero` etc., and `fourier` with the class field `FourierTransform.fourier.
This PR moves all 61 of these declarations into the namespace `AddCircle`. A few are renamed on the way for consistency:
* `fourierCoeff.add`, `.sum`, `.const_smul`, `.const_mul` → `fourierCoeff_add` etc.;
* `fourierCoeffOn.const_smul`, `.const_mul` → `fourierCoeffOn_const_smul`, `fourierCoeffOn_const_mul`;
* `has_pointwise_sum_fourier_series_of_summable` → `hasSum_fourier_series_apply_of_summable` (cf. `UnitAddTorus.hasSum_mFourier_series_apply_of_summable`);
* `has_antideriv_at_fourier_neg` → `hasDerivAt_div_mul_fourier_neg`.
The old names are deprecated aliases. This also adds `AddCircle.fourier_sub` for completeness, and updates the uses in Mathlib and the references in `docs/*.yaml`. Note that the clashes will persist until the deprecated names are removed; in particular, occurrences at many use sites need to be qualified now until the removal has happened. Unfortunately, this makes for a fairly large diff.
See [#mathlib4 > AddCircle Fourier declarations in the root namespace @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/AddCircle.20Fourier.20declarations.20in.20the.20root.20namespace/near/637205314).
:robot: Claude Code (Opus 5.5) was used to set up this PR.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis
LLM-generated
|
242/123 |
Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/Analysis/Fourier/AddCircleMulti.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/Fourier/PoissonSummation.lean,Mathlib/Analysis/Polynomial/Fourier.lean,Mathlib/NumberTheory/ModularForms/Bounds.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean,Mathlib/NumberTheory/ZetaValues.lean,docs/100.yaml,docs/1000.yaml,docs/overview.yaml,docs/undergrad.yaml |
12 |
2 |
['MichaelStollBayreuth', 'github-actions'] |
nobody |
5-65620 5 days ago |
5-68019 5 days ago |
5-67946 5 days |
0 |
| 45579 |
lua-vr author:lua-vr |
feat(Topology/Instances/AddCircle): induced map between `AddCircle`s |
---
Suggested in #45360
AI-assisted (but reviewed).
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #45580
<!-- Message of single commit: --> |
LLM-generated |
35/0 |
Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/Topology/Instances/AddCircle/Defs.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
5-63709 5 days ago |
5-63712 5 days ago |
5-63639 5 days |
2 |
| 44895 |
JovanGerb author:JovanGerb |
fix(ClickSuggestions): improve and test `isExplicitEq` |
This PR improves and tests the `isExplicitEq` function that `#click_suggestions` uses to deduplicate its suggestions.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-meta |
65/21 |
Mathlib/Tactic/ClickSuggestions/Util.lean,MathlibTest/ClickSuggestions/Deduplicate.lean |
2 |
3 |
['JovanGerb', 'github-actions', 'thorimur'] |
thorimur assignee:thorimur |
5-58814 5 days ago |
5-59051 5 days ago |
16-41585 16 days |
1 |
| 43536 |
SnirBroshi author:SnirBroshi |
feat(Order): `SupClosed`/`DirSupClosed`/`DirectedOn`/etc for set intervals |
For set intervals, prove the properties they satisfy among these `Set` properties:
- `DirectedOn`
- `CountableSupClosed` / `CountableInfClosed`
- `DirSupClosed` / `DirSupClosedOn`
- `DirSupInacc` / `DirSupInaccOn`
- `SupClosed` / `InfClosed`
and use them to conclude properties of order topologies,
e.g. the Scott-Hausdorff topology on a lower-set is a `ClosedIicTopology`/`ClosedIciTopology`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology |
250/23 |
Mathlib/Order/CountableSupClosed.lean,Mathlib/Order/DirSupClosed.lean,Mathlib/Order/Interval/Set/Image.lean,Mathlib/Order/SupClosed.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/UpperLowerSetTopology.lean |
6 |
19 |
['SnirBroshi', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'vihdzp'] |
alreadydone assignee:alreadydone |
5-51172 5 days ago |
5-83243 5 days ago |
22-61231 22 days |
3 |
| 33369 |
Thmoas-Guan author:Thmoas-Guan |
feat(Homology): `Ext` commute with flat base change |
In this PR, using the linear map `Ext(M,N) => Ext(F(M), F(N))` when `F` is exact functor, we prove that `Ext` commute with flat base change if the ring is noetherian and two modules are finitely generated, stated using `IsBaseChange`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #31046
- [x] depends on: #31222
- [x] depends on: #32316
[](https://gitpod.io/from-referrer/)
|
t-topology
increases-technical-debt
|
376/0 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/BaseChange.lean |
2 |
13 |
['Multramate', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
jjdishere assignee:jjdishere |
5-50461 5 days ago |
19-36012 19 days ago |
93-57572 93 days |
6 |
| 38472 |
Raph-DG author:Raph-DG |
feat(AlgebraicGeometry): The Weil divisor associated to an element of the function field on a locally Noetherian integral scheme |
In this PR we define and provide some basic API for principal Weil divisors, i.e. the Weil divisor associated to an element of the function field of a locally noetherian, integral scheme.
- [x] depends on: #29774
- [x] depends on: #37985
- [x] depends on: #37901
- [x] depends on: #38002
- [x] depends on: #41317
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
206/18 |
Mathlib.lean,Mathlib/AlgebraicGeometry/AlgebraicCycle/Basic.lean,Mathlib/AlgebraicGeometry/AlgebraicCycle/Principal.lean,Mathlib/AlgebraicGeometry/Noetherian.lean,Mathlib/AlgebraicGeometry/OrderOfVanishing/Basic.lean,Mathlib/Topology/LocallyFinsupp.lean |
6 |
20 |
['Brian-Nugent', 'Raph-DG', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
joelriou assignee:joelriou |
5-46540 5 days ago |
5-46182 5 days ago |
62-77607 62 days |
1 |
| 45195 |
gasparattila author:gasparattila |
feat(Order): `DecidableLE` from `DecidableEq` in a semilattice |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
11/0 |
Mathlib/Order/Lattice.lean |
1 |
1 |
['github-actions', 'vihdzp'] |
nobody |
5-43684 5 days ago |
17-54496 17 days ago |
17-54423 17 days |
0 |
| 45607 |
JovanGerb author:JovanGerb |
chore(CategoryTheory/Limits/Shapes/Kernels): use `to_dual` |
This PR uses `to_dual` to generate `cokernel` from `kernel`, as well as the prerequisite material on preserving terminal objects and zero objects.
For now I've removed `colimit_ι_zero_cokernel_desc`, as its dual doesn't exist and it is not used. It was added in the port in #3638 with a porting note.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
tech debt |
195/678 |
Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/CategoryTheory/Abelian/CommSq.lean,Mathlib/CategoryTheory/Abelian/SerreClass/MorphismProperty.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Kernels.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Terminal.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Zero.lean,Mathlib/CategoryTheory/Limits/Shapes/Kernels.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/IsPullback/Kernels.lean |
8 |
2 |
['github-actions', 'jcommelin'] |
nobody |
5-25009 5 days ago |
5-78675 5 days ago |
5-80816 5 days |
0 |
| 45229 |
grunweg author:grunweg |
feat: lint badly named coercion lemmas |
If a lemma/theorem name contains the string `coe`, but references no constant with that name,
it is almost certainly a misnamed coercion lemma. Add an environment linter for this.
Note that coercion lemmas should be named according to the coercion they involve.
---
Many names in mathlib are still wrong: this will need an exceptions update first, and then can be reduced slowly over time.
Inspired by #44825.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-linter |
94/4 |
Mathlib/Tactic/Linter/Style.lean,MathlibTest/Linter/Style.lean |
2 |
17 |
['JovanGerb', 'SnirBroshi', 'github-actions', 'grunweg'] |
nobody |
5-11854 5 days ago |
5-7148 5 days ago |
16-43873 16 days |
0 |
| 43394 |
harahu author:harahu |
feat(Order/WithBot): add `WithBot.map_lt_map_iff` |
Add `WithBot.map_lt_map_iff`, the `<` analogue of `WithBot.map_le_iff`, for use in a follow-up.
Also rename `map_le_iff` to `map_le_map_iff` (with a deprecated alias), since the operation appears on both sides of the relation. The bare `X_le_iff` form is used throughout Mathlib for the one-sided shape `f a ≤ b ↔ ...`.
---
Developed with help from Claude Opus 5.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order
LLM-generated
|
10/3 |
Mathlib/Order/Hom/WithTopBot.lean,Mathlib/Order/WithBot.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
5-10711 5 days ago |
5-10893 5 days ago |
60-26837 60 days |
0 |
| 42578 |
harahu author:harahu |
chore: avoid lazy continuation lines in markdown |
This PR fixes Markdown lazy continuation lines in documentation. The bulk of the changes are:
1. Continuation lines of a list item are indented to the item's content column instead of sitting flush with the marker.
2. A blank line is inserted where a paragraph following a list was being absorbed into the final list item.
This is done because lazy continuation can make it hard to understand the intent of the text when reading the raw source. It is also a source of flawed rendering, as in case 2 above.
One other minor change is also included:
- RingTheory/FormalGroup/Basic.lean: the qualifier "when F is a commutative formal group law" moves from AddMonoid to AddCommMonoid, which is where it belongs: instance : AddMonoid (F.Point σ) is unconditional, instance [F.IsComm] : AddCommMonoid (F.Point σ) is not.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
136/121 |
Mathlib/Algebra/Category/ModuleCat/Presheaf/ColimitFunctor.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Homology/SpectralSequence/ComplexShape.lean,Mathlib/Algebra/Lie/LieTheorem.lean,Mathlib/Algebra/Lie/Prod.lean,Mathlib/Algebra/LieRinehartAlgebra/Subalgebra.lean,Mathlib/Algebra/Notation/Bracket.lean,Mathlib/AlgebraicGeometry/EllipticCurve/LFunction.lean,Mathlib/AlgebraicGeometry/Gluing.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicTopology/Reedy/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/PushoutProduct.lean,Mathlib/AlgebraicTopology/SimplicialSet/Subdivision.lean,Mathlib/AlgebraicTopology/SimplicialSet/TopAdj.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Normed/Field/Approximation.lean,Mathlib/Analysis/Normed/Field/Dense.lean,Mathlib/Analysis/Normed/Field/Krasner.lean,Mathlib/Analysis/Normed/Module/Bases.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Extremal.lean,Mathlib/CategoryTheory/Abelian/Preradical/Colon.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/ChosenPullback.lean,Mathlib/CategoryTheory/Sites/Point/OfIsCofiltered.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Finite.lean,Mathlib/Dynamics/SymbolicDynamics/Basic.lean,Mathlib/GroupTheory/FinitelyPresentedGroup.lean,Mathlib/GroupTheory/Generators.lean,Mathlib/GroupTheory/GroupAction/Blocks.lean,Mathlib/GroupTheory/Perm/Fin.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Basic.lean,Mathlib/LinearAlgebra/InvariantBasisNumber.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/LinearAlgebra/Matrix/Rank.lean,Mathlib/LinearAlgebra/SymplecticGroup.lean,Mathlib/Logic/Equiv/Array.lean,Mathlib/Logic/Equiv/Fin/Rotate.lean,Mathlib/NumberTheory/WellApproximable.lean,Mathlib/Probability/Process/Adapted.lean,Mathlib/RingTheory/FormalGroup/Basic.lean,Mathlib/Tactic/Algebra/Basic.lean,Mathlib/Tactic/Polynomial/Basic.lean,Mathlib/Topology/Category/LightProfinite/Injective.lean,Mathlib/Topology/Gluing.lean,Mathlib/Topology/MetricSpace/PiNat.lean,Mathlib/Topology/Sheaves/Presheaf.lean,Mathlib/Topology/Sion.lean |
47 |
4 |
['SnirBroshi', 'github-actions', 'harahu', 'mathlib-merge-conflicts'] |
nobody |
5-8968 5 days ago |
5-9027 5 days ago |
40-44827 40 days |
0 |
| 45593 |
TJHeeringa author:TJHeeringa |
feat(Analysis/InnerProductSpace/Positive): add norm_map_le_iff_adjoint_comp_self(_le_id) |
This PR add the theorem `norm_map_le_iff_adjoint_comp_self`, which states that `‖p x‖ ≤ ‖q x‖` holds if and only if `adjoint p ∘L p ≤ adjoint q ∘L q` is true, and the corollary of this for `q = .id 𝕜 E` named `norm_map_le_iff_adjoint_comp_self_le_id`.
---
This is the contraction version of `norm_map_iff_adjoint_comp_self`.
This should probably go into dedicated to contractive maps, but that doesn't exist yet. Future PR?
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis
maintainer-merge
|
13/0 |
Mathlib/Analysis/InnerProductSpace/Positive.lean |
1 |
16 |
['TJHeeringa', 'github-actions', 'themathqueen'] |
nobody |
5-8170 5 days ago |
5-63722 5 days ago |
5-69092 5 days |
0 |
| 26462 |
PSchwahn author:PSchwahn |
feat(LinearAlgebra/Projection): add results about inverse of `Submodule.prodEquivOfIsCompl` |
Add two theorems `Submodule.prodEquivOfIsCompl_symm_apply` and `Submodule.prodEquivOfIsCompl_symm_add`, which are API for `Submodule.prodEquivOfIsCompl`.
We believe these theorems are useful; for example, we have used their statements in a [classification formalization project](https://github.com/LieLean/LowDimSolvClassification).
Co-authored by:
- [Viviana del Barco](https://github.com/vdelbarc)
- [Gustavo Infanti](https://github.com/GuQOliveira)
- [Exequiel Rivas](https://github.com/erivas)
---
I am not sure whether the `prodEquivOfIsCompl_symm_apply` theorem should be tagged with `@[simp]`; this might lead to confluence issues. Opinions are welcome!
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
To indicate co-authors, include lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
10/0 |
Mathlib/LinearAlgebra/Projection.lean |
1 |
8 |
['PSchwahn', 'github-actions', 'joelriou', 'kckennylau'] |
joelriou assignee:joelriou |
5-3330 5 days ago |
7-13806 7 days ago |
80-51952 80 days |
0 |
| 44287 |
artie2000 author:artie2000 |
feat: root existence for odd-degree polynomials |
* Prove that every odd-degree polynomial has a monic irreducible odd-degree factor
* Prove that, if there are no nonlinear irreducible odd-degree polynomials over a particular field, then every odd-degree polynomial has a root
* Move `Polynomial.exists_monic_irreducible_factor` earlier (it doesn't need Gauss' lemma)
* Register the dichotomy between `Odd` and `Even` with `push`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #45503 |
t-algebra
t-ring-theory
label:t-algebra$ |
57/27 |
Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Ring/Int/Parity.lean,Mathlib/Algebra/Ring/Parity.lean,Mathlib/RingTheory/Polynomial/UniqueFactorization.lean |
4 |
25 |
['artie2000', 'github-actions', 'mathlib-dependent-issues', 'tb65536', 'vihdzp'] |
nobody |
5-266 5 days ago |
5-373 5 days ago |
33-51277 33 days |
1 |
| 43205 |
wwylele author:wwylele |
feat(FieldTheory): extension is separable if its degree is less than the positive char |
This is a series of lemma analog to the existing CharZero lemma
- `Polynomial.mem_support_derivative` -> `Polynomial.mem_support_derivative_of_isSMulRegular` (I used SMulRegular as this seems to be the right spelling for Semiring)
- `Polynomial.degree_derivative` -> `Polynomial.degree_derivative_of_isSMulRegular`
- `Polynomial.natDegree_derivative` -> `Polynomial.natDegree_derivative_of_isSMulRegular`
- `Irreducible.separable` -> `Irreducible.separable_of_natCast_natDegree_ne_zero`
- `IsSeparable.of_integral` -> `IsSeparable.of_integral_of_natCast_natDegree_ne_zero`
- `Algebra.IsSeparable.of_integral` -> `Algebra.IsSeparable.of_integral_of_finrank_lt` & `Algebra.IsSeparable.of_integral_of_rank_lt`
---
From https://github.com/wwylele/Compass
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
87/24 |
Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/FieldTheory/Separable.lean,Mathlib/LinearAlgebra/Dimension/Finite.lean |
3 |
19 |
['artie2000', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib-merge-conflicts', 'wwylele'] |
nobody |
4-85075 4 days ago |
4-85137 4 days ago |
71-42445 71 days |
0 |
| 44690 |
vihdzp author:vihdzp |
feat: prime subfield as a finset |
We introduce `Subfield.botFinset F p`, which is the `Finset F` containing the prime subfield of the characteristic `p` field `F`. We use this to generalize various results that were previously stated only for `⊥ : Subfield F`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
61/20 |
Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/FieldTheory/Finite/GaloisField.lean |
3 |
37 |
['artie2000', 'faenuccio', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'tb65536', 'vihdzp', 'wwylele'] |
faenuccio assignee:faenuccio |
4-84918 4 days ago |
7-63976 7 days ago |
20-4099 20 days |
3 |
| 43637 |
gasparattila author:gasparattila |
feat(Topology/Sets): `ClosedIciTopology` and `OrderClosedTopology` instances for `Compacts` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology
maintainer-merge
|
59/0 |
Mathlib/Topology/Sets/VietorisTopology.lean |
1 |
11 |
['gasparattila', 'github-actions', 'themathqueen'] |
alreadydone assignee:alreadydone |
4-75876 4 days ago |
11-59720 11 days ago |
60-77703 60 days |
0 |
| 38009 |
CBirkbeck author:CBirkbeck |
feat(RingTheory/Valuation): define the valuation spectrum and its topology |
Define the valuation spectrum `Spv A` of a commutative ring and equip it with the topology generated by basic open sets, following Wedhorn's *Adic Spaces*. Also define the pullback (`comap`) of a `ValuativeRel` along a ring homomorphism. This is preparation for later defining adic spaces.
Note the code was generated by claude code, but I have cleaned up and pre-reviewed the work.
---
**Refreshed 3 Sep 2026:** merged current master; `ValuativeRel.comap` and `not_vle_zero_of_isUnit` generalised to semirings (the class is stated for semirings); names aligned with `PrimeSpectrum` (`continuous_comap`, `isEmbedding_comap_quotientMk`, `range_comap_quotientMk`, `localization_comap_range`); `mem_basicOpen_iff`/`isOpen_basicOpen` added and `@[simp]` on the round-trip lemmas. Ported and exercised in TauCeti (`TauCeti/AlgebraicGeometry/AdicSpace/ValuationSpectrum.lean`), which builds Wedhorn §7 on top of this API.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
https://claude.ai/code/session_01A6f2mYh682Cc9g7DbpQZ2k
|
t-ring-theory
LLM-generated
|
421/0 |
Mathlib.lean,Mathlib/RingTheory/Valuation/ValuationSpectrum.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Comap.lean |
3 |
80 |
['CBirkbeck', 'adamtopaz', 'chrisflav', 'dagurtomas', 'faenuccio', 'github-actions', 'jcommelin', 'jjdishere', 'riccardobrasca', 'sfingali', 'tb65536'] |
nobody |
4-75497 4 days ago |
4-76028 4 days ago |
171-54100 171 days |
0 |
| 45513 |
PSchwahn author:PSchwahn |
feat(Data/Fin/Tuple): add Fin.cons_cons_swap |
`Fin.cons_cons_swap` shows that composing `cons x (cons y q)` with the transposition swapping 0 and 1 yields `cons y (cons x q)`.
--- |
t-data
new-contributor
|
13/0 |
Mathlib/Data/Fin/Tuple/Basic.lean |
1 |
4 |
['PSchwahn', 'github-actions', 'themathqueen'] |
nobody |
4-74255 4 days ago |
4-74366 4 days ago |
9-61780 9 days |
0 |
| 44593 |
CBirkbeck author:CBirkbeck |
chore(Data/Vector/Zip): deprecate `List.Vector.zipWith` in favour of `List.Vector.map₂` |
Deprecate `List.Vector.zipWith`, a second definition of `List.Vector.map₂`, together with its lemmas, which are restated for `map₂`.
---
<!--redteam:v1 {"owner":"AI-DOOM-97fce5ac-e255-4515-b311-12ecf245ce72","findings":["RT-20261007-187ea0"],"patterns":["second-construction"],"severity":"MAJOR"}-->
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-data
LLM-generated
tech debt
|
25/46 |
Mathlib/Data/Vector/Basic.lean,Mathlib/Data/Vector/Zip.lean |
2 |
2 |
['CBirkbeck', 'github-actions', 'tb65536'] |
nobody |
4-73803 4 days ago |
4-73864 4 days ago |
9-82186 9 days |
0 |
| 45668 |
sun123zxy author:sun123zxy |
feat(Algebra/Module/Projective): projectivity is transitive along scalar towers |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Split from #44636 |
t-algebra
new-contributor
label:t-algebra$ |
15/0 |
Mathlib/Algebra/Module/Projective.lean |
1 |
2 |
['github-actions'] |
nobody |
4-73518 4 days ago |
4-73589 4 days ago |
4-75795 4 days |
1 |
| 41111 |
erdkocak author:erdkocak |
feat(ModelTheory): add cardinal-generated substructure API |
This is the first PR in a sequence splitting #40561.
It adds a `CardinalLTGenerated` predicate for substructures, basic closure and map lemmas, and the finitely generated specialization.
Co-authored-by: Yağız Kaan Aydoğdu <y.kaan.aydogdu@gmail.com>
Co-authored-by: Yusuf Demir <yusufdemir12610@gmail.com>
Advised-by: Ayhan Günaydın <ayhan.gunaydin@bogazici.edu.tr>
Advised-by: Metin Ersin Arıcan <metin.arican@bogazici.edu.tr>
Please note that we utilized agentic AI tools (Claude Opus, ChatGPT Codex) during the development of this PR. Most of the proofs of the major theorems are direct translations from human-language source material (see the diff in `references.bib`) into Lean proofs using the mentioned AI tools. However, all design and formalization decisions were made by us. |
t-logic
new-contributor
LLM-generated
|
38/0 |
Mathlib/ModelTheory/FinitelyGenerated.lean,Mathlib/ModelTheory/Substructures.lean |
2 |
23 |
['NoahW314', 'erdkocak', 'felixpernegger', 'github-actions', 'iosephusferrum', 'mathlib-merge-conflicts', 'staroperator'] |
nobody |
4-70079 4 days ago |
5-29030 5 days ago |
108-33736 108 days |
5 |
| 45660 |
felixpernegger author:felixpernegger |
feat(Data/Set/Card): remove redundant hypothesis |
This mostly works using the junk value `s.ncard = 0` for infinite `s`.
I also added a lemma i found useful (characterisation of `s.ncard = 0`, but didnt end up needing).
Since those changes would have brought the file over 1500, two old proofs were golfed to get under the limit.
These were found by Opus 5.5 but code is by me
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-data |
50/46 |
Mathlib/Data/Set/Card.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfFixingSubgroup.lean |
2 |
6 |
['felixpernegger', 'github-actions', 'themathqueen', 'vihdzp'] |
nobody |
4-68762 4 days ago |
4-73581 4 days ago |
5-5502 5 days |
0 |
| 42808 |
rshlyakh author:rshlyakh |
feat(Algebra/MonoidAlgebra/Grading): add decomposition lemma |
Adds a `simp` lemma about the decomposition of the `AddMonoidAlgebra R M` grading.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
8/0 |
Mathlib/Algebra/MonoidAlgebra/Grading.lean |
1 |
8 |
['github-actions', 'rshlyakh', 'themathqueen', 'wwylele'] |
nobody |
4-67536 4 days ago |
4-67536 4 days ago |
48-44266 48 days |
0 |
| 44614 |
MichaelStollBayreuth author:MichaelStollBayreuth |
feat(GroupTheory/QuotientGroup/UnitsModPow): add Units.ModPow and API |
This is a first step toward extending Mathlib's coverage of Selmer groups of rings of S-integers in étale algebras over number fields, ultimately aiming at the Mordell-Weil Theorem for elliptic curves.
We add `Units.ModPow`, an `abbrev` for the quotient of the unit group of a commutative monoid by the subgroup consisting of `n`th powers, together with some basic API, in a new module (and some helper lemmas in other modules, including a few missing `to_additive` attributes).
This is upstreamed from [EllipticCurves](https://github.com/MichaelStollBayreuth/EllipticCurves). The code was originally written by Claude and then reviewed by me.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
LLM-generated
t-ring-theory
label:t-algebra$ |
180/3 |
Mathlib.lean,Mathlib/Algebra/Group/Commute/Units.lean,Mathlib/Algebra/Group/Units/Equiv.lean,Mathlib/GroupTheory/QuotientGroup/UnitsModPow.lean,Mathlib/RingTheory/DedekindDomain/SelmerGroup.lean |
5 |
49 |
['MichaelStollBayreuth', 'github-actions', 'mathlib-merge-conflicts', 'tb65536'] |
nobody |
4-67035 4 days ago |
4-67089 4 days ago |
24-39218 24 days |
0 |
| 42844 |
plp127 author:plp127 |
refactor(Logic/Hydra): cleanup file |
Change the definition of `CutExpand` to be more correct. Rename some theorems and add some theorems.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic |
104/55 |
Mathlib/Logic/Hydra.lean |
1 |
8 |
['github-actions', 'mathlib-merge-conflicts', 'plp127', 'vihdzp'] |
nobody |
4-60557 4 days ago |
4-60613 4 days ago |
80-55418 80 days |
0 |
| 45658 |
harahu author:harahu |
feat(Logic/Relation): add `Equivalence.eqvGen_le` and `EqvGen.lift` |
Add `Equivalence.eqvGen_le`. This is the `Equivalence` counterpart of `EqvGen.eqvGen_le`.
Add `EqvGen.lift`, mirroring `TransGen.lift` and `ReflTransGen.lift`.
Deprecate `EqvGen.eqvGen_mono`, which duplicates `EqvGen.mono`.
Use the new lemmas to golf 11 proofs.
---
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
LLM-generated |
45/93 |
Mathlib/Algebra/RingQuot.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/IsConnected.lean,Mathlib/CategoryTheory/Limits/Types/Coequalizers.lean,Mathlib/CategoryTheory/Limits/Types/Filtered.lean,Mathlib/CategoryTheory/MorphismProperty/Quotient.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/Order/Setoid/Basic.lean,Mathlib/Topology/Compactification/StoneCech.lean,Mathlib/Topology/Gluing.lean |
11 |
1 |
['github-actions'] |
nobody |
4-58162 4 days ago |
4-58258 4 days ago |
4-60356 4 days |
0 |
| 45537 |
wwylele author:wwylele |
feat(RingTheory/Valuation): more lemmas for ValuativeRel |
- lemma about additive negation
- more lemma about vle and veq
- `ValuativeRel.vle_one_or_inv_vlt_one` is the counterpart of `Valuation.val_le_one_or_val_inv_lt_one`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-ring-theory |
80/0 |
Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean |
1 |
11 |
['github-actions', 'plp127', 'vihdzp', 'wwylele'] |
nobody |
4-54716 4 days ago |
4-72770 4 days ago |
8-85690 8 days |
2 |
| 45677 |
fbarroero author:fbarroero |
feat(RingTheory/ClassGroup): when the class group is torsion ideals have some power that is principal |
Add `ClassGroup.exists_pow_eq_span_singleton`: if the class group of a Dedekind domain `R` is torsion, then every ideal `I` of `R` has a nonzero power `I ^ n` that is principal.
Use it to shorten the proof of `IsDedekindDomain.exists_mul_algebraMap_eq_algebraMap` in `Mathlib/RingTheory/DedekindDomain/SInteger.lean`.
---
Follow-up to #40848, as suggested by @xroblot in review.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-ring-theory |
18/9 |
Mathlib/RingTheory/ClassGroup/Basic.lean,Mathlib/RingTheory/DedekindDomain/SInteger.lean |
2 |
1 |
['github-actions'] |
nobody |
4-53491 4 days ago |
4-53541 4 days ago |
4-53468 4 days |
0 |
| 45679 |
felixpernegger author:felixpernegger |
chore(AlgebraicGeometry): remove unused hypothesis |
Removes unused hypothesis from #45673 in AlgebraicGeometry. |
t-algebraic-geometry
LLM-generated
|
6/2 |
Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Formula.lean |
1 |
1 |
['github-actions'] |
nobody |
4-50660 4 days ago |
4-50707 4 days ago |
4-50684 4 days |
1 |
| 40050 |
ReemMelamed author:ReemMelamed |
feat(Algebra/Group/GreensRelations): add definitions for Green's relations |
This PR introduces the foundational definitions for Green's relations (L, R, H, D, and J) on semigroups.
This is the first in a series of PRs aimed at formalizing Green's relations for semigroups.
[Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Formalization.20of.20Green.27s.20Relations.20for.20semigroups/with/598557876)
---
- [x] depends on: #40843
|
t-algebra
new-contributor
label:t-algebra$ |
505/0 |
Mathlib.lean,Mathlib/Algebra/Group/GreensRelations/Basic.lean |
2 |
33 |
['ReemMelamed', 'YaelDillies', 'YanYablonovskiy', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues'] |
mattrobball assignee:mattrobball |
4-50462 4 days ago |
59-13769 59 days ago |
78-75024 78 days |
1 |
| 42226 |
espottesmith author:espottesmith |
feat(Combinatorics/Hypergraph): add restriction `x ≠ y` to hypergraph vertex and edge adjacency |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
This introduces a small change to the definitions of adjacency and edge-adjacency for undirected hypergraphs, based on a conversation with @Jun2M and @b-mehta in [#28613](https://github.com/leanprover-community/mathlib4/pull/28613).
Previously, any two vertices (edges) `x` and `y` could be adjacent, provided that there was an edge in the edge set containing both of them (there was a vertex contained in both of them). Now, we add the restriction that `x` is not equal to `y`.
This should allow `SimpleGraph` to be a clean specialization of `Hypergraph` and to ease the eventual implementation of walks.
This PR has no dependencies, but see also [42164](https://github.com/leanprover-community/mathlib4/pull/42162), @Jun2M's implementation of `HyperGraphLike` and formalization that `Hypergraph`s are `HyperGraphLike`, which includes this restriction on `Adj`.
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
4/4 |
Mathlib/Combinatorics/Hypergraph/Basic.lean |
1 |
3 |
['github-actions'] |
b-mehta assignee:b-mehta |
4-50460 4 days ago |
103-22771 103 days ago |
103-22698 103 days |
0 |
| 42820 |
tolgadgrmnc27 author:tolgadgrmnc27 |
feat(Data/Nat/Choose): elementary Chernoff bound for tail sums of binomial coefficients |
Adds an elementary, purely combinatorial Chernoff-type bound on tail sums of
binomial coefficients:
```lean
theorem Nat.sum_Ico_choose_le_div (n m : ℕ) {x : α} (hx : 1 ≤ x) :
∑ j ∈ Ico m (n + 1), (n.choose j : α) ≤ (1 + x) ^ n / x ^ m
```
together with the specialization at `x = 2`:
```lean
theorem Nat.sum_Ico_choose_le_three_pow_div (n m : ℕ) :
∑ j ∈ Ico m (n + 1), (n.choose j : α) ≤ 3 ^ n / 2 ^ m
```
The proof is the classical exponential moment trick done combinatorially: for
`m ≤ j` and `1 ≤ x` we have `x ^ m ≤ x ^ j`, so the tail sum is bounded by
`x ^ (-m) * ∑ j, n.choose j * x ^ j = x ^ (-m) * (1 + x) ^ n` by the binomial
theorem. A helper `Nat.sum_range_choose_mul_pow` states the binomial theorem in
the convenient form `∑ j ≤ n, n.choose j * x ^ j = (1 + x) ^ n`.
### Why this is not already in Mathlib
* `Nat.sum_range_choose` gives the *total* sum `∑ j ≤ n, n.choose j = 2 ^ n`.
* `Mathlib/Data/Nat/Choose/Bounds.lean` bounds a *single* coefficient
(`choose_le_pow`, `choose_le_two_pow`, `choose_le_pow_div`, …).
* `Mathlib/Probability/Moments/SubGaussian.lean` has Chernoff/Hoeffding, but
measure-theoretically: using it for a counting argument requires setting up a
probability space with independent Bernoulli variables and translating back
to cardinalities.
I could not find a statement bounding a *partial* sum of binomial
coefficients. The version here needs no probability space and applies directly
to counting arguments (its original use was bounding the number of `n < 2 ^ k`
whose first `k` binary digits contain at least `m` ones).
### Notes
* Stated over a general `[Semifield α] [LinearOrder α] [IsStrictOrderedRing α]`,
matching the typeclass style of `Mathlib/Data/Nat/Choose/Bounds.lean`.
* `Ico m (n + 1)` rather than a `filter (m ≤ ·)` form, as is idiomatic in
Mathlib; the two are equal by `Finset.filter_le_eq_Ico`-style reasoning.
* Names are of course open to bikeshedding.
---
- [x] depends on: nothing
|
t-data
new-contributor
|
84/0 |
Mathlib.lean,Mathlib/Data/Nat/Choose/Tail.lean |
2 |
3 |
['github-actions'] |
eric-wieser assignee:eric-wieser |
4-50459 4 days ago |
85-10921 85 days ago |
85-10848 85 days |
0 |
| 39347 |
Sfgangloff author:Sfgangloff |
feat(SymbolicDynamics): refactor of Pattern and shift-invariance of shape languages for subshifts |
## Summary
This PR refactors Pattern.mulShift in Mathlib/Dynamics/SymbolicDynamics/Basic.lean and uses the cleaner definition to prove shift-invariance of the language of a subshift on a finite shape.
## Changes
Pattern.mulShift now returns a Pattern instead of a configuration (more natural).
- Old type: Pattern.mulShift : Pattern A G → G → (G → A)
- New type: Pattern.mulShift : Pattern A G → G → Pattern A G
- The result carries its support (p.support.image (v * ·)) and the
default-outside-support proof, so callers don't have to re-derive them.
The [IsLeftCancelMul G] hypothesis is moved to the lemmas that actually use it.
- The definition Pattern.mulShift itself no longer needs left-cancellation (it only
chooses a preimage noncomputably).
- The hypothesis is now stated on mulShift_config_apply_mul_left_of_mem and
mulOccursInAt_eq_cylinder directly, instead of being a section-level variable.
Renames following the type change.
- mulShift_apply_mul_left_of_mem → mulShift_config_apply_mul_left_of_mem (because we
now write (p.mulShift v).config instead of p.mulShift v).
New @[simp] and @[ext] lemmas for Pattern.
- Pattern.ext: two patterns are equal iff their supports agree and their
configurations agree on the support.
- Pattern.mulShift_support: the support of p.mulShift v is p.support.image (v * ·).
- Pattern.fromConfig_support: the support of fromConfig x U is U.
- Pattern.fromConfig_config_of_mem: on its support, fromConfig x U agrees with x.
New lemma Pattern.fromConfig_mulShift.
For a left inverse g' * g = 1, shifting the pattern fromConfig x U by g equals
fromConfig (mulShift g' x) (U.image (g * ·)).
New theorem MulSubshift.languageOn_image_mulShift.
For a subshift Y and elements g, g' with g * g' = 1 and g' * g = 1:
(fun p => p.mulShift g) '' Y.languageOn U = Y.languageOn (U.image (g * ·))
i.e. the language on the translated shape is exactly the image of the language on U
under the pattern-shift map. This gives a bijection between Y.languageOn U and
Y.languageOn (U.image (g * ·)), with inverse p ↦ p.mulShift g'. Stated for
left-cancellative monoids with an invertible element.
Updated docstrings for Pattern.mulShift and the renamed lemma to reflect the
bundled-Pattern return type and clarify which results need [IsLeftCancelMul G]. |
t-dynamics
new-contributor
|
144/47 |
Mathlib/Dynamics/SymbolicDynamics/Basic.lean |
1 |
13 |
['Sfgangloff', 'github-actions', 'mathlib-merge-conflicts', 'sgouezel'] |
nobody |
4-49556 4 days ago |
26-26644 26 days ago |
86-62907 86 days |
0 |
| 45697 |
felixpernegger author:felixpernegger |
chore(SetTheory): remove unused hypothesis |
Removes unused hypothesis from #45673 in SetTheory. |
t-set-theory
LLM-generated
|
38/20 |
Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Embedding.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/CantorNormalForm.lean,Mathlib/SetTheory/Ordinal/Exponential.lean,Mathlib/SetTheory/Ordinal/FixedPoint.lean,Mathlib/SetTheory/Ordinal/Notation.lean,Mathlib/SetTheory/Ordinal/Principal.lean |
8 |
3 |
['felixpernegger', 'github-actions', 'vihdzp'] |
nobody |
4-46051 4 days ago |
4-46157 4 days ago |
4-46510 4 days |
1 |
| 45672 |
plp127 author:plp127 |
chore(Data/Multiset/ZeroCons): rename arguments to `Multiset.rec` |
Name the motive `motive` and name the minor premises according to their contents. `cons_swap` was chosen in analogy to `Multiset.cons_swap`. Also rename arguments to `Multiset.induction`, `Multiset.induction_on`, `Multiset.induction_on'`, and `Multiset.recOn`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-data |
169/178 |
Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Defs.lean,Mathlib/Algebra/GCDMonoid/Multiset.lean,Mathlib/Algebra/Module/BigOperators.lean,Mathlib/Algebra/Order/BigOperators/Ring/Multiset.lean,Mathlib/Algebra/Order/Group/Multiset.lean,Mathlib/Algebra/Order/Ring/IsNonarchimedean.lean,Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Tropical/BigOperators.lean,Mathlib/Analysis/Normed/Group/Ultra.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Data/DFinsupp/Defs.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Multiset/AddSub.lean,Mathlib/Data/Multiset/Antidiagonal.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Count.lean,Mathlib/Data/Multiset/DershowitzManna.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Multiset/Find.lean,Mathlib/Data/Multiset/Lattice.lean,Mathlib/Data/Multiset/MapFold.lean,Mathlib/Data/Multiset/Pi.lean,Mathlib/Data/Multiset/Powerset.lean,Mathlib/Data/Multiset/Sections.lean,Mathlib/Data/Multiset/UnionInter.lean,Mathlib/Data/Multiset/ZeroCons.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/FieldTheory/AbelRuffini.lean,Mathlib/FieldTheory/Differential/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/Logic/Hydra.lean,Mathlib/NumberTheory/ArithmeticFunction/Misc.lean,Mathlib/RingTheory/DiscreteValuationRing/TFAE.lean,Mathlib/RingTheory/Ideal/Basic.lean,Mathlib/RingTheory/Polynomial/ScaleRoots.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Basic.lean,Mathlib/RingTheory/UniqueFactorizationDomain/NormalizedFactors.lean |
42 |
1 |
['github-actions'] |
nobody |
4-42380 4 days ago |
4-42493 4 days ago |
4-61015 4 days |
0 |
| 45512 |
riccardobrasca author:riccardobrasca |
feat: add various lemmas about cyclotomic extensions |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
|
189/0 |
Mathlib/NumberTheory/NumberField/Cyclotomic/Basic.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Ideal.lean,Mathlib/NumberTheory/NumberField/Norm.lean,Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/NormTrace.lean |
5 |
11 |
['github-actions', 'riccardobrasca', 'xroblot'] |
nobody |
4-26858 4 days ago |
4-26914 4 days ago |
9-75698 9 days |
0 |
| 45610 |
vdelbarc author:vdelbarc |
feat(Algebra/Algebra/Leibniz): introduce Leibniz rings and algebras |
Introduce the basic theory of right Leibniz rings and algebras.
Define `IsLeibniz` by the identity `(x * y) * z = (x * z) * y + x * (y * z)`, and establish its basic consequences.
Design choices were briefly discussed in https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Leibniz.20algebras/near/611073252
Define `IsSkew` for multiplication satisfying `x * x = 0`. Construct Lie ring and Lie algebra structures on Leibniz rings and algebras satisfying this condition. Conversely, show that every Lie ring satisfies the right Leibniz identity when its bracket is used as multiplication.
More on two-sided ideals and quotients of Leibniz algebras to come after PR#45608 is merged, from which this PR is independent now.
Co-Authors: Gustavo Infanti, Exequiel Rivas, Paul Schwahn
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
new-contributor
label:t-algebra$ |
218/0 |
Mathlib.lean,Mathlib/Algebra/Algebra/Leibniz/Basic.lean |
2 |
7 |
['Julian-Kuelshammer', 'github-actions'] |
nobody |
4-26646 4 days ago |
4-26696 4 days ago |
6-13698 6 days |
0 |
| 45249 |
YaelDillies author:YaelDillies |
feat(Order): transfer instances for complete lattices |
... while preserving the existing bounded lattice structure. For coframes, this is neatly packaged using the `Coframe.MinimalAxioms` structure and the associated constructor `Coframe.ofMinimalAxioms`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
38/0 |
Mathlib/Order/CompleteBooleanAlgebra.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean |
3 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
4-16911 4 days ago |
4-16966 4 days ago |
13-85555 13 days |
1 |
| 45253 |
YaelDillies author:YaelDillies |
chore(Order/CompleteLattice): use `@[to_dual]` more |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
63/57 |
Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/WithTop.lean,Mathlib/Order/Heyting/Basic.lean |
4 |
2 |
['github-actions', 'mathlib-merge-conflicts', 'vihdzp'] |
nobody |
4-15967 4 days ago |
4-16033 4 days ago |
13-57312 13 days |
1 |
| 45250 |
YaelDillies author:YaelDillies |
refactor(Order): generalise the `CompleteLattice` instance on `WithTop` |
We had two conflicting instances of `CompleteLattice (WithTop <| WithBot α)` from `CompleteLattice α`: one going through `ConditionallyCompleteLattice α` and adding the top and bottom elements simultaneously, and another one adding them one by one by first going through `CompleteLattice (WithBot α)`. These didn't agree because `sSup ∅` on `WithTop α` would be defined as a junk value even if `α` already happened to have a bottom element.
Changing `sSup ∅` on `WithTop α` to be a bottom element if one exists leads to a better solution: have an instance deducing `ConditionallyCompleteLattice (WithTop α)` from `ConditionallyCompleteLattice α`, and another one deducing `CompleteLattice (WithTop α)` from `ConditionallyCompleteLattice α` + `OrderBot α`, and similarly for `WithBot`.
This is strictly more general than the previous instances, and avoids the diamond.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
97/75 |
Mathlib/Basic/ENNReal/Basic.lean,Mathlib/Data/ENat/Lattice.lean,Mathlib/Dynamics/TopologicalEntropy/NetEntropy.lean,Mathlib/Order/ConditionallyCompleteLattice/WithTop.lean |
4 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
4-15933 4 days ago |
4-16257 4 days ago |
13-84608 13 days |
1 |
| 45252 |
YaelDillies author:YaelDillies |
feat(Order): `ι →₀ α` is conditionally complete when `α` is |
... and similarly for `DFinsupp`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
103/0 |
Mathlib.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Order/ConditionallyCompleteLattice/Finsupp.lean,Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean,Mathlib/Order/Preorder/Finsupp.lean |
5 |
4 |
['YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'wwylele'] |
nobody |
4-15933 4 days ago |
4-16038 4 days ago |
13-75194 13 days |
1 |
| 44799 |
ooovi author:ooovi |
feat(Geometry/Convex): segments in convex space |
Adds segments and open segments for convex spaces, and provides some basic API. Follows `Mathlib.Analysis.Convex.Segment`.
---
I want to define extreme sets in convex space using open segments. I don't need a lot of API and just ported the basics from analysis, but I'm happy to add more if anyone needs anything.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-convex-geometry
maintainer-merge
|
265/0 |
Mathlib.lean,Mathlib/Geometry/Convex/Segment.lean |
2 |
76 |
['YaelDillies', 'github-actions', 'martinwintermath', 'ooovi', 'vihdzp', 'vlad902'] |
vihdzp assignee:vihdzp |
4-12667 4 days ago |
4-12667 4 days ago |
12-16145 12 days |
1 |
| 45598 |
JunkaiWang-TheoPhy author:JunkaiWang-TheoPhy |
feat(Analysis/Fourier): translate frequency under character modulation |
## Summary
This PR adds the frequency-shift identity dual to the existing translation-to-phase identity for Fourier integrals. Modulating a function by an additive character translates its Fourier transform in frequency.
## Changes
- Add the general `VectorFourier.fourierIntegral_smul_addChar` identity.
- Add the scalar `Fourier.fourierIntegral_smul_addChar` specialization.
- Add the real inner-product-space theorem `Real.fourier_smul_fourierChar`.
- Add the corresponding inverse-transform identity `Real.fourierInv_smul_fourierChar`.
The general theorem is proved by pointwise equality of the integration kernels. It does not require integrability, continuity, Haar invariance, finite dimensionality, or a nondegenerate pairing beyond the assumptions already present in the Fourier integral definition. With the convention `𝓕 f w = ∫ e (-L v w) • f v`, the forward shift is `w - w₀`; the inverse-transform identity consequently uses `w + w₀`.
The change is confined to `Mathlib/Analysis/Fourier/FourierTransform.lean`. It adds no definitions, imports, instances, simp attributes, or dependencies.
## Validation
- `lake build Mathlib.Analysis.Fourier.FourierTransform Mathlib.Analysis.SpecialFunctions.Gaussian.FourierTransform Mathlib.Analysis.Fourier.FourierTransformDeriv` — passed (`Build completed successfully (6312 jobs)`).
- `lake exe batteries/runLinter --no-build Mathlib.Analysis.Fourier.FourierTransform` — passed.
- Standalone local examples covering zero modulation, degenerate pairings, non-Haar measures, non-integrable total-function cases, the inverse sign, and a modulated Gaussian derivation — passed with the repository Lean options.
- `#print axioms` for the four new declarations reports only `propext`, `Classical.choice`, and `Quot.sound`.
- Full `MathlibTest` and hosted CI have not been run locally; hosted CI should provide the final repository-level check.
## AI disclosure
Codex (gpt-6.1-sol) assisted with candidate discovery, Lean implementation, and local verification. I have reviewed the declarations and proofs, and I am responsible for understanding and explaining the mathematical design and sign conventions.
|
t-analysis
new-contributor
LLM-generated
|
35/2 |
Mathlib/Analysis/Fourier/FourierTransform.lean |
1 |
3 |
['JunkaiWang-TheoPhy', 'github-actions'] |
nobody |
4-9026 4 days ago |
6-68156 6 days ago |
6-68083 6 days |
0 |
| 45684 |
felixpernegger author:felixpernegger |
chore(Combinatorics): remove unused hypothesis |
Removes unused hypothesis from #45673 in Combinatorics. |
t-combinatorics
LLM-generated
|
20/18 |
Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Combinatorics/Matroid/Circuit.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean |
3 |
5 |
['felixpernegger', 'github-actions', 'vlad902'] |
nobody |
4-8390 4 days ago |
4-8446 4 days ago |
4-49573 4 days |
1 |
| 45205 |
Hagb author:Hagb |
feat(Combinatorics/Colex): lemmas about `Colex (Finset _)` |
These lemmas are used in #45206
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-combinatorics |
21/0 |
Mathlib/Combinatorics/Colex.lean |
1 |
2 |
['Hagb', 'github-actions', 'vihdzp'] |
nobody |
4-5873 4 days ago |
17-36039 17 days ago |
17-35966 17 days |
2 |
| 45701 |
JovanGerb author:JovanGerb |
perf: remove `finsetNonempty` in favour of plain `simp` |
When making #45676 I noticed that everything in the `finsetNonempty` `aesop` rule set is also a global `simp` lemma or should be one. So, this PR adds `simp` to the few missing places, and deprecates the `finsetNonempty` rule set.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
|
30/116 |
Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Finset/Scalar.lean,Mathlib/Algebra/Order/Monoid/Canonical/Basic.lean,Mathlib/CategoryTheory/MorphismProperty/OfObjectProperty.lean,Mathlib/Combinatorics/Compactness.lean,Mathlib/Computability/StateTransition.lean,Mathlib/Data/Finset/Attr.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finset/BooleanAlgebra.lean,Mathlib/Data/Finset/Empty.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Finset/Lattice/Lemmas.lean,Mathlib/Data/Finset/NAry.lean,Mathlib/Data/Finset/Option.lean,Mathlib/Data/Finset/Pi.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Finset/Prod.lean,Mathlib/Data/Finset/Range.lean,Mathlib/Data/Finset/Sigma.lean,Mathlib/Data/Finset/Sups.lean,Mathlib/Data/Finset/Sym.lean,Mathlib/Data/Fintype/Pi.lean,Mathlib/Data/Fintype/Sets.lean,Mathlib/Data/Matrix/Auto.lean,Mathlib/Order/CompleteLattice/MulticoequalizerDiagram.lean,Mathlib/Order/Filter/Pointwise.lean,Mathlib/Order/Interval/Finset/Basic.lean,Mathlib/RingTheory/Congruence/Star.lean,Mathlib/Tactic/Algebra/Lemmas.lean,Mathlib/Tactic/FinCases.lean,Mathlib/Tactic/IntervalCases.lean,Mathlib/Tactic/Matrix/Parsing.lean,Mathlib/Tactic/Simproc/Divisors.lean |
34 |
4 |
['JovanGerb', 'github-actions', 'leanprover-radar'] |
nobody |
4-2716 4 days ago |
4-34552 4 days ago |
4-36489 4 days |
0 |
| 45190 |
marcelolynch author:marcelolynch |
ci: replace the remaining Node 20 actions |
GitHub's runners force Node 20 actions onto Node 24 and warn on every run. This change replaces the two actions that target an older Node.
`gh-get-current-pr` has no Node 24 release. The local composite action `.github/actions/find-open-pr` replaces it in the post-CI job, `update_dependencies.yml`, and `remove_deprecated_decls.yml`. The bot workflows find the open PR from their branch. The post-CI job uses the PR from the event or from the pushed branch, and only when the PR head is the commit that CI built. A failed API call fails the step.
`sync-task-issues` targets Node 12. An `actions/github-script` step replaces it in `sync_closed_tasks.yaml`. The step checks the `- [ ] depends on: #N` items when #N closes, and unchecks them when #N reopens.
🤖
|
CI
maintainer-merge
|
139/39 |
.github/actions/find-open-pr/action.yml,.github/workflows/build_template.yml,.github/workflows/remove_deprecated_decls.yml,.github/workflows/sync_closed_tasks.yaml,.github/workflows/update_dependencies.yml,docs/workflows.md |
6 |
7 |
['github-actions', 'joneugster', 'marcelolynch'] |
nobody |
4-1268 4 days ago |
13-82289 13 days ago |
15-5440 15 days |
0 |
| 45670 |
user202729 author:user202729 |
chore(AlgebraicGeometry/EllipticCurve/Projective): remove `erw` in `Formula.lean` |
Reducing tech debt.
The main reason why `erw` was needed in this file instead of `rw` is the following.
- Background: Each point is represented by a function `P : Fin 3 → R`, and there's local notation `x` being `(0 : Fin 3)`, similar for `y` and `z`. So `P x` is the first coordinate of `P`. For a curve `W'` and a point `P`, `W'.dblXYZ P` is another point, its double i.e. `2 • P`.
- There are functions to compute various operations on elliptic curves, for example, `W.dblY P` computes the `Y`-coordinate of `2 • P`. Of course, this can be equivalently written as `W.dblXYZ P y`.
- The two forms `W.dblY P` and `W.dblXYZ P y` are not definitionally equal at the default transparency level. Depends on which lemma we want to apply, we need to convert the goal to use one form or the other.
---
Personally, I think it's a better idea to normalize on the `W.dblXYZ P y` form, and keep the `W.dblY P` form as strictly an implementation detail if needed. In this case, the `XYZ` suffix wouldn't be needed either, and the main definitions would be:
```
* `WeierstrassCurve.Projective.neg`: The negation `-P` of a point `P`.
* `WeierstrassCurve.Projective.dbl`: The double `2 • P` of a point `P`.
* `WeierstrassCurve.Projective.negDbl`: The negated double `-(2 • P)` of a point `P`.
```
etc. Thoughts? Note that `W.dbl P y` is only 1 character longer than `W.dblY P`.
Most lemmas that we want to apply are already stated in term of the point (except that many use `W.negY P` instead of `W.neg P y`, though currently `W.neg` doesn't exist).
Also, there are (very) long `rw` chains. ([#mathlib4 > Is long `rw` chain bad?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Is.20long.20.60rw.60.20chain.20bad.3F/with/637217759)) Ideas?
Another idea: have a `array_index` tactic that evaluates `![a, b, c, d] 2` to `c` when the index is a known constant, for example. Currently there is `simp only [fin3_def_ext]` which obviously only works on length-3 arrays.
|
new-contributor
t-algebraic-geometry
tech debt
|
59/24 |
Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Formula.lean |
1 |
2 |
['github-actions'] |
nobody |
4-765 4 days ago |
4-77367 4 days ago |
4-77294 4 days |
0 |
| 45678 |
felixpernegger author:felixpernegger |
chore(Algebra): remove unused hypothesis |
Removes unused hypothesis from #45673 in Algebra. |
t-algebra
LLM-generated
label:t-algebra$ |
107/92 |
Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/Algebra/EuclideanDomain/Basic.lean,Mathlib/Algebra/Homology/SpectralObject/Differentials.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/NoZeroDivisors.lean,Mathlib/Algebra/MvPolynomial/SchwartzZippel.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/Derivation.lean,Mathlib/Algebra/Polynomial/Reverse.lean,Mathlib/Data/ZMod/ValMinAbs.lean,Mathlib/MeasureTheory/Covering/DensityTheorem.lean,Mathlib/RingTheory/EuclideanDomain.lean,Mathlib/RingTheory/PowerSeries/Derivative.lean |
21 |
4 |
['Deicyde', 'github-actions', 'themathqueen'] |
nobody |
3-82725 3 days ago |
4-43598 4 days ago |
4-45151 4 days |
1 |
| 45566 |
PeaBrane author:PeaBrane |
feat(Analysis/Convex): limits and sums of convex functions |
Add pointwise-limit and summation lemmas for convex and concave functions.
* `convexOn_of_frequently_convexOn_of_tendsto`, `concaveOn_of_frequently_concaveOn_of_tendsto`:
if `F i` is frequently convex (concave) on `s` along a filter and `F i x → f x` for every
`x ∈ s`, then `f` is convex (concave) on `s`.
* `convexOn_finsetSum`, `concaveOn_finsetSum`: a finite sum of convex (concave) functions is convex
(concave).
* `convexOn_tsum`, `concaveOn_tsum`: a pointwise summable series of convex (concave) functions is
convex (concave).
These complement `isClosed_setOfPred_convexOn` from #37352. Closedness of the set of convex
functions covers limits in the product topology, which needs convergence at every point of the
domain. The new limit lemmas need convergence only on `s`, and only frequently along the filter,
following `monotoneOn_of_frequently_monotoneOn_of_tendsto`. Finite sums and series of convex
functions were not stated before; only `ConvexOn.add` existed. I needed the series version to show
that a periodic kernel defined by an image sum is convex.
`FunctionTopology.lean` now imports `Mathlib.Topology.Algebra.InfiniteSum.Defs` for `tsum`.
AI disclosure: the statements, the proofs, and a draft of this description were written with
Claude Code. I checked them against existing Mathlib conventions and built the changed files
locally.
---
|
t-analysis
LLM-generated
new-contributor
|
69/1 |
Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Convex/FunctionTopology.lean |
2 |
6 |
['PeaBrane', 'github-actions', 'wwylele'] |
nobody |
3-81411 3 days ago |
4-69785 4 days ago |
7-65037 7 days |
0 |
| 45631 |
Nicola9Falciola author:Nicola9Falciola |
feat(LinearAlgebra/Matrix/UpdateSubmatrix): add a way to update a submatrix along embeddings and relative api |
---
This PR adds a new definition `updateSubmatrix` which allow to extend a general matrix `A : Matrix n m α` whenever we have two embeddings `eₙ : n ↪ o` and ` eₘ : m ↪ p`. This generalizes the already existing `updateRow` and `updateColums`.
Together with the definition I add the main API lemmas such as `_trans`, `_refl` , `_submatrix`, `_apply_embedding` , `_apply_of_notMem_left`, `_apply_of_notMem_right`, ` ext_..._iff`, ecc..
I have also added API relative to how this definition behave compared to already existing constructions such has taking the transposition, composing with `Matrix.map`, `fromBlocks` and `.inl` or `.inr` and `toSquareBlockProp` .
There is the sufficent API to compare the new definition with the existing `updateRow`, `updateColums` and with `reindex`.
I add also the `_add`, `_smul` and `_zero` API to define the bundled versions as ` Matrix n m α × Matrix o p α →+ Matrix o p α` and `Matrix n m α × Matrix o p α →ₗ[R] Matrix o p α`.
Using that I add `extendByOne` as an `abbrev` in the special case where `B = 1` with the relative API.
The construction is compatible with the identity and with matrix multiplication as proven by `_mul` `_one` `_one_iff`
and taking the inverses.
This allows to promote `extendedByOne` to a `MonoidHom` which also comes with its relative API .
It is my plan to follow up this PR with the relative construction for `GL` and `SL` and by cleaning up the already existing [Matrix.TransvectionStruct.sumInl](https://leanprover-community.github.io/mathlib4_docs/Mathlib/LinearAlgebra/Matrix/Transvection.html#Matrix.TransvectionStruct.sumInl), this will allow to construct induction arguments over the index type `n` for `GL` and `SL` and in the future introduce `GL R` and `SL R` as the colimits over the inclusion `Fin n ↦ Fin (n + 1)`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
500/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Block.lean,Mathlib/LinearAlgebra/Matrix/UpdateSubmatrix.lean |
3 |
16 |
['Nicola9Falciola', 'github-actions', 'tb65536'] |
nobody |
3-77646 3 days ago |
3-77704 3 days ago |
4-69421 4 days |
2 |
| 45686 |
felixpernegger author:felixpernegger |
chore(Data): remove unused hypothesis |
Removes unused hypothesis from #45673 in Data. |
t-data
LLM-generated
t-measure-probability
|
55/32 |
Mathlib/Basic/Real/Embedding.lean,Mathlib/Data/ENat/Monoid.lean,Mathlib/Data/Fin/SuccPred.lean,Mathlib/Data/Int/Log.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/List/MinMax.lean,Mathlib/Data/List/Permutation.lean,Mathlib/Data/Nat/Log.lean,Mathlib/Data/Nat/Squarefree.lean,Mathlib/Data/Rat/Lemmas.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/MeasureTheory/SetSemiring.lean |
12 |
4 |
['felixpernegger', 'github-actions', 'themathqueen'] |
nobody |
3-77631 3 days ago |
3-77691 3 days ago |
4-45641 4 days |
1 |
| 42716 |
Raph-DG author:Raph-DG |
feat(CategoryTheory): module structure on ext groups |
In this PR, we construct an R module structure on Ext A G n given a ring homomorphism (φ : R →+* End G). We also show that this module structure agrees with the existing module structure on Ext A G n in the case where the ambient category is R linear.
The main motivation for doing this is that until we have some nice comparison lemmas going between cohomology taken in the category of sheaves of modules and cohomology taken in the category of sheaf of abelian groups, I think it will be more useful to work with the cohomology of the underlying sheaf of abelian groups of a sheaf of modules. However, the category of sheaves of abelian groups is not R linear for most R, so we do not immediately inherit R-module structure on the cohomology groups from this machinery.
AI disclosure: I had AI perform some cleanups and edits to some code originally written by me, as well as having it move things into the correct files. I also had it create this branch from another branch which I decided had too much content for a single PR.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
31/0 |
Mathlib/Algebra/Homology/DerivedCategory/Ext/Linear.lean |
1 |
7 |
['github-actions', 'mathlib-bors', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
3-76775 3 days ago |
73-7001 73 days ago |
88-8197 88 days |
1 |
| 45716 |
jesusvilela author:jesusvilela |
feat(SimpleGraph): add signed graph Laplacian matrices |
### **Summary**
Adds signed adjacency and Laplacian matrices for finite simple graphs, as a reusable Mathlib API.
It uses SimpleGraph.EdgeLabeling Bool to carry edge signs, false to possitive and true to negative edges.
Consider a signed Laplacian as Lσ = D − Aσ, D an ordinary degree matrix, Aσ a signed adjacency matrix.
### **Main changes:**
Add Mathlib/Combinatorics/SimpleGraph/SignedLapMatrix.lean with two definitions and 19 theorems:
1. Signed adjacency is symmetric, while the signed Laplacian is both symmetric and Hermitian.
2. Ordinary Laplacian is recovered for all positive signs, and the signless Laplacian for all negative signs.
3. Squared signed edge identities produce the quadratic energy identity.
4. Arbitrary Boolean edge signings are positive semidefinite, for arbitrary Boolean edge signings.
5. By edgewise compatibility, the kernel is characterized as: equal vertex values across the positive edges and opposite values across negative edges.
There is a double counting of undirected edges in a factor of 1/2, wich is accounted for in the quadratic energy formula.
It has been implemented using existing Mathlib graph and matrix interfaces, restricted to real-valued and Boolean signs.
### **Files changed:**
Mathlib/Combinatorics/SimpleGraph/SignedLapMatrix.lean — new module.
Mathlib.lean — import of the new module.
### **Verification:**
Commit a84939a using Lean v4.36.0-rc2
Verification run [[41879159967](https://github.com/jesusvilela/mathlib4/actions/runs/41879159967)] passed:
- Successful compilation and Mathlib linting.
- lake exe mk all --check
- Transitive axiom audit of 19 public theorems.
- Proof term checks (Lean default, Lean paranoid, lean4lean, nanoda, con-leche and con-ron)
Only axioms propext, Classical.choice and Quot.sound reported.
### **AI Assistance:**
Implemented with substantial usage for Lean, proof construction, migration and verification infraestructure. Models include GPT-family 5.6 to 6.1 Sol and Claude Opus 4.5 to 5.
LLM-generated label is therefore warranted.
Review considerations:
Constructive feedback welcome on the API, naming, generality and pertinent module placement. Wether definitions and associated theorems must be split into smaller contributions or should remain together.
|
t-combinatorics
new-contributor
|
361/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/SignedLapMatrix.lean |
2 |
2 |
['github-actions'] |
nobody |
3-73778 3 days ago |
3-73829 3 days ago |
3-73756 3 days |
0 |
| 44836 |
cmhsu2012 author:cmhsu2012 |
feat(NumberTheory/Legendre/Basic): the legendre symbol for p-adics |
Co-authored-by: María Inés de Frutos-Fernández 88536493+mariainesdff@users.noreply.github.com
and Nirvana Coppola 58878663+NirvanaC93@users.noreply.github.com
In the ongoing formalization of the Hasse-Minkowski Theorem on quadratic forms, we need the Legendre symbol for the p-adics. The following declarations were added to the basic.lean file:
```def compMonoidHom``` an auxiliary definition: the composition between multiplicative characters and a local homomorphism
```def legendreSym``` the definition of the Legendre symbol for Z_p: composition of the reduction from Z_p to Z mod p and the usual Legendre symbol
```def hom``` The Legendre symbol is a homomorphism
The remaining lemmas are the API:
```lemma intCast```
```theorem eq_pow```
```theorem eq_on_or_neg_one```
```eq_neg_one_iff_not_one```
```theorem eq_zero_iff```
```theorem sq_one```
```theorem sq_one'```
```theorem eq_one_iff```
```theorem eq_neg_one_iff```
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-number-theory
new-contributor
|
124/2 |
Mathlib.lean,Mathlib/Algebra/Ring/Int/Units.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/NumberTheory/Padics/LegendreSymbol.lean |
4 |
45 |
['JX-Mo', 'NirvanaC93', 'cmhsu2012', 'github-actions', 'loefflerd', 'mariainesdff', 'tb65536'] |
loefflerd assignee:loefflerd |
3-71179 3 days ago |
3-71224 3 days ago |
12-40643 12 days |
0 |
| 45280 |
themathqueen author:themathqueen |
feat(LinearAlgebra): complexification of real spaces |
This provides the basic framework for complexifying spaces (module structures, star structures, and algebra structures). We also provide some API for complexifying linear operators.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
353/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Complexification/Basic.lean,docs/references.bib |
3 |
12 |
['eric-wieser', 'github-actions', 'themathqueen'] |
j-loreaux assignee:j-loreaux |
3-67339 3 days ago |
3-67381 3 days ago |
4-41656 4 days |
2 |
| 45644 |
wwylele author:wwylele |
feat(Analysis/Complex): arg(x*y) and log(x*y) for more cases |
Existing lemma only talks about `arg x + arg y ∈ Set.Ioc (-π) π`. Let's add other cases as well.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis
maintainer-merge
|
40/0 |
Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Complex/Log.lean |
2 |
8 |
['copilot-pull-request-reviewer', 'github-actions', 'themathqueen', 'wwylele'] |
nobody |
3-67235 3 days ago |
3-70606 3 days ago |
5-23008 5 days |
1 |
| 45694 |
felixpernegger author:felixpernegger |
chore(Probability): remove unused hypothesis |
Removes unused hypothesis from #45673 in Probability. |
LLM-generated
t-measure-probability
|
88/46 |
Mathlib/Probability/Decision/Risk/RiskIncrease.lean,Mathlib/Probability/HasCondDistrib.lean,Mathlib/Probability/Kernel/Composition/KernelLemmas.lean,Mathlib/Probability/Kernel/Composition/Lemmas.lean,Mathlib/Probability/Kernel/Composition/MeasureComp.lean,Mathlib/Probability/Kernel/Composition/MeasureCompProd.lean,Mathlib/Probability/Kernel/Composition/Prod.lean,Mathlib/Probability/Kernel/Composition/WithDensity.lean,Mathlib/Probability/Kernel/Disintegration/Unique.lean,Mathlib/Probability/Martingale/Upcrossing.lean |
10 |
2 |
['github-actions', 'lua-vr'] |
nobody |
3-64651 3 days ago |
3-64697 3 days ago |
4-49691 4 days |
1 |
| 42093 |
DrDMT-VR author:DrDMT-VR |
feat(Topology/Algebra/Ring): topological closure of a two-sided ideal |
Defines `TwoSidedIdeal.closure`, the topological closure of a two-sided ideal in a
topological ring, together with its basic API. This mirrors the existing one-sided
`Ideal.closure` (`Mathlib/Topology/Algebra/Ring/Ideal.lean`), but is stated in the
generality of non-unital non-associative topological rings (`IsTopologicalRing` over
`NonUnitalNonAssocRing`), where one-sided ideals are unavailable.
New declarations (namespace `TwoSidedIdeal`): `closure`, `coe_closure`,
`mem_closure_iff`, `le_closure`, `closure_mono`, `closure_minimal`, `isClosed_closure`,
`closure_eq_of_isClosed`, `closure_closure`, `closure_top`, and `closure_ne_top` (in a
unital ring whose units are open, e.g. a Banach algebra via `Units.isOpen`, the closure of
a proper two-sided ideal is proper).
Mathlib has no topological-closure API for `TwoSidedIdeal`. Closed two-sided ideals are
the basic objects of C*-algebra ideal theory, and `closure_ne_top` is the standard first
step toward "maximal two-sided ideals are closed".
------
- should the definition be called `topologicalClosure` instead? (The current name matches `Ideal.closure`.)
- Claude was utilized throughout the project. It helped with coding, syntax and running repetitive testing.
|
t-topology
new-contributor
LLM-generated
|
127/0 |
Mathlib.lean,Mathlib/Topology/Algebra/Ring/TwoSidedIdeal.lean |
2 |
16 |
['DrDMT-VR', 'FractalDevTeam', 'github-actions', 'grunweg', 'j-loreaux'] |
j-loreaux assignee:j-loreaux |
3-59086 3 days ago |
3-59162 3 days ago |
50-53553 50 days |
0 |
| 42095 |
DrDMT-VR author:DrDMT-VR |
feat(Analysis/CStarAlgebra): the non-unital CFC maps into closed two-sided ideals |
## What
For a non-unital C*-algebra `A`, a closed two-sided ideal `I`, an element `a ∈ I`, and any
`f : ℝ → ℝ`, this proves `cfcₙ f a ∈ I`. No hypotheses on `f` are needed: whenever `cfcₙ`
would take its junk value (`f` not continuous on the quasispectrum, `f 0 ≠ 0`, or `a` not
selfadjoint) that value is `0 ∈ I`.
New declarations (namespace `TwoSidedIdeal`):
- `smul_mem_of_isClosed` — a closed two-sided ideal in a non-unital C*-algebra is closed
under the scalar action (proved via the canonical approximate unit `CStarAlgebra.approximateUnit`).
- `cfcₙHom_mem_of_isClosed` — for selfadjoint `a ∈ I`, every value of the underlying
homomorphism `cfcₙHom` lies in `I` (Weierstrass induction on `C(σₙ ℝ a, ℝ)₀`).
- `cfcₙ_mem_of_isClosed` — the main result.
## Why
Closed two-sided ideals of a C*-algebra are hereditary under the continuous functional
calculus; this is a basic tool for spectral-projection and ideal-membership arguments, and
complements the existing "cfc commutes with *-homomorphisms" results. `smul_mem_of_isClosed`
is of independent interest (a closed two-sided ideal is a submodule).
## Notes
This is my second contribution (see #42093). I checked the referenced cfc / approximate-unit
API against current master at the source level; CI is the first full build and I will fix
anything it flags. Suggested location `Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Ideal.lean`;
happy to relocate if preferred.
Parts of this contribution were developed with AI assistance (Claude). All statements are machine-checked by the Lean kernel; `#print axioms` on the new declarations reports only `[propext, Classical.choice, Quot.sound]`.
|
t-analysis
new-contributor
LLM-generated
|
92/0 |
Mathlib.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Ideal.lean |
2 |
5 |
['DrDMT-VR', 'github-actions', 'grunweg'] |
nobody |
3-59018 3 days ago |
3-59075 3 days ago |
14-24036 14 days |
1 |
| 44288 |
artie2000 author:artie2000 |
feat(Algebra/Ring): sums of squares in a formally real ring form a positive cone |
* Prove that sums of squares in a formally real ring form a positive cone
* Add helper lemma relating the additive submonoid and subsemiring of sums of squares
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
large-import
label:t-algebra$ |
14/0 |
Mathlib/Algebra/Ring/IsFormallyReal.lean,Mathlib/Algebra/Ring/SumsOfSquares.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts', 'vihdzp'] |
nobody |
3-53254 3 days ago |
3-53298 3 days ago |
41-74702 41 days |
0 |
| 45547 |
artie2000 author:artie2000 |
feat(Algebra/Order/Ring): ring preordering extends to ordering |
* Prove every preordering on a ring extends to an ordering.
* Characterise maximal ring orderings.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
158/9 |
Mathlib.lean,Mathlib/Algebra/Order/Ring/Ordering/Basic.lean,Mathlib/Algebra/Order/Ring/Ordering/Extend.lean,Mathlib/Basic/SetLike/Basic.lean |
4 |
3 |
['artie2000', 'github-actions', 'vihdzp'] |
nobody |
3-51878 3 days ago |
3-51940 3 days ago |
8-38891 8 days |
0 |
| 41289 |
D-Thomine author:D-Thomine |
feat(Dynamics): recurrents set and refactoring of conservative maps |
This PR deals mostly with `Dynamics.Conservative`. The notion of *recurrent set* is introduced: a set `s` is recurrent if almost every point in `s` returns to `s`. Most properties of conservative maps actually apply to recurrent sets.
The definition of conservative map is changed to align with this notion of recurrent set (a map is conservative if every measurable set is recurrent). Theorem `MeasureTheory.conservative_iff_exists_mem_iterate_mem` expresses the equivalence of the new definition with the older one.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-dynamics |
337/114 |
Mathlib/Dynamics/Ergodic/Conservative.lean,Mathlib/Dynamics/Ergodic/MeasurePreserving.lean,Mathlib/MeasureTheory/Measure/QuasiMeasurePreserving.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/CountableInter.lean,Mathlib/Order/Interval/Finset/Basic.lean |
6 |
32 |
['D-Thomine', 'github-actions', 'mathlib-merge-conflicts', 'mcdoll'] |
urkud assignee:urkud |
3-50461 3 days ago |
26-734 26 days ago |
110-23677 110 days |
0 |
| 42363 |
ghseeli author:ghseeli |
feat(Combinatorics): card_le_card_biUnion_of_card_le_card |
This PR contributes a lemma to combinatorics, `card_le_card_biUnion_of_card_le_card`. this is a set theoretic corollary of a double counting result proved for bipartite graphs (`Finset.sum_card_bipartiteAbove_eq_sum_card_bipartiteBelow`). This result was needed for our Latin Square PR https://github.com/leanprover-community/mathlib4/pull/36698. This result was proved in less general terms in that PR, but is independent of Latin Square considerations and so we have generalized and moved it into this file.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
38/0 |
Mathlib/Combinatorics/Enumerative/DoubleCounting.lean |
1 |
16 |
['cjrl', 'github-actions', 'vlad902', 'wwylele'] |
b-mehta assignee:b-mehta |
3-50458 3 days ago |
56-60622 56 days ago |
99-30637 99 days |
1 |
| 42971 |
ashebson author:ashebson |
fix(ProfiniteGrp): simplify explicit limit projections |
The naturality proof for `ProfiniteCompletion.lift` previously needed a brittle pointwise `change`. The underlying problem was that simplification crossed several semireducible diagram/forgetful-functor boundaries at once, producing terms that are definitionally equal but no longer type-correct at implicit transparency.
This PR:
- makes the two finite-quotient diagram composites reducible abbreviations;
- states `quotientMap` using the diagram object types and maps it through the existing `FiniteGrp ⥤ ProfiniteGrp` forgetful functor;
- adds a pointwise rewrite lemma for an explicit limit projection followed by a mapped finite-group morphism (with its additive counterpart); and
- rewrites `ProfiniteCompletion.lift` naturality through that API while keeping the limit point bundled, removing the problematic pointwise `change`.
--------
## AI disclosure
AI (OpenAI Codex) was used extensively for this PR. It was used to:
- investigate the original TODO and reproduce why `dsimp` failed;
- explore and discard several possible fixes;
- identify the semireducible diagram/forgetful-functor boundaries involved;
- design and implement the final `ProfiniteGrp` API simplification and `ProfiniteCompletion.lift` proof changes;
- run the relevant Lean builds and direct compilation checks; and
- draft the commit message and PR description.
The final changes were reviewed through the resulting diff and verified locally.
|
t-topology
new-contributor
LLM-generated
|
29/12 |
Mathlib/Topology/Algebra/Category/ProfiniteGrp/Basic.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Completion.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Limits.lean |
3 |
9 |
['ashebson', 'github-actions', 'grunweg', 'mathlib-bors', 'mathlib-merge-conflicts'] |
j-loreaux assignee:j-loreaux |
3-50457 3 days ago |
50-26924 50 days ago |
63-66082 63 days |
0 |
| 43013 |
grunweg author:grunweg |
feat: diffeomorphisms are smooth embeddings |
This is a direct corollary of a previous PR, so let's include it.
This PR assumes matching models with corners (as the general case is not obviously true).
Using the inverse function theorem instead allows any models, but requires Banach manifolds and conditions on boundary behaviour. This will be added in the future, once the relevant version of the inverse function theorem is merged to mathlib.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
32/3 |
Mathlib/Geometry/Manifold/Immersion.lean,Mathlib/Geometry/Manifold/SmoothEmbedding.lean |
2 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
sgouezel assignee:sgouezel |
3-50455 3 days ago |
50-66109 50 days ago |
51-73850 51 days |
0 |
| 43048 |
alreadydone author:alreadydone |
feat(Counterexamples): an invertible semimodule of different cardinality than the semiring |
example due to Sixuan Gu (CUHKSZ) and Wei Qi (Ohio State U)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
increases-technical-debt
label:t-algebra$ |
181/0 |
Counterexamples.lean,Counterexamples/CommSemiring7InvertibleModule6.lean,Mathlib/RingTheory/Spectrum/Maximal/Basic.lean |
3 |
2 |
['github-actions', 'themathqueen'] |
riccardobrasca assignee:riccardobrasca |
3-50453 3 days ago |
19-65335 19 days ago |
78-64474 78 days |
0 |
| 43087 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add Hecke/Basic.lean |
This file defines `HeckeModule` of a representation `ρ` as `Hom_G(k[G ⧸ H], ρ)` and identifies it with the space of `H`-invariants.
We deliberately choose the intertwining model over the invariant model as the main API, for it has good defeq property when we define the mixed level Hecke action of Hecke operators which is just the composition of intertwining maps. This has significant technical advantage because it avoids proving associativity and compatibility combinarically which is nasty using the invariant model.
It is an `abbrev` for maximally reusing API from `ofMulAction` and `IntertwiningMap`. We remark that the abstract boundary will be cut out at `HeckeAlgera` which will be a `def` instead and we will provide an instance `Module HeckeAlgebra HeckeModule`. Before that, we need to develop representation theoretic lemmas about `HeckeModule` and `HeckeBimodule` first so `HeckeModule` should stay transparent. |
new-contributor
t-algebra
label:t-algebra$ |
84/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Hecke/Basic.lean |
2 |
8 |
['JX-Mo', 'Whysoserioushah', 'github-actions'] |
riccardobrasca assignee:riccardobrasca |
3-50452 3 days ago |
18-39026 18 days ago |
77-731 77 days |
1 |
| 43113 |
themathqueen author:themathqueen |
feat(Topology/Algebra/Module/Spaces/CLM): linear map version of `smulRightL` |
This is the linear map version of `smulRightL` that can be used for non-normed spaces.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology |
20/1 |
Mathlib/Analysis/Normed/Operator/Bilinear.lean,Mathlib/Topology/Algebra/Module/Spaces/ContinuousLinearMap.lean |
2 |
1 |
['github-actions'] |
j-loreaux assignee:j-loreaux |
3-50450 3 days ago |
75-68608 75 days ago |
75-68535 75 days |
1 |
| 45724 |
vihdzp author:vihdzp |
feat: build equiv `SignType ≃ Ordering` |
The idea is that `orderingEquiv.symm (cmp x y)` is a more general way to write `sign (x - y)`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order
t-data
|
86/1 |
Mathlib/Basic/Sign/Defs.lean |
1 |
1 |
['github-actions'] |
nobody |
3-49831 3 days ago |
3-49889 3 days ago |
3-49816 3 days |
0 |
| 31981 |
jsm28 author:jsm28 |
feat(Geometry/Euclidean/Incenter): `tangentSet` and `tangentsFrom` lemmas |
Add lemmas relating the faces of a simplex to `tangentSet` and `tangentsFrom` for an exsphere, in particular for a triangle that any two side lines are the `tangentsFrom` their shared vertex to the insphere or any exsphere.
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #31733
- [x] depends on: #31891
- [x] depends on: #31892
- [x] depends on: #31893
- [x] depends on: #31978
- [x] depends on: #31979
- [x] depends on: #31980
- [x] depends on: #32296
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry |
95/0 |
Mathlib/Geometry/Euclidean/Incenter/Basic.lean |
1 |
18 |
['Parcly-Taxel', 'github-actions', 'jsm28', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'pepamontero', 'wwylele'] |
nobody |
3-49561 3 days ago |
22-71976 22 days ago |
72-73689 72 days |
1 |
| 43232 |
Parcly-Taxel author:Parcly-Taxel |
refactor: `TrivSqZeroExt` extending `Prod` |
Define à la `Unitization` ([#mathlib4 > TrivSqZeroExt as a 2-field structure @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/TrivSqZeroExt.20as.20a.202-field.20structure/near/620183663))
```lean
structure TrivSqZeroExt (R : Type u) (M : Type v) extends R × M
```
This PR came out of investigating the source of the `DualQuaternion` slowdown in #43078. (`DualNumber R` is an abbrev for `TrivSqZeroExt R R`.)
`Topology.Instances.TrivSqZeroExt` and `Analysis.Normed.Algebra.TrivSqZeroExt` were filled in with significant help from GPT-6.1 Sol. |
t-algebra
tech debt
LLM-generated
label:t-algebra$ |
360/291 |
Mathlib/Algebra/DualNumber.lean,Mathlib/Algebra/DualQuaternion.lean,Mathlib/Algebra/TrivSqZeroExt/Basic.lean,Mathlib/Algebra/TrivSqZeroExt/Ideal.lean,Mathlib/Analysis/Normed/Algebra/TrivSqZeroExt.lean,Mathlib/LinearAlgebra/ExteriorAlgebra/Basic.lean,Mathlib/LinearAlgebra/Matrix/DualNumber.lean,Mathlib/LinearAlgebra/TensorAlgebra/Basic.lean,Mathlib/RingTheory/DualNumber.lean,Mathlib/Topology/Instances/TrivSqZeroExt.lean |
10 |
10 |
['Parcly-Taxel', 'github-actions', 'mathlib-merge-conflicts', 'plp127'] |
nobody |
3-47068 3 days ago |
3-47126 3 days ago |
12-65624 12 days |
0 |
| 39809 |
zcyemi author:zcyemi |
feat(LinearAlgebra/AffineSpace/Menelaus): add Menelaus' theorem |
Add Menelaus' theorem for both `AffineSpace` and `NormedAddTorsor`.
The `AffineSpace` version includes both the forward and converse directions, while the `NormedAddTorsor` version currently includes the forward direction.
For the converse direction in the `NormedAddTorsor` setting, I am still considering the most convenient formalization for future use. One possible approach is to use `sbtw` / `¬ sbtw` to distinguish the different positional cases for points on the edges of a triangle, but this seems too complicated under permutations of the triangle vertices.
|
t-euclidean-geometry |
373/0 |
Mathlib.lean,Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean,Mathlib/Analysis/Convex/Between.lean,Mathlib/Analysis/Normed/Affine/Menelaus.lean,Mathlib/LinearAlgebra/AffineSpace/Menelaus.lean,docs/1000.yaml |
6 |
11 |
['github-actions', 'jsm28', 'zcyemi'] |
nobody |
3-45549 3 days ago |
3-45659 3 days ago |
70-54477 70 days |
0 |
| 43983 |
JX-Mo author:JX-Mo |
chore(RepresentationTheory/Rep/Res): remove a layer on `Rep.res` |
Define directly `abbrev res (f : H →* G) (A : Rep k G) := of (A.ρ.comp f)` and golf. |
t-algebra label:t-algebra$ |
11/13 |
Mathlib/RepresentationTheory/Coinduced.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/Functoriality.lean,Mathlib/RepresentationTheory/Rep/Res.lean |
3 |
12 |
['JX-Mo', 'Whysoserioushah', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
3-33406 3 days ago |
3-33462 3 days ago |
49-80522 49 days |
3 |
| 45723 |
alexei-kopylov author:alexei-kopylov |
chore(LinearAlgebra/ExteriorPower/BilinForm): make bilinForm_ιMulti_ιMulti public |
`bilinForm_ιMulti_ιMulti` is currently invisible outside its own module, although `LinearMap.BilinForm.exteriorPower` and
`bijective_exteriorPower` are public, so no importer of this file can use the formula. The lemma is already marked `@[simp]`, but that marking has no effect for importers while the lemma itself is not public. I believe that this is an oversight, not intentional.
Making the lemma public exposes the evaluation formula, with no other change.
This restores the visibility the lemma had in #42889: it was made `public` in 93bf495 at a reviewer's request (mark `public` the declarations intended for export), then lost `public` in a829f41, a doc-comment cleanup whose diff bundles the drop with the deletion of the lemma's own docstring — no discussion in #42889 asks for the removal.
cc @kirill-kondrashov (author of #42889) |
t-algebra
new-contributor
label:t-algebra$ |
1/1 |
Mathlib/LinearAlgebra/ExteriorPower/BilinForm.lean |
1 |
4 |
['github-actions', 'kirill-kondrashov'] |
nobody |
3-24915 3 days ago |
3-51560 3 days ago |
3-51487 3 days |
0 |
| 42327 |
riccardobrasca author:riccardobrasca |
feat: add levelOne_qExpansionAlgHom_injective |
We prove that the `q`-expansion map `ModularForm.qExpansionAlgHom` is injective on the graded ring `⨁ k, ModularForm Γ k` of modular forms of level `Γ`, for any arithmetic subgroup `Γ` (`ModularForm.qExpansionAlgHom_injective`).
We also add various API lemmas to to `CongruenceSubgroups.lean`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-number-theory
maintainer-merge
|
257/20 |
Mathlib.lean,Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean,Mathlib/NumberTheory/ModularForms/Cusps.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean,Mathlib/NumberTheory/ModularForms/QExpansionInjective.lean |
5 |
18 |
['github-actions', 'loefflerd', 'mathlib-merge-conflicts', 'riccardobrasca'] |
loefflerd assignee:loefflerd |
3-20791 3 days ago |
3-20839 3 days ago |
13-35765 13 days |
0 |
| 45357 |
JovanGerb author:JovanGerb |
chore(Util/Export): deprecate |
The file `Mathlib.Util.Export` defines an export format for Lean declarations. It is not documented, not tested, and seemingly not used. Nowadays, there is the alternative https://github.com/leanprover/lean4export. So, we deprecate this file.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
maintainer-merge
t-meta
|
5/0 |
Mathlib/Util/Export.lean |
1 |
3 |
['github-actions', 'j-loreaux', 'joneugster'] |
digama0 and joneugster assignee:digama0 assignee:joneugster |
3-14811 3 days ago |
13-166 13 days ago |
13-93 13 days |
0 |
| 45728 |
IvanRenison author:IvanRenison |
feat(Data/Holor): add order related instances to `Holor` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-data |
83/0 |
Mathlib/Data/Holor.lean |
1 |
1 |
['github-actions'] |
nobody |
3-13931 3 days ago |
3-13986 3 days ago |
3-14059 3 days |
0 |
| 45637 |
marcelolynch author:marcelolynch |
fix(Cache): repeat `--repo` in suggested cache commands |
When the user passes `--repo`, the cache tool now repeats it in the commands that it suggests. This applies to the suggestions of `cache query` and to the missing-files hint of `cache get`. Without `--repo`, the suggested command reads the cache of the checkout's git remote, which is not the repository that the user asked for.
🤖
|
CI
maintainer-merge
|
30/10 |
Cache/Main.lean,Cache/Query.lean,Cache/Test.lean,Cache/Warning.lean |
4 |
3 |
['github-actions', 'joneugster'] |
joneugster assignee:joneugster |
3-12969 3 days ago |
5-58567 5 days ago |
5-58494 5 days |
0 |
| 45573 |
YaelDillies author:YaelDillies |
chore(Algebra/Polynomial): parse `R[X]` as `R` + `[` + `X` + `]` |
The current notation has several issues:
1. It accepts whitespace, so `R [X]` parses as `Polynomial R` too.
2. It makes `[X]` a token, so `simp [X]` parses as `simp` + `[X]` (a parse error) rather than the expected `simp` + `[` + `X` + `]` because of the longest parse rule.
Replacing the `notation` containing the `[X]` token by a `syntax` containing the `[`, `X`, `]` tokens separated by `noWs` fixes the second issue. Adding one more `noWs` before the `[` token fixes the first issue.
The priority of the syntax is decided in comparison to that of `AddMonoidAlgebra` (which is `high`) and `GetElem`.
Written by Claude Opus, tweaked by myself.
Assisted-by: Claude Opus 5.5
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
LLM-generated
t-meta
maintainer-merge
label:t-algebra$ |
22/8 |
Mathlib/Algebra/Polynomial/Basic.lean |
1 |
2 |
['github-actions', 'joneugster'] |
joneugster assignee:joneugster |
3-11740 3 days ago |
3-80597 3 days ago |
7-19347 7 days |
0 |
| 44786 |
ZRTMRH author:ZRTMRH |
feat(Lean/Quote): restore `Quote` instances for `Int` and `Rat` |
Add `Quote Int` and `Quote Rat` instances, analogous to core's `Quote Nat`.
They turn a number into numeral syntax without a type ascription (e.g. `quote (-7 / 2 : ℚ)` is `-7 / 2`), so the result elaborates at the expected type. These could later be upstreamed to Lean core.
These instances were added in #942 as part of `polyrith`, fixed in #24470, and removed together with the implementation of `polyrith` in #29547. This PR restores them unchanged (apart from naming) in their own file. Tests provided.
Motivated from the project of `maximize` / `minimize` tactics (PR to follow) which print a computed rational bound in a "Try this" suggestion such as `have : 4 * x + y ≤ 7 / 2 := by linarith`. Discussed on Zulip: [maximize / minimize tactic for linear optimization](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/maximize.20.2F.20minimize.20tactic.20for.20linear.20optimization).
The test file is refined with AI assistance (Claude) and has been reviewed by the author.
Co-authored-by: Mario Carneiro <di.gama@gmail.com>
Co-authored-by: Aaron Liu <aaronliu2008@outlook.com>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-meta
LLM-generated
new-contributor
maintainer-merge
|
164/0 |
Mathlib.lean,Mathlib/Lean/Quote.lean,MathlibTest/Quote.lean |
3 |
6 |
['ZRTMRH', 'github-actions', 'joneugster'] |
joneugster assignee:joneugster |
3-8833 3 days ago |
28-46775 28 days ago |
28-46702 28 days |
0 |
| 44548 |
emlis42 author:emlis42 |
feat(Tactic/Inclusion): add sqrt support to the `inclusion`/`dyadic_interval` tactic |
This PR adds a `sqrt` extension for the `dyadic_interval` tactic.
---
- [x] depends on: #45421
I used an LLM for golfing. |
t-meta |
157/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Sqrt.lean,MathlibTest/Tactic/Inclusion/Sqrt.lean |
4 |
6 |
['emlis42', 'github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
kim-em assignee:kim-em |
3-7122 3 days ago |
3-7203 3 days ago |
24-55398 24 days |
1 |
| 45727 |
pleich author:pleich |
feat(Order/WellFoundedSet): PWO iff well-founded with finite antichains |
Add `Set.partiallyWellOrderedOn_iff_wellFoundedOn_and_finite_antichains`: For preorder `r`, a set is partially well-ordered iff the strict part of `r` is well-founded on it and all antichains are finite. This removes the open TODO in the module docstring.
Additionally, prove theorem `IsAntichain.finite_of_partiallyWellOrderedOn` by reusing the analog theorem (`IsAntichain.finite_of_wellQuasiOrdered `) for well-quasi orders and remove the corresponding TODO.
This commit has been assisted by Claude Code with Opus 5.5.
---
This is my first PR to the mathlib project, and I am welcome for any feedback. If these TODOs are already assigned to others, feel free to close the PR.
Claude has been used to create this PR, in particular to help me understand the relevant definitions, make the proofs more concise, adhering to the mathlib style and to review my proposed changes afterwards.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order
new-contributor
|
19/6 |
Mathlib/Order/WellFoundedSet.lean |
1 |
3 |
['SnirBroshi', 'github-actions'] |
nobody |
3-3493 3 days ago |
3-3544 3 days ago |
3-9819 3 days |
0 |
| 45649 |
riccardobrasca author:riccardobrasca |
chore: clean up after #43233 |
---
#43233 was merged too quickly, we clean it up.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
|
506/434 |
Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/SpecialFunctions/Exp.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/NumberTheory/LSeries/SumCoeff.lean,Mathlib/NumberTheory/LSeries/WienerIkehara.lean,Mathlib/Topology/Algebra/InfiniteSum/Real.lean,Mathlib/Topology/Algebra/Support.lean |
9 |
5 |
['github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'mcdoll', 'riccardobrasca'] |
nobody |
3-3300 3 days ago |
3-3351 3 days ago |
4-63738 4 days |
0 |
| 45729 |
JovanGerb author:JovanGerb |
chore(Algebra/Ring/Action/Basic): let `MulSemiringAction` extend `MulDistribMulAction` |
Make `MulSemiringAction` extend `MulDistribMulAction`, and remove the outdated comment that explains that we can't do this because of the use of `old_structure_cmd`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
easy
label:t-algebra$ |
3/11 |
Mathlib/Algebra/Ring/Action/Basic.lean |
1 |
3 |
['JovanGerb', 'github-actions', 'leanprover-radar'] |
nobody |
3-2419 3 days ago |
3-10992 3 days ago |
3-10919 3 days |
0 |
| 45682 |
felixpernegger author:felixpernegger |
chore(Basic): deprecating (bad) trivial lemmas |
Removes unused hypothesis from #45673 in Basic.
More precisely, during the run it was discovered that here we have some lemmas that are true in more generality; i.e. something like
`example (p : NNReal) [ExampleClass p] : 0 \le p := sorry`
which already holds since `p : NNReal`
|
LLM-generated
t-data
|
6/0 |
Mathlib/Basic/Real/ConjExponents.lean |
1 |
4 |
['felixpernegger', 'github-actions', 'plp127', 'vihdzp'] |
nobody |
3-862 3 days ago |
4-46046 4 days ago |
4-48308 4 days |
1 |
| 45659 |
harahu author:harahu |
feat(GroupTheory/OreLocalization): add `Small` instance |
Add `OreLocalization.small : Small.{w} X[S⁻¹]` given `Small.{w} S` and `Small.{w} X` along with the additive version.
This replaces a local instance in `Algebra/Category/ModuleCat/Localization.lean` and 8 hand-built `Small` instances in `RingTheory/LocalProperties/{Injective,Projective}Dimension.lean`.
---
🤖 Generated with [Claude Code](https://claude.com/claude-code), with further refinement by Astra.
|
t-ring-theory |
35/20 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Localization.lean,Mathlib/GroupTheory/OreLocalization/Small.lean,Mathlib/RingTheory/LocalProperties/InjectiveDimension.lean,Mathlib/RingTheory/LocalProperties/ProjectiveDimension.lean |
5 |
3 |
['github-actions', 'harahu', 'plp127'] |
nobody |
3-735 3 days ago |
3-787 3 days ago |
3-996 3 days |
0 |
| 43519 |
harahu author:harahu |
chore(Order/Interval/Set/SuccPred): generalize lemmas |
We generalize five lemmas from `LinearOrder` to `Preorder` and three to `PartialOrder`.
The motivation for the `Preorder` generalizations is to enable deprecation of the almost identical results in `Mathlib/Order/SuccPred/Basic.lean`. The results in that file are stated more generally, so we need to generalize in order to subsume them properly.
---
We're aiming to keep the statements in the touched file rather than those in `SuccPred/Basic.lean` based on [this discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/duplicate.20succ.20interval.20lemmas/with/621955635).
This PR has significant overlap with #23810, but does not cover `Finset/SuccPred.lean`. The touched file in this PR asks to be kept in sync with the `Finset` sibling, but there is already a lot of divergence since the `Finset` file hasn't been treated with `to_dual` yet. I therefore suggest that `Finset/SuccPred.lean` and the other sibling files be brought up to date in a subsequent PR.
The generalizations were performed by Claude Code, and thereafter reviewed and somewhat cleaned up by me.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
61/19 |
Mathlib/Order/Interval/Set/SuccPred.lean |
1 |
4 |
['github-actions', 'harahu', 'mathlib-merge-conflicts', 'vihdzp'] |
vihdzp assignee:vihdzp |
2-85665 2 days ago |
2-85718 2 days ago |
61-78927 61 days |
0 |
| 43965 |
YaelDillies author:YaelDillies |
feat(NumberTheory): `decide`, `#eval` and `norm_num` for Carmichael numbers |
Provide both an efficient decidability instance and a `norm_num` extension to decide whether a given literal is a Carmichael number.
This lets us prove that 561 is the smallest Carmichael number "in a computationally efficient manner". Deprecate the version of Korselt's criterion that was supposed to be used for this (but was less efficient than these new instance/extension).
Generated by Claude Opus in several rounds of review to optimise various parts of the algorithms and make sure that the decidability instance works for both `#eval` and `decide`. I haven't made much of an effort to clean the proofs (existing proofs internal to `norm_num` read like garbage to me anyway).
From FormalConjectures
Assisted-by: Claude Opus 5.1
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-number-theory
LLM-generated
t-meta
|
311/10 |
Mathlib/NumberTheory/CarmichaelNumber.lean,MathlibTest/NumberTheory/CarmichaelNumber.lean |
2 |
19 |
['Parcly-Taxel', 'SnirBroshi', 'YaelDillies', 'github-actions', 'joneugster', 'leanprover-radar', 'mathlib-merge-conflicts', 'vihdzp', 'wwylele'] |
nobody |
2-84426 2 days ago |
2-84517 2 days ago |
47-25368 47 days |
1 |
| 45306 |
JX-Mo author:JX-Mo |
feat(Group/Center): add `npow_mem_center` |
This is useful to cancel out the auto-generated `npow` instance diamond by manually providing the proof instead. |
t-algebra
easy
label:t-algebra$ |
4/0 |
Mathlib/Algebra/Group/Center.lean |
1 |
4 |
['JX-Mo', 'github-actions', 'ocfnash'] |
nobody |
2-75946 2 days ago |
14-9595 14 days ago |
14-9522 14 days |
0 |
| 45738 |
seewoo5 author:seewoo5 |
chore(Analysis/Asymptotics): drop commutativity assumptions |
Remove commutativity assumptions for asymptotic APIs. Closes #19288
* `Asymptotics/Arith.lean`, `Basic.lean`, `Lemmas.lean`, `Prod.lean`, `SpecificAsymptotics.lean`, `Theta.lean`: weaken the file-level variables, reprove lemmas that used commutative rewrites (`add_iff_right`, `sub_iff_right`, `congr_of_sub`, `add_isBigOWith`, `right_isBigO_add'`).
* Weaken `Module` assumptions on the smul lemmas to `SMulZeroClass`/`SMul`, which is all `norm_smul_le`/`norm_smul` need.
* Move `norm_norm'`, `nnnorm_norm'`, `enorm_norm'`, `abs_norm_sub_norm_le'`, `norm_sub_norm_le'`, `dist_norm_norm_le'`, `nndist_nnnorm_nnnorm_le'` (and their additive versions) to the non-commutative `SeminormedGroup` section.
* `BoundedAtFilter.add` and `BoundedAtFilter.neg` now only need `SeminormedAddGroup`.
Finset sums, `isLittleO_pow_sub_pow_sub`, `isLittleO_pow_sub_sub` and `BoundedAtFilter.smul` still require commutativity.
Generated with Claude Opus 5.5, and reviewed by myself.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
LLM-generated |
75/73 |
Mathlib/Analysis/Asymptotics/Arith.lean,Mathlib/Analysis/Asymptotics/Basic.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/Prod.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Real.lean,Mathlib/Order/Filter/ZeroAndBoundedAtFilter.lean |
9 |
1 |
['github-actions'] |
nobody |
2-70440 2 days ago |
2-70440 2 days ago |
2-70367 2 days |
0 |
| 45742 |
vihdzp author:vihdzp |
chore: recursor for `SignType` using the simp-normal forms |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Co-authored by @plp127
|
tech debt
t-data
|
39/10 |
Mathlib/Basic/Sign/Basic.lean,Mathlib/Basic/Sign/Defs.lean,Mathlib/Data/EReal/Inv.lean |
3 |
1 |
['github-actions'] |
nobody |
2-68989 2 days ago |
2-69048 2 days ago |
2-68975 2 days |
0 |
| 45743 |
plp127 author:plp127 |
doc(Algebra/Module/Projective): remove outdated paragraph |
Remove a paragraph in the module docstring of `Mathlib/Algebra/Module/Projective.lean`, which is no longer true since leanprover-community/mathlib3#16750.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
documentation
easy
t-algebra
label:t-algebra$ |
0/4 |
Mathlib/Algebra/Module/Projective.lean |
1 |
1 |
['github-actions'] |
nobody |
2-68944 2 days ago |
2-69009 2 days ago |
2-68936 2 days |
0 |
| 44997 |
TJHeeringa author:TJHeeringa |
feat(Analysis/InnerProductSpace): add abs for continuousLinearMaps between Hilbert spaces |
Schatten p-norm is based on the absolute value / modulus for continuous linear maps between Hilbert spaces. This PR adds that absolute value.
---
This PR is split of from #44525, which is a draft for the Schatten operators.
Mathlib has the similar `CFC.abs` but the adjoint is not a star operation for continuous linear maps between different Hilbert spaces.
The API I put here is limited as this is all what is needed to define the Schatten p-norms. If more is desired in this PR, then I'd be happy to add it.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis
maintainer-merge
|
175/0 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Abs.lean,Mathlib/Analysis/InnerProductSpace/Positive.lean |
3 |
88 |
['TJHeeringa', 'github-actions', 'themathqueen'] |
nobody |
2-68805 2 days ago |
2-68858 2 days ago |
16-5323 16 days |
3 |
| 43038 |
plp127 author:plp127 |
feat: `Dyadic` is an ordered ring |
Prove `Dyadic` is a linearly ordered ring, providing instances for `LinearOrder`, `CommRing`, and `IsStrictOrderedRing`. Remove corresponding material from `Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Dyadic`. Follow-up to #45186.
---
[From CGT](https://github.com/vihdzp/combinatorial-games/blob/99a469a2e02fd9fab9a717efe27f7fc84b880bbb/CombinatorialGames/Mathlib/Dyadic.lean).
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data
tech debt
|
112/23 |
Mathlib.lean,Mathlib/Data/Dyadic/Basic.lean,Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Dyadic.lean |
3 |
20 |
['ADedecker', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'vihdzp'] |
joneugster assignee:joneugster |
2-67386 2 days ago |
2-67860 2 days ago |
41-47596 41 days |
2 |
| 43528 |
joelriou author:joelriou |
feat(Geometry/Convex): the simplicial set of affine simplices of a convex space |
Let `Y` be a `R`-convex space. In this file, we introduce the simplicial set `toSSet R Y` whose `n`-simplices are affine maps from the standard `n`-dimensional simplex to `Y`. (When `R := ℝ` and `Y` has a suitable topology, this identifies to a subcomplex of the singular simplicial set of the topological space `Y`.)
From https://github.com/joelriou/excision
---
- [x] depends on: #43524
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry |
166/0 |
Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/Geometry/Convex/ConvexSpace/ToSSet.lean |
3 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
2-65811 2 days ago |
2-65896 2 days ago |
53-4936 53 days |
0 |
| 44754 |
ajirving author:ajirving |
feat(Analysis/Complex): existence of analytic logs and roots |
Extends the results in BranchLogRoot.lean to construct logs and nth roots of analytic functions. This required a new inverse function theorem lemma, analyticAt_comp_iff_right_of_deriv_ne_zero. This is similar to the existing analyticAt_comp_iff_of_deriv_ne_zero: the new result gives analyticity of the right factor of the composition whereas the existing result gives the left. Perhaps better names are needed to distinguish these two similar results.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis |
50/1 |
Mathlib/Analysis/Calculus/InverseFunctionTheorem/Analytic.lean,Mathlib/Analysis/Complex/BranchLogRoot.lean |
2 |
2 |
['github-actions'] |
nobody |
2-65780 2 days ago |
2-65846 2 days ago |
29-19850 29 days |
0 |
| 44967 |
ajirving author:ajirving |
feat(Analysis/Complex): generalise Borel-Caratheodory and prove derivative bound |
Replaces the existing proof of the Borel-Caratheodory theorem with a version which first bounds all the derivatives at the centre using circle averages. Then uses this to prove a bound for the derivative. I hesitated over removing the existing proof but the new version has several advantages:
* Drops the condition 0 < M
* Gives the derivative bound with a sharp constant
* I also generalised to arbitrary centre rather than just the origin
I've left the existing API for balls centred at the origin but I've deprecated those results in favour of the new more general versions. I did however change the old results to drop the no longer needed 0 < M and 0 < R hypotheses. Note that all the deleted results were private.
Several more widely useful helper lemmas were added to TaylorSeries, MeanValue and CircleAverage. If helpful I could separate those into a smaller PR first.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis |
229/85 |
Mathlib/Analysis/Complex/BorelCaratheodory.lean,Mathlib/Analysis/Complex/MeanValue.lean,Mathlib/Analysis/Complex/TaylorSeries.lean,Mathlib/MeasureTheory/Integral/CircleAverage.lean,docs/1000.yaml |
5 |
4 |
['ajirving', 'github-actions'] |
nobody |
2-65448 2 days ago |
2-65490 2 days ago |
23-3230 23 days |
0 |
| 45224 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Clique): translate clique theorems to independent sets |
`Translate/ToCompl.lean` is essentially identical to `Translate/ToDual.lean` but with names/comments changed.
Perhaps we should have some ``registerTranslationAttribute `to_foo`` that adds a new attribute without any boilerplate, like creating a new simp set.
[#graph theory > Translating the clique API for independent sets](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Translating.20the.20clique.20API.20for.20independent.20sets/with/634485631)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-combinatorics |
212/105 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/VertexCover.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Translate/ToCompl.lean |
5 |
2 |
['SnirBroshi', 'github-actions'] |
nobody |
2-63397 2 days ago |
2-63397 2 days ago |
2-63324 2 days |
0 |
| 45572 |
jano-wol author:jano-wol |
feat(LinearAlgebra/Matrix): add strict block triangular API |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
While working on the remaining TODO in Mathlib/Algebra/Lie/CartanCriterion.lean, I needed an API for strictly triangular matrices. This PR adds that API by introducing Matrix.StrictBlockTriangular and its strictly upper and lower triangular specializations. Although the PR is somewhat large, a large part of it directly follows the existing BlockTriangular API.
I am also planning a follow up PR for matrices whose entries vanish below a specified superdiagonal, with upper triangularity and strict upper triangularity as the n = 0 and n = 1 cases. Such a formulation will require additional structure on the indices to express offsets, beyond the order relations used here. |
t-algebra label:t-algebra$ |
183/1 |
Mathlib/Data/Matrix/Block.lean,Mathlib/LinearAlgebra/Matrix/Block.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Basic.lean |
3 |
5 |
['eric-wieser', 'github-actions', 'jano-wol'] |
nobody |
2-56522 2 days ago |
6-24938 6 days ago |
7-23413 7 days |
0 |
| 45737 |
grunweg author:grunweg |
feat: make `basify` handle WithTop ENat better |
- add many more tests about `basify` for ENat and `WithTop ENat`
- add a few missing lemmas about `ofNat` in ENat and WithTop ENat,
- prove that `a + ∞ = ∞` in WithTop ENat, when a is a natural number converted directly to WithTop ENat
- tag `re_refl` with `basify_simps`, so cases such as `a + ∞ = ∞` are closed automatically.
Some tests highlight further issues in basify's handling (such as, norm_cast not being idempotent, or `basify` making no progress at all on some goals). These are out of scope for this PR, but recording them as TODOs at least reminds us what needs to be done still.
These questions appear when counting derivatives in differential geometry, as the degree of smoothness of functions is `WithTop ENat`-valued. This particular PR is from the project to prove smoothness of the Levi-Civita connection, as part of the project towards geodesics, curvature and Riemannian geometry.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
large-import |
138/4 |
Mathlib/Data/ENat/Monoid.lean,Mathlib/Order/Defs/PartialOrder.lean,MathlibTest/Tactic/Basify.lean |
3 |
1 |
['github-actions'] |
nobody |
2-55626 2 days ago |
2-55672 2 days ago |
2-55599 2 days |
1 |
| 45689 |
felixpernegger author:felixpernegger |
chore(GroupTheory): remove unused hypothesis |
Removes unused hypothesis from #45673 in GroupTheory. |
LLM-generated
t-group-theory
|
36/17 |
Mathlib/GroupTheory/CommutingProbability.lean,Mathlib/GroupTheory/Exponent.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean,Mathlib/GroupTheory/Perm/Fin.lean |
6 |
1 |
['github-actions', 'vihdzp'] |
nobody |
2-50506 2 days ago |
4-50132 4 days ago |
4-50059 4 days |
1 |
| 41531 |
luigi-massacci author:luigi-massacci |
feat: scalar multiplication as a CLM on D^n |
Introduces for `TestFunction` the analogous results from `SchwartzMap`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #41485
- [x] depends on: #41324
[](https://gitpod.io/from-referrer/)
|
t-analysis |
54/3 |
Mathlib/Analysis/Distribution/TestFunction.lean |
1 |
10 |
['github-actions', 'luigi-massacci', 'luigimassacci-ax', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mcdoll'] |
urkud assignee:urkud |
2-50462 2 days ago |
33-85081 33 days ago |
52-83369 52 days |
4 |
| 43037 |
kim-em author:kim-em |
feat(Tactic/NormNum): add `norm_num_simproc` and use it for `Nat.fib` |
Adds `norm_num_simproc` to share a numerical evaluator between `norm_num` and simproc sets, and uses it to make `Nat.fib` evaluation available to `simp` and `grind`.
```lean
norm_num_simproc [simp, seval] evalNatFib (Nat.fib _) where
eval {_ _} e := ...
```
This declares the simproc `evalNatFib` and the extension `evalNatFib.normNumExt`. The set list defaults to `[simp]`; an explicit list replaces it, with `[]` disabling automatic simproc registration. Both registrations support `local` and `scoped`.
The extension retains recursive operand normalization for direct consumers such as `ring` and `positivity`. `Nat.fib` is a first example: around 30 existing extensions are candidates for conversion, including `Nat.factorial`, `Nat.Prime`, and the Jacobi and Legendre symbols. Each will need its own registration and performance assessment.
:robot: prepared with Codex+Claude
|
t-meta
LLM-generated
|
316/9 |
Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/NormNum/NatFib.lean,MathlibTest/Tactic/NormNum/NatFib.lean,MathlibTest/Tactic/NormNum/SimprocMacro.lean |
4 |
16 |
['JovanGerb', 'github-actions', 'kim-em', 'thorimur'] |
eric-wieser assignee:eric-wieser |
2-50459 2 days ago |
42-40991 42 days ago |
79-14116 79 days |
0 |
| 43139 |
plp127 author:plp127 |
feat: make `MvPFunctor` universe-polymorphic |
We mirror what is done for the univariate `PFunctor` and make `MvPFunctor` universe-polymorphic. Certain declarations are kept not universe polymorphic for now, including `MvQPF` and many things relating to the `W` and `M` types being fixpoints.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data
increases-technical-debt
|
130/105 |
Mathlib/Data/PFunctor/Multivariate/Basic.lean,Mathlib/Data/PFunctor/Multivariate/M.lean,Mathlib/Data/PFunctor/Multivariate/W.lean,Mathlib/Data/QPF/Multivariate/Basic.lean,Mathlib/Data/QPF/Multivariate/Constructions/Cofix.lean,Mathlib/Data/QPF/Multivariate/Constructions/Fix.lean |
6 |
1 |
['github-actions'] |
eric-wieser assignee:eric-wieser |
2-50458 2 days ago |
25-12849 25 days ago |
74-67956 74 days |
0 |
| 43973 |
grunweg author:grunweg |
feat: mvfderiv_const_smul and friends |
This specialises the lemma `mvfderiv_smul` to the case of the first factor being a constant. Proper version of #34262.
This was developed as part of the path to the Levi-Civita connection, but wound up not being strictly necessary for its development.
Co-authored-by: Patrick Massot [patrickmassot@free.fr](mailto:patrickmassot@free.fr)
---
- [x] depends on: #43986
- [x] depends on: #43987
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
31/0 |
Mathlib/Algebra/Group/Action/Pi.lean,Mathlib/Geometry/Manifold/MFDeriv/NormedSpace.lean |
2 |
6 |
['github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
ocfnash assignee:ocfnash |
2-50455 2 days ago |
19-8802 19 days ago |
19-8729 19 days |
0 |
| 44204 |
urkud author:urkud |
feat(Calculus/FDeriv): chain rules for continuous linear maps |
Add special cases of the chain rule for composition with a continuous
linear map on the left (`ContinuousLinearMap.comp_hasFDerivAtFilter` and
friends) and on the right (`HasFDerivAtFilter.comp_continuousLinearMap`
and friends).
Also add `ContinuousLinearEquiv.comp_hasFDerivAtFilter_iff` and use it to
golf the `comp_has*FDeriv*_iff` lemmas, and use the new lemmas in a few
places.
Extracted by Claude from a larger refactor written by Yury.
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
---
Preparation for generalizing `Mathlib/Analysis/Calculus/FDeriv/` to
topological vector spaces: with these lemmas available, the lemmas about
`Prod.fst`/`Prod.snd`/`Prod.map` and about `c • f` can avoid the general
chain rule and thus avoid its typeclass assumptions.
The new lemmas are deliberately stated for `NormedAddCommGroup` +
`NormedSpace`, even though their proofs do not need it, so that this PR
does not change which instances Lean generates in downstream files. They
are generalized together with the rest of the chain rule in a later PR,
so that the effect of that change can be benchmarked on its own.
|
t-analysis
LLM-generated
|
157/22 |
Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousAlternatingMap.lean,Mathlib/Analysis/Calculus/FDeriv/Equiv.lean,Mathlib/Analysis/Calculus/FDeriv/Linear.lean,Mathlib/Analysis/Calculus/Implicit.lean |
5 |
4 |
['github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'urkud'] |
j-loreaux assignee:j-loreaux |
2-50454 2 days ago |
9-66792 9 days ago |
22-51589 22 days |
0 |
| 44802 |
wwylele author:wwylele |
feat(MeasureTheory/Lebesgue): one-dimensional Brunn–Minkowski theorem |
This is the starting point of upstreaming https://github.com/hojonathanho/isoperimetric (with author's permission at https://github.com/hojonathanho/isoperimetric/issues/1) for the general Brunn–Minkowski theorem. The proof strategy follows https://terrytao.wordpress.com/2011/09/16/the-brunn-minkowski-inequality-for-nilpotent-groups/, which goes like:
1-d Brunn–Minkowski -> 1-d Prékopa-Leindler -> n-d Prékopa-Leindler -> n-d Brunn–Minkowski
Co-authored-by: Jonathan Ho <hojonathanho@gmail.com>
---
~~As far as I know, no AI was used (except for my request for copilot review below, which returned nothing)~~
There was a major revision to this PR. The first version was written without AI, which proved the statement `MeasurableSet A -> MeasurableSet B -> nonemptiness -> volume A + volume B ≤ volume (A + B)`. This was then re-written using an Aristotle generated proof (see https://github.com/leanprover-community/mathlib4/pull/44802#issuecomment-6146960763), which removes the measurability hypothesis and generalize the theorem to partially ordered monoid + pull-back (sub-)invariant measure (so this would also work on e.g. NNReal). The AI-generated proof has been restructured by me manually.
On the topic of generalization of the ` μ A + μ B ≤ μ (A + B)`-like inequality, there is also [Kemperman's theorem](https://terrytao.wordpress.com/2011/12/26/a-variant-of-kempermans-theorem/) which holds for locally compact connected groups, which includes `Real`. The proof of this is beyond my ability at the moment, plus it still generally requires measurability, plus it requires a group instead of a just a magma. So the generalization to ordered magma is an interesting one on its own, and I chose to go in that direction in this PR
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-measure-probability
LLM-generated
|
76/4 |
Mathlib/MeasureTheory/Measure/Interval.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/Topology/Order/Basic.lean |
3 |
17 |
['SnirBroshi', 'copilot-pull-request-reviewer', 'github-actions', 'wwylele'] |
RemyDegenne assignee:RemyDegenne |
2-50452 2 days ago |
24-85653 24 days ago |
25-74936 25 days |
1 |
| 45069 |
korbonits author:korbonits |
feat(Geometry/Manifold): the Riemann curvature of a covariant derivative |
Define the Riemann curvature `R(X, Y) Z = ∇_X ∇_Y Z - ∇_Y ∇_X Z - ∇_[X,Y] Z` of a covariant derivative on the tangent bundle, as an operator on vector fields, in a new file `CovariantDerivative/Curvature.lean` (alongside `Torsion.lean`).
Main results:
- `CovariantDerivative.curvature_swap`: antisymmetry in the first two arguments.
- `curvature_smul_left/snd`, `curvature_add_left/snd`: function-linearity in the first two arguments, with explicit differentiability hypotheses.
- `tensorialAt_curvature_fst/snd`: for a `C¹` covariant derivative and a `C²` field `Z`, the curvature is `TensorialAt` in each of its first two arguments.
- `CovariantDerivative.mdifferentiableAt_apply`: for a `C¹` covariant derivative, `∇_X σ` is differentiable at `x` when `σ` is `C²` and `X` is differentiable at `x`.
Most of the code I'm planning to upstream into mathlib4 is already proved in https://github.com/korbonits/ricci-flow-blueprint
---
AI disclosure
- level: Level 5 / Level 6 in [the link shared](https://www.visidata.org/blog/2026/ai/#self-assessed-ai-level-for-contributions) I feel confident about the math but I am still learning Lean itself
- code: most of the Lean in this PR was drafted by Claude Code (statements, proofs, docstrings).
- direction and review: I chose the contribution, made the decisions, reviewed every line, and wrote all GitHub/Zulip comments.
|
new-contributor
t-differential-geometry
LLM-generated
|
167/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Curvature.lean |
2 |
3 |
['github-actions', 'korbonits'] |
ocfnash assignee:ocfnash |
2-50451 2 days ago |
20-35301 20 days ago |
20-35477 20 days |
0 |
| 45523 |
kim-em author:kim-em |
feat(Tactic): add opt-in droppable hypothesis linter |
Add the opt-in `linter.droppableHypotheses` linter. Lean's unused-variable linter detects unused parameters; this also finds parameters the existing proof uses but can replace when re-elaborated. For example, after removing `[Nonempty α]`, `infer_instance` can derive it from `[Inhabited α]`.
```lean
import Mathlib.Tactic.Linter.DroppableHypotheses
set_option linter.droppableHypotheses true
```
Each trial deletes one theorem parameter and re-elaborates the unchanged statement and proof in isolated command state. Section variables and grouped binders are supported. Trials reject `sorry` dependencies and changed statements. Findings are independent; reported parameters may not all be removable together. Options control heartbeats and JSONL survey output.
---
Known limitation: dropping a category instance in `CategoryTheory/Sites/Descent/IsPrestack.lean` triggers exponential metavariable dependency traversal in Lean and still times out. Large surveys need an external process timeout. A dependent-section guard avoids leanprover/lean4#16125. Arbitrary IO during replay is not undone.
:robot: Prepared with Codex.
|
LLM-generated
t-linter
|
617/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/DroppableHypotheses.lean,MathlibTest/Linter/DroppableHypotheses.lean,MathlibTest/Linter/DroppableHypothesesCategoryTheory.lean |
5 |
1 |
['github-actions'] |
thorimur assignee:thorimur |
2-50449 2 days ago |
9-42693 9 days ago |
9-42700 9 days |
0 |
| 45751 |
vihdzp author:vihdzp |
chore: rename `Ordinal.type_eq_zero_of_empty` → `Ordinal.type_of_isEmpty` |
The predicate for empty types is called `IsEmpty`, not `Empty`. And it's even more confusing considering `type_empty` also exists.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-set-theory
easy
|
7/4 |
Mathlib/SetTheory/Ordinal/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
2-50170 2 days ago |
2-50228 2 days ago |
2-50155 2 days |
0 |
| 43811 |
emlis42 author:emlis42 |
feat(Analysis/SpecialFunctions): add complex Lambert W function |
This PR adds complex Lambert W function, and proves basic bijectivity.
## Main definitions
* `Complex.LambertW.domain k`: the domain of the `k`-th branch in the z-plane.
* `Complex.LambertW.range k`: the range of the `k`-th branch in the w-plane.
* `Complex.LambertW.index hw`: the unique index of the branch containing `w ≠ -1`.
* `Complex.lambertW k`: the `k`-th branch `W_ k` of the Lambert W function.
## Main results
* `Complex.LambertW.existsUnique_mem_range_mul_exp_eq`: every point in the domain of a branch has a
unique preimage in its range.
* `Complex.LambertW.bijOn_mul_exp_range_domain`:
`w ↦ w * cexp w` is a bijection from `range k` to `domain k`.
* `Complex.lambertW_mul_exp_of_mem_range`:
`W_ k (w * cexp w) = w` for `w ∈ range k`.
* `Complex.lambertW_mul_exp_lambertW_of_mem_domain`:
`W_ k z * cexp (W_ k z) = z` for `z ∈ domain k`.
* `Complex.eq_mul_exp_iff_exists_eq_lambertW`: `z = w * cexp w` if and only if `w = W_ k z` for
some branch `k` with `z ∈ domain k`.
* `Complex.eq_index_of_mem_lambertW`: the branch index in the previous statement is
unique whenever `w ≠ -1`.
## Notations
* `W_ k` is `Complex.lambertW k`.
* `W₀` is the principal branch `W_ 0`.
* `W₋₁` is `W_ (-1)`.
Discussed here: [adding the Complex LambertW function](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/adding.20the.20Complex.20LambertW.20function/with/622137962)
---
I asked LLM some proof details like `im_eq_zero_of_arg_add_im_eq_pi_of_mul_exp_mem` |
t-analysis |
1059/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Exp.lean,Mathlib/Analysis/SpecialFunctions/LambertW/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,docs/references.bib |
6 |
11 |
['Multramate', 'SnirBroshi', 'emlis42', 'github-actions', 'wwylele'] |
nobody |
2-49558 2 days ago |
19-5306 19 days ago |
55-19201 55 days |
2 |
| 43886 |
gabriel-turinici author:gabriel-turinici |
feat(Analysis/Asymptotics): add Filter.Tendsto.weighted_cesaro_smul |
Adds `Filter.Tendsto.weighted_cesaro_smul`, a weighted (Toeplitz-type) generalization of `Filter.Tendsto.cesaro_smul`: if `S k → L` and `w k ≥ 0` has divergent partial sums, the weighted running average of `S` w.r.t. `w` also tends to `L`. Recovers `cesaro_smul` as the `w ≡ 1` case. Also adds `weighted_cesaro`, the real-valued convenience wrapper mirroring `cesaro`.
This is a small building block toward a planned follow-up PR formalizing Kronecker's lemma, at its turn needed in some stochastic analysis setting.
---
**AI disclosure**: this proof was developed using formatting assistance, library search and code corrections from Claude Code (Claude Sonnet 5) and a personal LLM automation. Alternative, shorter, proofs can be obtained with `IsLittleO`-style but that style seems too recent for me now.
[](https://gitpod.io/from-referrer/) |
t-analysis
new-contributor
LLM-generated
|
81/0 |
Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean |
1 |
2 |
['github-actions'] |
nobody |
2-49557 2 days ago |
53-60145 53 days ago |
53-60072 53 days |
0 |
| 36239 |
plp127 author:plp127 |
feat(FieldTheory/KrullTopology): define uniform group structure on galois group |
Endow the galois group of a field extension `Gal(L/K)` with the structure of a uniform group. Use this to prove some properties of the galois group earlier, for example, that the galois group is compact is immediate, and in more generality than the version proved in `FieldTheory/Galois/Profinite`. Deprecate some material which used to be used to define the krull topology, but is now unused since the krull topology comes out of the uniform structure.
---
- [x] depends on: #39759
- [x] depends on: #42152
- [x] depends on: #42154
- [x] depends on: #42141
- [x] depends on: #42117
- [x] depends on: #42163
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
tech debt
increases-technical-debt
label:t-algebra$ |
465/228 |
Mathlib/FieldTheory/AbsoluteGaloisGroup.lean,Mathlib/FieldTheory/Galois/Infinite.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/FieldTheory/KrullTopology.lean,Mathlib/NumberTheory/Cyclotomic/CyclotomicCharacter.lean |
5 |
47 |
['acmepjz', 'dagurtomas', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'plp127', 'vihdzp'] |
nobody |
2-49553 2 days ago |
23-70739 23 days ago |
99-52275 99 days |
0 |
| 45744 |
vihdzp author:vihdzp |
feat: tag `OrderEmbedding.strictMono` as `gcongr` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order
easy
|
1/0 |
Mathlib/Order/Hom/Basic.lean |
1 |
3 |
['github-actions', 'plp127', 'vihdzp'] |
nobody |
2-46187 2 days ago |
2-66613 2 days ago |
2-66540 2 days |
0 |
| 45619 |
Zetetic-Dhruv author:Zetetic-Dhruv |
chore: rename `inter_eq_left` and `inter_eq_right` to `inter_eq_left_iff` and `inter_eq_right_iff` |
- `Set.inter_eq_left`, `Set.inter_eq_right`, `Finset.inter_eq_left` and `Finset.inter_eq_right` are renamed to `inter_eq_left_iff` and `inter_eq_right_iff`, with deprecated aliases.
|
new-contributor |
141/126 |
Archive/Imo/Imo2021Q1.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Mathlib/Algebra/Algebra/Spectrum/Quasispectrum.lean,Mathlib/Algebra/Order/Antidiag/FinsuppEquiv.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicTopology/SimplicialSet/Degenerate.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Normed/Group/AddCircle.lean,Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean,Mathlib/Analysis/SpecialFunctions/Gamma/BohrMollerup.lean,Mathlib/Combinatorics/Additive/AP/Three/Defs.lean,Mathlib/Combinatorics/Additive/ETransform.lean,Mathlib/Combinatorics/Additive/VerySmallDoubling.lean,Mathlib/Combinatorics/Graph/Connected/EdgeCut.lean,Mathlib/Combinatorics/Matroid/Closure.lean,Mathlib/Combinatorics/Matroid/Minor/Delete.lean,Mathlib/Combinatorics/SetFamily/FourFunctions.lean,Mathlib/Combinatorics/SetFamily/Shatter.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Data/Finset/Lattice/Basic.lean,Mathlib/Data/Finset/Sups.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Set/Subset.lean,Mathlib/Dynamics/TopologicalEntropy/Semiconj.lean,Mathlib/Geometry/Euclidean/Altitude.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/LocalInvariantProperties.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/LinearAlgebra/LinearIndependent/Defs.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Order.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Function/UnifTight.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Periodic.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Map.lean,Mathlib/MeasureTheory/Integral/PeakFunction.lean,Mathlib/MeasureTheory/Integral/RieszMarkovKakutani/Real.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Measure/Haar/Unique.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/MeasureTheory/VectorMeasure/Operations.lean,Mathlib/MeasureTheory/VectorMeasure/Order.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Defs.lean,Mathlib/NumberTheory/LSeries/AbstractFuncEq.lean,Mathlib/NumberTheory/SumPrimeReciprocals.lean,Mathlib/Order/Interval/Set/Fin.lean,Mathlib/Order/Interval/Set/Image.lean,Mathlib/Order/Interval/Set/OrdConnected.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Probability/Distributions/SetBernoulli.lean,Mathlib/Probability/Process/HittingTime.lean,Mathlib/RingTheory/Lasker.lean,Mathlib/Topology/Algebra/InfiniteSum/Defs.lean,Mathlib/Topology/Baire/LocallyCompactRegular.lean,Mathlib/Topology/CWComplex/Classical/Basic.lean,Mathlib/Topology/CWComplex/Classical/Finite.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Compactness/SigmaCompact.lean,Mathlib/Topology/Connected/Basic.lean,Mathlib/Topology/Connected/Clopen.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Connected/TotallyDisconnected.lean,Mathlib/Topology/Constructible.lean,Mathlib/Topology/Covering/Basic.lean,Mathlib/Topology/FiberBundle/Trivialization.lean,Mathlib/Topology/Irreducible.lean,Mathlib/Topology/LocallyClosed.lean,Mathlib/Topology/MetricSpace/Pseudo/Pi.lean,Mathlib/Topology/MetricSpace/Thickening.lean,Mathlib/Topology/NoetherianSpace.lean,Mathlib/Topology/OpenPartialHomeomorph/IsImage.lean,Mathlib/Topology/QuasiSeparated.lean,Mathlib/Topology/Separation/SeparatedNhds.lean,Mathlib/Topology/Sets/VietorisTopology.lean,Mathlib/Topology/UniformSpace/CompactConvergence.lean |
80 |
6 |
['Zetetic-Dhruv', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
2-42851 2 days ago |
2-58359 2 days ago |
4-31362 4 days |
0 |
| 44598 |
kirill-kondrashov author:kirill-kondrashov |
feat(LinearAlgebra/ExteriorPower): add API for HodgeStar |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
This is a follow-up of the https://github.com/leanprover-community/mathlib4/pull/43140 which stated a few TODO points.
This PR implements the first TODO point
* Add API to obviate the need to supply the volume element in the presence of `Module.Oriented`.
GPT 6 Luna Max was used for initial brainstorming (as well as Mathlib API investigation on the existing relevant constructions), mainly overwritten and refactored manually. |
t-algebra
LLM-generated
new-contributor
label:t-algebra$ |
98/10 |
Mathlib.lean,Mathlib/LinearAlgebra/ExteriorPower/HodgeStar.lean,Mathlib/LinearAlgebra/ExteriorPower/Orientation.lean,Mathlib/LinearAlgebra/Orientation.lean |
4 |
21 |
['github-actions', 'kirill-kondrashov', 'ocfnash', 'themathqueen'] |
nobody |
2-23982 2 days ago |
2-23990 2 days ago |
30-67274 30 days |
0 |
| 45748 |
joelriou author:joelriou |
chore(SetTheory): make `Cardinal.fact_isRegular_aleph0` a global instance |
See [#mathlib4 > Fact instances @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Fact.20instances/near/636383477)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
|
6/16 |
Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Inner/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Presentable.lean,Mathlib/CategoryTheory/Presentable/Basic.lean,Mathlib/CategoryTheory/Presentable/Directed.lean,Mathlib/CategoryTheory/Presentable/Finite.lean,Mathlib/CategoryTheory/Presentable/IsCardinalFiltered.lean,Mathlib/CategoryTheory/Presentable/LocallyPresentable.lean,Mathlib/CategoryTheory/SmallObject/IsCardinalForSmallObjectArgument.lean,Mathlib/SetTheory/Cardinal/Regular.lean |
10 |
7 |
['github-actions', 'joelriou', 'leanprover-radar', 'vihdzp'] |
nobody |
2-14230 2 days ago |
2-56347 2 days ago |
2-56274 2 days |
0 |
| 45763 |
vihdzp author:vihdzp |
chore(SetTheory/ZFC/VonNeumann): add stacks attribute |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-set-theory |
1/0 |
Mathlib/SetTheory/ZFC/VonNeumann.lean |
1 |
1 |
['github-actions'] |
nobody |
2-8902 2 days ago |
2-8962 2 days ago |
2-8889 2 days |
0 |
| 45762 |
Nicola9Falciola author:Nicola9Falciola |
chore(LinearAlgebra/Matrix/SpecialLinearGroup): remove `set_option backward.isDefEq` and clean up |
---
This PR removes `set_option backward.isDefEq.respectTransparency` and `set_option backward.isDefEq.respectTransparency.types` from 5 lemmas.
It adds a reusable theorem `Matrix.SpecialLinearGroup.eta_fin_two` to help removing one in a more clean way, this the analog of `Matrix.eta_fin_two`.
Moreover:
- `S_mul_S_eq` is now just `ext` + `simp` removing the ugly long `simp only` chain.
- `SL2_inv_expl` is one `simp` line.
- l.285 improve maintainability avoiding explicit `.ext` calls.
- l.691 the extra `rw` is merged with the one above.
- `T_mul_apply_one` is just the term as it does not need `simpa`
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
tech debt
label:t-algebra$ |
25/29 |
Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean |
1 |
1 |
['github-actions'] |
nobody |
2-8784 2 days ago |
2-8838 2 days ago |
2-8765 2 days |
0 |
| 44983 |
tb65536 author:tb65536 |
feat(Analysis/Normed/Unbundled/GelfandRadiusNorm): the Gelfand radius as an algebra norm |
This PR uses the Gelfand radius to construct an algebra norm. This is used in #42985 to construct extensions of absolute values.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #44973
|
t-analysis
tech debt
|
105/2 |
Mathlib.lean,Mathlib/Analysis/Matrix/GelfandRadius.lean,Mathlib/Analysis/Normed/Unbundled/GelfandRadiusNorm.lean,Mathlib/LinearAlgebra/Dimension/Finite.lean |
4 |
8 |
['github-actions', 'mathlib-dependent-issues', 'tb65536', 'themathqueen'] |
nobody |
2-8060 2 days ago |
2-8110 2 days ago |
17-26483 17 days |
1 |
| 45764 |
vihdzp author:vihdzp |
feat: there exist ordinals with arbitrarily large cofinality |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
It's a cute result, and it's an easy stacks tag to fill, if we're going for completionism. |
t-set-theory
easy
|
5/0 |
Mathlib/SetTheory/Cardinal/Regular.lean |
1 |
1 |
['github-actions'] |
nobody |
2-7242 2 days ago |
2-7301 2 days ago |
2-7228 2 days |
0 |
| 43307 |
Parcly-Taxel author:Parcly-Taxel |
feat: quaternion operations with respect to coordinates |
Add `QuaternionAlgebra.mk_{zero,one,natCast,intCast}` and `QuaternionAlgebra.{mk_mul_mk,star_mk}` as convenience lemmas for working with quaternions whose coordinates are explicitly given. These lemmas allow [the following code](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Transparency.20problem.20with.20quaternions/near/618254305) to work:
```lean
import Mathlib.Analysis.Quaternion
import Mathlib.NumberTheory.Real.GoldenRatio
noncomputable section
open goldenRatio Quaternion
/-- The unit icosian `(1 + i + j + k) / 2`, which has order 6. -/
def icosian6 : ℍˣ where
val := ⟨2⁻¹, 2⁻¹, 2⁻¹, 2⁻¹⟩
inv := ⟨2⁻¹, -2⁻¹, -2⁻¹, -2⁻¹⟩
val_inv := by norm_num
inv_val := by norm_num
/-- The unit icosian `(φ + i + ψ*j) / 2`, which has order 10. -/
def icosian10 : ℍˣ where
val := ⟨φ / 2, 2⁻¹, ψ / 2, 0⟩
inv := ⟨φ / 2, -2⁻¹, -ψ / 2, 0⟩
val_inv := by rw [mk_mul_mk, ← QuaternionAlgebra.mk_one]; grind
inv_val := by rw [mk_mul_mk, ← QuaternionAlgebra.mk_one]; grind
/-- The unit icosians. -/
def Icosian : Subgroup ℍˣ := Subgroup.closure {icosian6, icosian10}
``` |
t-algebra label:t-algebra$ |
18/0 |
Mathlib/Algebra/Quaternion.lean |
1 |
3 |
['Parcly-Taxel', 'github-actions', 'themathqueen'] |
nobody |
2-4998 2 days ago |
2-5048 2 days ago |
68-80182 68 days |
0 |
| 45290 |
Parcly-Taxel author:Parcly-Taxel |
feat: transitivity properties of graphs |
`isSymmetric_of_transitive_of_odd_degree` was first written by Codex (GPT-6.1 Sol), then heavily hand-optimised. The rest is entirely human-written. |
t-combinatorics
LLM-generated
|
228/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Transitive.lean,docs/references.bib |
4 |
23 |
['Parcly-Taxel', 'SnirBroshi', 'github-actions'] |
nobody |
2-4506 2 days ago |
2-4747 2 days ago |
14-23500 14 days |
1 |
| 45766 |
user202729 author:user202729 |
chore: change many dependent if-then-else to independent |
Search for `if _` in the codebase and drop the `_ :` when applicable.
This doesn't affect proofs, but for definitions, dependent and independent if-then-else are not definitionally equal.
---
Thoughts?
I learnt that the difference between `if _ : … then … else …` and `if … then … else …` is the former is a dependent if-then-else (`dite`) and the latter is `ite`. Not all `_ : ` can be dropped this way because sometimes the hypothesis is not named explicitly, yet still used by typeclass synthesis… so we cannot apply a blanket linter rule, but perhaps “lint if independent version works” is a reasonable (but not necessarily cheap) option. “Lint if the variable is unused” seem pretty reasonable (we already have an unused-variable linter).
The one that use the most unnecessary dependent if-then-else is `Mathlib/CategoryTheory/Limits/Shapes/SequentialProduct.lean`. In this case, a lot of `dite_eq_ite` simp lemmas was removed as well, cleaning up the proof.
In case of `Mathlib/Algebra/EuclideanDomain/Defs.lean`, the `hr` hypothesis turns out to be used (in the `else` branch), so the appropriate use case appears to be to rename it to `hr`. (Linter proposal: if an underscore-prefixed variable is used, suggest to make it no longer underscore-prefixed.)
|
new-contributor |
32/35 |
Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/CategoryTheory/Limits/Shapes/SequentialProduct.lean,Mathlib/GroupTheory/Perm/Sign.lean |
4 |
2 |
['github-actions'] |
nobody |
2-1131 2 days ago |
2-3047 2 days ago |
2-2974 2 days |
0 |
| 45220 |
xroblot author:xroblot |
feat(RingTheory/Polynomial/Cyclotomic/Eval): when is `ζ - 1` a unit |
For a primitive `n`-th root of unity `ζ` in a domain, `ζ - 1` is a unit precisely when the `n`-th cyclotomic polynomial takes a unit value at `1`. Consequently `ζ - 1` is a unit when `n > 1` is not a prime power, and, when `algebraMap ℤ R` is a local homomorphism (e.g. for rings of integers), only then. We also add `eval_one_cyclotomic_not_isPrimePow`, stated with `IsPrimePow`, and deduce the existing `eval_one_cyclotomic_not_prime_pow` from it.
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude.
|
t-ring-theory |
85/26 |
Mathlib/NumberTheory/NumberField/Cyclotomic/Basic.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Eval.lean,Mathlib/RingTheory/RootsOfUnity/CyclotomicUnits.lean |
3 |
10 |
['github-actions', 'tb65536', 'xroblot'] |
nobody |
2-693 2 days ago |
2-736 2 days ago |
13-85306 13 days |
0 |
| 45770 |
timbrigham author:timbrigham |
fix(Tactic/DeriveFintype): make deriving Fintype work again for enum types |
I have a project that makes use of the enum type, and recently upgraded from version 4.30 to 4.35.
That broke my project's compilation, due to the behavior ticket #44243 ([link](https://github.com/leanprover-community/mathlib4/issues/44243), reported by @marcopist). The fix was suggested by Paul Reichert in the Zulip thread [Fintype Derive broken](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Fintype.20Derive.20broken/with/613313718).
The fix handles how constructors are handled with no arguments The most notable of which is making sure that the argument type is properly cast
Fixes #44243
---
For the record, I used AI, strictly Claude, in the creation of this pull request, both finding the existing bug report as well as the remediation process.
I'm learning lean in the process, and my larger drive is finding ways of making AI generated code safer and more robust.
|
tech debt
t-meta
new-contributor
|
3/5 |
Mathlib/Tactic/DeriveFintype.lean,MathlibTest/DeriveFintype.lean |
2 |
2 |
['github-actions'] |
nobody |
1-82482 1 day ago |
1-82584 1 day ago |
1-82511 1 day |
0 |
| 45582 |
vihdzp author:vihdzp |
feat: interaction between `WithBot.succ` and `Order.pred` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #45578 |
t-order
maintainer-merge
|
25/5 |
Mathlib/Order/SuccPred/Basic.lean,Mathlib/Order/SuccPred/WithBot.lean |
2 |
10 |
['YaelDillies', 'chenson2018', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] |
nobody |
1-80150 1 day ago |
2-13867 2 days ago |
3-133 3 days |
0 |
| 45617 |
Zetetic-Dhruv author:Zetetic-Dhruv |
feat(Data/Set/Card): `ncard` of `image2`, and sets of a given `ncard` |
- `Set.ncard_image2_le : (image2 f s t).ncard ≤ s.ncard * t.ncard` for finite `s` and `t`.
- `Set.Infinite.exists_superset_ncard_eq` now also says that the superset is finite; new `Set.exists_subset_ncard_eq`, and `Set.exists_superset_ncard_eq` and `Set.exists_ncard_eq` in an infinite type.
- `Set.ncard_eq_zero_iff : s.ncard = 0 ↔ s = ∅ ∨ s.Infinite`, as a `simp` lemma.
- `Data/Set/Card.lean` gets `set_option linter.style.longFile 1700`.
|
t-data
new-contributor
maintainer-merge
|
27/2 |
Mathlib/Data/Set/Card.lean |
1 |
10 |
['YaelDillies', 'Zetetic-Dhruv', 'github-actions'] |
nobody |
1-78743 1 day ago |
2-58238 2 days ago |
4-52605 4 days |
0 |
| 45761 |
VascoSch92 author:VascoSch92 |
fix(Data/ENat/Defs): derive `Repr` for `ℕ∞` |
Small fix.
`ENat` is a `def` for `WithTop ℕ`, so `WithTop.instRepr` is not found and `repr (5 : ℕ∞)` fails to elaborate.
Fixes #45740.
---
AI use: OpenHands (Claude Opus 5.5) located the cause, and propsed the solution. I verified by hand that the proposed solution was correct.
|
t-data
new-contributor
LLM-generated
maintainer-merge
|
1/1 |
Mathlib/Data/ENat/Defs.lean |
1 |
4 |
['github-actions', 'grunweg'] |
nobody |
1-78575 1 day ago |
2-11390 2 days ago |
2-11317 2 days |
0 |
| 42102 |
CoolRmal author:CoolRmal |
feat(Probability/Process): the pathwise variation process |
This PR adds the pathwise **variation process** `variationProcess` of a stochastic process `X` from a starting time `a`, together with its basic properties and the measurability / adaptedness of the variation process at each time.
## Main definitions
* `variationProcess`: the pathwise variation of `X` from a starting time `a`, as a process.
## Main results
* `variationProcess_nonneg`, `monotone_variationProcess`: nonnegativity (above the start time) and monotonicity of the variation process.
* `MeasureTheory.StronglyAdapted.measurable_variationProcess_of_continuous`, `..._of_isRightContinuous` and `..._of_isLeftContinuous`: for `a ≤ t`, the value at time `t` of the variation process of a strongly adapted process is `𝓕 t`-measurable, assuming continuous / right-continuous / left-continuous paths respectively.
The general ingredients are added to the topology library:
* `eVariationOn.eq_iSup_fin` (`Topology/EMetricSpace/BoundedVariation`): the variation as a supremum over monotone tuples `Fin (n + 1) → α`, whose index type is countable when `s` is countable.
* `eVariationOn.eq_of_dense_of_continuousOn`, `..._of_isRightContinuousOn`, `..._of_isLeftContinuousOn`: the variation of a (one-sided) continuous function over `s` can be computed on a dense subset of `s`, which in the one-sided cases must contain the one-sided isolated points.
* `nhdsGT_subtype_eq_bot_iff` / `nhdsLT_subtype_eq_bot_iff` (`Topology/Order/LeftRightNhds`): being isolated on the right in the subspace `↥s` is the same as being isolated on the right within `s`.
The continuous case uses hereditary separability of the index (`Set.separableSpace`) to compute the variation over a countable dense set of times; the one-sided cases use second countability through `countable_setOfPred_isolated_right_within`.
The material was developed for the Brownian motion project (https://github.com/RemyDegenne/brownian-motion/pull/494). Created with the help of Claude Code, carefully reviewed and golfed by myself.
- [x] depends on: #45544 (adds `IsRightContinuousOn`)
|
brownian
t-measure-probability
|
314/0 |
Mathlib.lean,Mathlib/Probability/Process/VariationProcess.lean,Mathlib/Topology/EMetricSpace/BoundedVariation.lean,Mathlib/Topology/Order/LeftRightNhds.lean |
4 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
1-77941 1 day ago |
1-78096 1 day ago |
4-17313 4 days |
0 |
| 45771 |
darkhipo author:darkhipo |
feat(MeasureTheory): bochner product integral over Measure.infinitePi |
# PR — Bochner product integral over `Measure.infinitePi`
The proof is a single new file, `Mathlib/MeasureTheory/Integral/InfinitePiProduct.lean`, carrying
the Mathlib module header (`module` / `public import` / `public section`), the Apache 2.0 licence
line with `Copyright (c) 2026 darkhipo`, and `namespace MeasureTheory`.
---
## Proposed title
`feat(MeasureTheory): Bochner product integral over Measure.infinitePi`
## Proposed file placement
`Mathlib/MeasureTheory/Integral/InfinitePiProduct.lean`
Imports (verified sufficient — the module compiles with exactly these, under
`set_option autoImplicit false`, in the modern `module`/`public import` form):
```lean
public import Mathlib.Analysis.SpecialFunctions.Log.Summable
public import Mathlib.MeasureTheory.Integral.DominatedConvergence
public import Mathlib.MeasureTheory.Integral.Lebesgue.Map
public import Mathlib.MeasureTheory.Integral.Pi
public import Mathlib.Probability.ProductMeasure
```
Rationale for placement: it is the infinite-index companion of
`MeasureTheory.integral_fintype_prod_eq_prod` (`Mathlib/MeasureTheory/Integral/Pi.lean`), and it
integrates over `Measure.infinitePi` (`Mathlib/Probability/ProductMeasure.lean`).
## Main results
```lean
theorem MeasureTheory.integral_finset_prod_infinitePi
(hf : ∀ i, AEStronglyMeasurable (f i) (μ i)) (s : Finset ι) :
∫ x, ∏ i ∈ s, f i (x i) ∂(Measure.infinitePi μ) = ∏ i ∈ s, ∫ x, f i x ∂(μ i)
theorem MeasureTheory.ae_summable_norm_sub_one_infinitePi
(hf : ∀ i, AEStronglyMeasurable (f i) (μ i))
(hsum : ∑' i, ∫⁻ x, (‖f i x - 1‖₊ : ℝ≥0∞) ∂(μ i) ≠ ∞) :
∀ᵐ x ∂(Measure.infinitePi μ), Summable fun i => ‖f i (x i) - 1‖
-- the general form: a norm bound family instead of a flat 1
theorem MeasureTheory.hasProd_integral_tprod_infinitePi_of_norm_le
(hf : ∀ i, AEStronglyMeasurable (f i) (μ i))
(hC0 : ∀ i, 0 ≤ C i)
(hb : ∀ i, ∀ᵐ x ∂(μ i), ‖f i x‖ ≤ C i)
(hC : Summable fun i => ‖C i - 1‖)
(hsum : ∑' i, ∫⁻ x, (‖f i x - 1‖₊ : ℝ≥0∞) ∂(μ i) ≠ ∞) :
HasProd (fun i => ∫ x, f i x ∂(μ i)) (∫ x, ∏' i, f i (x i) ∂(Measure.infinitePi μ))
-- the ≤ 1 case, kept as a corollary (this is the form the campaign consumes)
theorem MeasureTheory.hasProd_integral_tprod_infinitePi
(hf) (hb : ∀ i, ∀ᵐ x ∂(μ i), ‖f i x‖ ≤ 1) (hsum) : HasProd …
theorem MeasureTheory.integral_tprod_infinitePi (hf) (hb) (hsum) :
∫ x, ∏' i, f i (x i) ∂(Measure.infinitePi μ) = ∏' i, ∫ x, f i x ∂(μ i)
```
(`ι` countable, `[∀ i, MeasurableSpace (X i)]`, `μ : (i : ι) → Measure (X i)` with
`[∀ i, IsProbabilityMeasure (μ i)]`, `f : (i : ι) → X i → ℂ`, `C : ι → ℝ`.)
## Why it is not already there
* finite index, product-measure form: `MeasureTheory.integral_fintype_prod_eq_prod`;
* finite index, independence form: `ProbabilityTheory.iIndepFun.integral_prod_eq_prod_integral`
(and the more general `iIndepFun.integral_fun_prod_comp` for functions of independent random
variables), in `Mathlib/Probability/Independence/Integration.lean` — this is the closest existing
relative of the present file, and it already contains the reduction of independence to the pi
product measure (`iIndepFun.map_fun_eq_pi_map`) that the infinite-index statement takes as its
starting point;
* nonnegative integrands, infinite index: derivable from `lintegral_tsum` (monotone convergence);
* Bochner/`ℂ` integrands, infinite index: **absent** — and monotone convergence does not apply,
because the products are not nonnegative. The proof needs an honest convergence argument.
## Relation to `iIndepFun.integral_prod_eq_prod_integral`
That theorem and its neighbors state the **finite-index** identity `μ[∏ i, X i] = ∏ i, μ[X i]` for
a family of **mutually independent random variables** `X : (i : ι) → Ω → 𝓧 i` on a common
probability space (`[Fintype ι]`, `iIndepFun X μ`, measurability only — at finite index no
convergence content is even statable). The present file is the **countable-index, infinite-product,
bare-product-measure** analogue, and the delta is exactly what finiteness hid:
* **index**: `[Fintype ι]` there vs `[Countable ι]` with genuinely infinite `∏'` here — the
conclusion is a `HasProd` convergence statement, so a.e. summability of `∑ i, ‖f i (x i) - 1‖`
(Tonelli) and `multipliable_one_add_of_summable` enter, neither of which has a finite-index
counterpart;
* **framing**: there, hypotheses on a common probability space plus `iIndepFun`; here, no
random-variable layer at all — the statement is directly about `Measure.infinitePi μ`, the
product-measure form their `iIndepFun.map_fun_eq_pi_map` reduces independence to;
* **bounds**: there, none needed; here, the `‖f i x‖ ≤ C i` bound family with
`∑ i, ‖C i - 1‖` summable is what makes dominated convergence along `Finset ι` work ("Why the
bound family is `∑ ‖C i - 1‖`" below).
Conversely, neither statement subsumes the other: the independence file cannot state an infinite
product, and this file does not require (or produce) the `iIndepFun` common-space packaging.
## Proof sketch (for the review)
1. **Finite subsets.** `(Measure.infinitePi μ).map (Finset.restrict s) = Measure.pi (μ|_s)`
(`Measure.infinitePi_map_restrict`), then `integral_fintype_prod_eq_prod` and
`measurePreserving_eval_infinitePi` for the single coordinates.
2. **A.e. summability of the deviations.** Tonelli: `∫⁻ x, ∑' i, ‖f i (x i) - 1‖` equals
`∑' i, ∫⁻ x, ‖f i x - 1‖` (`lintegral_tsum` + `lintegral_map'`), finite by hypothesis, hence
`∑ i, ‖f i (x i) - 1‖` is summable for a.e. `x`.
3. **A.e. multipliability.** `multipliable_one_add_of_summable` applied to `f i (x i) - 1`.
4. **Domination.** `‖∏ i ∈ s, f i (x i)‖ = ∏ i ∈ s, ‖f i (x i)‖ ≤ ∏ i ∈ s, C i`, and
`C i ≤ exp (C i - 1)` for `C i ≥ 0` gives
`∏ i ∈ s, C i ≤ exp (∑ i ∈ s, (C i - 1)) ≤ exp (∑' i, ‖C i - 1‖)` — a constant independent of `s`.
5. **Limit.** `tendsto_integral_filter_of_dominated_convergence` along `atTop : Filter (Finset ι)`,
dominated by that constant, pointwise convergence from step 3; the finite-subset integrals are
rewritten by step 1. `HasProd.tprod_eq` turns the convergence form into the equation form.
## Why the bound family is `∑ ‖C i - 1‖` and not `∑ C i`
A product of bounds is not additive in them: a factor `C i < 1` scales the bound *down*, a factor
`> 1` scales it *up*, so summability of `C` alone does not bound `∏ i ∈ s, C i` uniformly. The
log-scale hypothesis `Summable fun i => ‖C i - 1‖` is exactly the statement that the family `C` is
multipliable, made explicit; `exp (∑' i, ‖C i - 1‖)` is then the dominator. The flat case is
`C ≡ 1` (where `∑ ‖C i - 1‖ = 0` and the dominator is `1`), which is the corollary above.
## Review-risk notes (honest)
* The `𝕜`-generalization (any `RCLike 𝕜` / `NormedField` instead of `ℂ`) is **open**; `ℂ` is what
the use case needs. The proofs use only the normed-field structure plus completeness of `ℂ`, so
the generalization is plausible but not attempted here.
* The summability hypothesis `∑' i, ∫⁻ x, ‖f i x - 1‖₊ ≠ ∞` is chosen because
`multipliable_one_add_of_summable` consumes the real-valued `Summable fun i => ‖f i (x i) - 1‖`
and `ENNReal.tsum_coe_ne_top_iff_summable` converts between them. A reviewer may prefer a
hypothesis phrased through `Summable` on `ℝ≥0`-norms directly; the two are equivalent.
* The bound family is not required to be *sharp* or to converge to `1`; `C i` may be any
nonnegative family with `∑ ‖C i - 1‖` summable, including `C i < 1` for every `i`.
* No `sorry`, no `native_decide`, no new axioms: every declaration reports
`[propext, Classical.choice, Quot.sound]`, including the generalized theorem (receipt:
`receipt/axcheck_infinitepiproduct.txt`, regenerated by `receipt/axcheck_infinitepiproduct.lean`).
## AI usage disclosure (Mathlib requires one)
This contribution was produced by an AI agent (a large language model driven by the `opencode`
harness) inside a human-directed formalization campaign; the human, darkhipo, reviewed and is
submitting it. Every statement was checked by the Lean kernel; the proofs are machine-generated
and human-readable but not human-written. The docstrings and this description were written by the
agent.
## Checklist (Mathlib's)
- [x] depends on no new axioms / `sorry`-free (kernel-verified, `#print axioms` receipt attached
for all five declarations)
- [x] builds with the narrowest import set that works (five `public import`s, each exercised)
- [x] `set_option autoImplicit false` clean
- [x] no linter warnings in this file (rebuilt clean: `lake build Pg182D2` reports no warning or
error for `Pg182D2/InfinitePiProduct.lean`)
- [x] docstrings on every declaration, module docstring present, `## Main results` section
- [x] naming matches Mathlib conventions (`integral_*_prod_*`, `ae_*`, `hasProd_*`, `_of_norm_le`)
- [x] Mathlib module form (`module`, `public import`, `public section`)
- [x] licence header complete: `Copyright (c) 2026 darkhipo. All rights reserved.`,
Apache 2.0, `Authors: darkhipo`
- [ ] reviewed by a human Lean expert — **not done**. Nothing in this file has been read by a
human with Lean expertise; the human submitting it has reviewed the *statement* and the
campaign's use of it, not the proof scripts.
- [ ] argued as `Mathlib`-worthy by a maintainer — that is the reviewers' call, not ours.
## Verification against upstream `master` at PR time
Copied into `Mathlib/MeasureTheory/Integral/InfinitePiProduct.lean` on branch `infinite-pi-product`,
based on `master` @ `71441a1480` (`chore: update Mathlib dependencies 2026-11-07`),
toolchain `leanprover/lean4:v4.36.0-rc2`.
* `lake exe cache get` + `lake build Mathlib.MeasureTheory.Integral.InfinitePiProduct`
→ `Build completed successfully`, **no warnings** (the build runs Mathlib's standard linter set,
including `linter.style.longLine`, the header linter and `unusedSectionVars`).
* `lake exe lint-style Mathlib.MeasureTheory.Integral.InfinitePiProduct` → exit code 0.
* `lake exe mk_all` → the generated `Mathlib.lean` import line is byte-identical to the committed one.
* `#print axioms` on the upstream copy: all five declarations depend only on
`[propext, Classical.choice, Quot.sound]`, i.e. no `sorry` and no new axioms.
Adaptations required by upstream `master` (the proof itself is unchanged from the version that
compiled against the pin used during the campaign):
1. removed `set_option autoImplicit false` — `autoImplicit` is `false` globally in `lakefile.lean`;
2. `AEMeasurable.nnnorm` → `AEMeasurable.nnNorm` (two sites) and `coe_nnnorm` → `coe_nnNorm`,
which are deprecated at `master`;
3. two lines reflowed to satisfy the 100-character `linter.style.longLine`;
4. added the import to `Mathlib.lean`.
|
t-measure-probability
new-contributor
|
224/0 |
Mathlib.lean,Mathlib/MeasureTheory/Integral/InfinitePiProduct.lean |
2 |
3 |
['github-actions'] |
nobody |
1-75480 1 day ago |
1-79436 1 day ago |
1-79363 1 day |
0 |
| 44334 |
JovanGerb author:JovanGerb |
feat: `@[gcongr]` for `eq_top_mono` and friends |
This PR tags lemma `eq_top_mono` and various similar lemmas with `@[gcongr]`. This lets us use `grw` in places where we couldn't before. The supported maximal/minimal constants are `⊤`, `⊥`, `(∅ : Set _)`, `Set.univ`, `0`, `1`, each on either side of an equality `=` and an inequality `≠`.
`subset_eq_empty` is renamed to `eq_empty_of_subset`, to match `eq_univ_of_subset`.
Performance note: `@[gcongr]` lemmas are indexed only by the relation and head constand, which for these lemmas is `→` and `=` or `≠`. So, it will need to try all 12 available lemmas in these cases. I do not think that this will cause any noticeable performance issue. If it does, we can consider a more detailed indexing of `@[gcongr]` lemmas.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order
t-meta
maintainer-merge
|
68/21 |
Mathlib/Algebra/Order/IsBotOne.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Lattice/Bounded.lean,Mathlib/MeasureTheory/Measure/AddContent/CompactSystem.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/SetDissipate.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Compactness/CompactSystem.lean,Mathlib/Topology/Compactness/Lindelof.lean,Mathlib/Topology/MetricSpace/Thickening.lean,Mathlib/Topology/Separation/Regular.lean,MathlibTest/Tactic/GRewrite.lean |
12 |
5 |
['github-actions', 'joneugster', 'leanprover-radar'] |
nobody |
1-74904 1 day ago |
1-74951 1 day ago |
39-39730 39 days |
1 |
| 45777 |
tb65536 author:tb65536 |
chore(GroupTheory/*): use `IsAddFG` and `IsMulFG` in various files |
This PR goes through various files and replaces the eight old finiteness predicates (e.g., `Group.FG`, `AddSubmonoid.FG`, etc...) with the two new finiteness predicates `IsAddFG` and `IsMulFG`. This will help prepare the way for the eventual deprecation of the old finiteness predicates.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
t-group-theory
label:t-algebra$ |
34/32 |
Mathlib/GroupTheory/Commutator/Finite.lean,Mathlib/GroupTheory/Descent.lean,Mathlib/GroupTheory/FinitelyPresentedGroup.lean,Mathlib/GroupTheory/Generators.lean,Mathlib/GroupTheory/Rank.lean,Mathlib/GroupTheory/Schreier.lean,Mathlib/GroupTheory/Torsion.lean |
7 |
1 |
['github-actions'] |
nobody |
1-74111 1 day ago |
1-74158 1 day ago |
1-74085 1 day |
0 |
| 45498 |
ShirinShafaie author:ShirinShafaie |
feat(LinearAlgebra): identify Sp₂(R) with SL₂(R) |
This PR resolves the TODO in `Mathlib.LinearAlgebra.SymplecticGroup`:
> For `n = 1` the symplectic group coincides with the special linear group.
I formalised this as an explicit group isomorphism between the two-dimensional symplectic group and `SL₂(R)`, over any commutative ring.
The proof is developed in five steps:
1. **Determinant formula.** I first established the two-by-two determinant formula for matrices indexed by `ι ⊕ ι`, where `[Unique ι]`. This gives the reusable public theorem `Matrix.det_unique_sum_unique`, with `Matrix.det_fin_one_sum_fin_one` as its specialisation to `Fin 1`.
2. **Symplectic characterisation.** Using this formula and the existing block-matrix characterisation of symplectic matrices, I proved that a matrix with these indices is symplectic if and only if its determinant is one. This gives `SymplecticGroup.mem_unique_iff_det_eq_one` and its `Fin 1` specialisation, `mem_fin_one_iff_det_eq_one`.
3. **Group equivalence.** The determinant-one characterisation then gives `finOneEquivSpecialLinear`, a group equivalence between the symplectic group and the special linear group on the same indices, `Fin 1 ⊕ Fin 1`, without changing the underlying matrices.
4. **Reindexing to `Fin 2`.** The symplectic matrices are indexed by `Fin 1 ⊕ Fin 1`, while the usual `SL₂(R)` is indexed by `Fin 2`. I initially implemented the required general reindexing equivalence for special linear groups in [PR 45495](https://github.com/leanprover-community/mathlib4/pull/45495). It was then pointed out that [PR 44094](https://github.com/leanprover-community/mathlib4/pull/44094) was already developing a more general `Matrix.SpecialLinearGroup.reindex` API, so PR 45495 was closed in favour of that work. Now that PR 44094 has merged, this PR uses the resulting `SpecialLinearGroup.reindex` equivalence directly. Composing it with `finOneEquivSpecialLinear` gives `finOneEquivSL2`, closing the original TODO.
5. **Supporting lemmas and integration.** I added simp lemmas describing the forward and inverse equivalences, replaced the original TODO with a pointer to the new result, and included the new module in `Mathlib.lean`.
An additional result of this approach is that the determinant formula and symplectic characterisation are now available as public theorems for arbitrary singleton index types, rather than being restricted to `Fin 1`.
I came across this TODO while taking the Shared Graduate Course, *Elements of Mathematical Formalization and Auto-Formalization with Lean*, at the Fields Institute. I started working on it as a project alongside the course exercises, and discussed an earlier version in a private review. That feedback led me to investigate several alternatives, including the generalisation to singleton index types.
Throughout the project, I worked with OpenAI Codex and GPT-6 to explore proof approaches, work through Lean implementation details and test alternative formulations. I evaluated these against the mathematics and the existing mathlib definitions, made the final choices about the theorem statements, proof structure and supporting lemmas, and personally ran the builds and verification in VS Code. I take responsibility for the final formalisation and the code submitted here.
**Checks:** `lake build Mathlib.LinearAlgebra.SymplecticGroup.SpecialLinearGroup`, `lake exe mk_all --check`, and `lake exe lint-style` all passed.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #44094 |
LLM-generated
t-algebra
new-contributor
label:t-algebra$ |
149/2 |
Mathlib.lean,Mathlib/LinearAlgebra/SymplecticGroup.lean,Mathlib/LinearAlgebra/SymplecticGroup/SpecialLinearGroup.lean |
3 |
5 |
['ShirinShafaie', 'github-actions', 'mathlib-dependent-issues', 'themathqueen'] |
nobody |
1-73317 1 day ago |
1-74644 1 day ago |
7-14571 7 days |
0 |
| 43565 |
Parcly-Taxel author:Parcly-Taxel |
refactor(Archive/FriendshipGraphs): golf everything |
Also remove the file's `set_option`s and `@[expose]`. Like #43434, no deprecations are added since this is a leaf file in Archive. |
tech debt |
103/292 |
Archive/Wiedijk100Theorems/FriendshipGraphs.lean |
1 |
9 |
['Parcly-Taxel', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
1-72751 1 day ago |
1-72817 1 day ago |
62-34518 62 days |
0 |
| 44139 |
Nicola9Falciola author:Nicola9Falciola |
refactor(LinearAlgebra/Matrix/Transvection): generalize the pivot elimination step to commutative rings |
---
The elimination steps in the pivot algorithm in `Matrix.Pivot` reduce to a diagonal
block the last row of a matrix using transvections only need the last diagonal
coefficient to be a unit over the base ring not that the ring itself is field.
This PR generalizes this step to work over a commutative ring `R`
instead of a field.
I also add the following API :
- `listTransvecCol_mul_mul_listTransvecRow_last_diag`: the elimination does not change the
last diagonal coefficient
- `exists_isTwoBlockDiagonal_and_last_eq_of_isUnit`
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
LLM-generated
label:t-algebra$ |
130/108 |
Mathlib/LinearAlgebra/Matrix/Transvection.lean |
1 |
3 |
['Nicola9Falciola', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
1-70891 1 day ago |
1-70939 1 day ago |
46-22593 46 days |
1 |
| 45681 |
felixpernegger author:felixpernegger |
chore(Archive): remove unused hypothesis |
Removes unused hypothesis from #45673 in Archive. |
LLM-generated
IMO
|
39/13 |
Archive/Imo/Imo1982Q3.lean,Archive/Imo/Imo1985Q2.lean,Archive/Imo/Imo2006Q5.lean,Archive/Imo/Imo2013Q5.lean,Archive/Imo/Imo2024Q1.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/HeronsFormula.lean,Archive/Wiedijk100Theorems/SolutionOfCubicQuartic.lean |
8 |
2 |
['github-actions', 'wwylele'] |
jsm28 assignee:jsm28 |
1-69619 1 day ago |
4-50558 4 days ago |
4-50485 4 days |
1 |
| 44148 |
wwylele author:wwylele |
refactor(Geometry/Euclidean): promote Heron's formula to main mathlib |
Now we have a proper definition of triangle's area, we can make Heron's formula an official theorem in the main library. The original proof was mostly unchanged, with only the following modification
**1. Index change**
The naming and indexing was changed from
```
let a := dist p₁ p₂
let b := dist p₃ p₂
let c := dist p₁ p₃
```
to
```
let a := dist p₁ p₂
let b := dist p₁ p₃
let c := dist p₂ p₃
```
This is to follow the existing indexing convention of "1-2, 1-3, 2-3" for triangles. We have similar order for `h₁₂ h₁₃ h₂₃`
**2. Generalized to all degenerate cases**: Removed `(h1 : p₁ ≠ p₂) (h2 : p₃ ≠ p₂)`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #41220 |
file-removed
t-euclidean-geometry
maintainer-merge
|
72/71 |
Archive.lean,Archive/Wiedijk100Theorems/HeronsFormula.lean,Mathlib/Geometry/Euclidean/Volume/Triangle.lean,docs/100.yaml |
4 |
10 |
['SnirBroshi', 'copilot-pull-request-reviewer', 'github-actions', 'jsm28', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'wwylele'] |
jsm28 assignee:jsm28 |
1-69257 1 day ago |
1-69333 1 day ago |
12-45179 12 days |
2 |
| 45776 |
tb65536 author:tb65536 |
chore: use `IsAddFG` and `IsMulFG` in various files |
This PR goes through various files and replaces the eight old finiteness predicates (e.g., `Group.FG`, `AddSubmonoid.FG`, etc...) with the two new finiteness predicates `IsAddFG` and `IsMulFG`. This will help prepare the way for the eventual deprecation of the old finiteness predicates.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
t-group-theory
label:t-algebra$ |
77/75 |
Mathlib/Algebra/AffineMonoid/Irreducible.lean,Mathlib/GroupTheory/FiniteAbelian/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Finite.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Basic.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Defs.lean,Mathlib/NumberTheory/FrobeniusNumber.lean,Mathlib/NumberTheory/NumberField/Units/DirichletTheorem.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/Finiteness/Cardinality.lean,Mathlib/RingTheory/Finiteness/Defs.lean,Mathlib/RingTheory/Finiteness/Finsupp.lean,Mathlib/RingTheory/Localization/InvSubmonoid.lean |
12 |
1 |
['github-actions'] |
nobody |
1-65966 1 day ago |
1-66011 1 day ago |
1-67422 1 day |
0 |
| 45781 |
tb65536 author:tb65536 |
feat(RingTheory/Unramified/Finite): add `groupIdempotent` |
This PR adds `groupIdempotent`, which is the product of `inertiaIdempotent` over the group `G`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
I don't fully understand the larger theory behind these idempotents, so if anyone has a better sense of how this math should be formalized, please let me know! They are used in #44964. |
t-ring-theory
t-algebra
label:t-algebra$ |
49/0 |
Mathlib/RingTheory/Unramified/Finite.lean |
1 |
1 |
['github-actions'] |
riccardobrasca assignee:riccardobrasca |
1-64982 1 day ago |
1-67664 1 day ago |
1-67591 1 day |
1 |
| 45192 |
tb65536 author:tb65536 |
feat(Analysis/Normed/Field/WithAbs): the degree of an extension of absolute values |
This PR adds the definition of the degree of an extension of absolute values.
This is part of a larger project to formalize the general ramification theory of absolute values.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
t-analysis
label:t-algebra$ |
51/5 |
Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/Analysis/Normed/Ring/WithAbs.lean |
2 |
9 |
['github-actions', 'mathlib-merge-conflicts', 'tb65536', 'themathqueen'] |
nobody |
1-61425 1 day ago |
2-8198 2 days ago |
14-49522 14 days |
0 |
| 41905 |
wwylele author:wwylele |
feat(FieldTheory): relrank lemma about sup |
The main lemma I want is `(A ⊔ C).relrank (B ⊔ C) ≤ A.relrank B`. Added some trivial lemma along the way.
---
AI usage disclosure: this was originally drafted by Aristotle, then cleaned up by me.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
LLM-generated
label:t-algebra$ |
91/0 |
Mathlib/FieldTheory/Relrank.lean |
1 |
15 |
['copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'sharky564', 'tb65536', 'wwylele'] |
ocfnash assignee:ocfnash |
1-61142 1 day ago |
1-61142 1 day ago |
102-40739 102 days |
0 |
| 45782 |
JovanGerb author:JovanGerb |
perf(Linter/SyntaxBased): use tail recursion |
This PR optimizes the syntax folding function to use a tail call on the last recursive call. This avoids having to catch and re-throw any hypothetical error, and allows for a tail call optimization.
This was suggested by Thomas Murrills at #44496.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-linter |
7/1 |
Mathlib/Tactic/Linter/SyntaxBased.lean |
1 |
4 |
['JovanGerb', 'github-actions', 'leanprover-radar'] |
nobody |
1-60806 1 day ago |
1-63210 1 day ago |
1-63137 1 day |
0 |
| 44876 |
Nicola9Falciola author:Nicola9Falciola |
feat(LinearAlgebra/Matrix): add the `prodEquiv` for `Matrix`, `GL` and `SL` |
---
I am adding the equivalence for `Matrix` , `GL` and `SL` induced by taking the product of types:
- `prodEquiv` for `Matrix m n (α × β) ≃ (Matrix m n α) × (Matrix m n β)` and all its variants.
- API on the determinant for the compatibility between `det` and `prodEquiv`
- the equivalence for `GL n (R × S) ≃* GL n R × GL n S`
- the equivalence for `SL n (R × S) ≃* SL n R × SL n S`
This PR follows up from the discussion in #43945. I am also uniformizing the API of `Equiv` in `transpose`
and in `piEquiv`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
158/9 |
Mathlib/Data/Matrix/Basic.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean |
4 |
82 |
['Nicola9Falciola', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
1-58094 1 day ago |
1-58138 1 day ago |
24-48294 24 days |
0 |
| 45785 |
JonasReif author:JonasReif |
chore(Order/BooleanAlgebra/Set): derive `disjoint_sdiff_inter` from the Boolean algebra lemma |
`Set.disjoint_sdiff_inter` carried a TODO asking for a proof via a Boolean algebra lemma. The general lemma `disjoint_inf_sdiff` already exists, so the set version is now its `symm`. The statement is unchanged.
---
Created with Claude Opus 5.5 in Claude Code.
|
t-order
new-contributor
|
1/3 |
Mathlib/Order/BooleanAlgebra/Set.lean |
1 |
2 |
['github-actions'] |
nobody |
1-57564 1 day ago |
1-57612 1 day ago |
1-57539 1 day |
0 |
| 45787 |
JovanGerb author:JovanGerb |
perf(Linter/UnusedTactic): use tail recursion |
This PR optimizes the unused tactic linter with a tail call optimization, analogously to #45782.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-linter |
8/2 |
Mathlib/Tactic/Linter/UnusedTactic.lean |
1 |
3 |
['JovanGerb', 'github-actions', 'leanprover-radar'] |
nobody |
1-55113 1 day ago |
1-55163 1 day ago |
1-55090 1 day |
0 |
| 44980 |
vihdzp author:vihdzp |
refactor: deprecate `le_zero_iff` and `zero_lt_iff` |
...in favor of the more descriptive names `nonpos_iff_eq_zero` and `pos_iff_ne_zero`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Alternatively, if the consensus is that having multiple names for this is not a problem, I can instead remove the TODOs and create additive aliases for these.
|
t-order |
99/110 |
Mathlib/Algebra/Lie/Solvable.lean,Mathlib/Algebra/Lie/Weights/Chain.lean,Mathlib/Algebra/Order/IsBotOne.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Proper.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Asymptotics/Basic.lean,Mathlib/Analysis/Distribution/TemperateGrowth.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/SpecialFunctions/ArithmeticGeometricMean.lean,Mathlib/Combinatorics/Extremal/RuzsaSzemeredi.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Equitabilise.lean,Mathlib/Computability/Primrec/Basic.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/GroupTheory/Rank.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/KleinFour.lean,Mathlib/LinearAlgebra/Dimension/Finite.lean,Mathlib/MeasureTheory/Integral/Bochner/VitaliCaratheodory.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean,Mathlib/NumberTheory/FLT/Polynomial.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Probability/Martingale/Upcrossing.lean,Mathlib/RingTheory/ChainOfDivisors.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation/Valuation.lean,Mathlib/RingTheory/Discriminant.lean,Mathlib/RingTheory/DividedPowers/SubDPIdeal.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/Perfection.lean,Mathlib/RingTheory/Polynomial/Resultant/Basic.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/IsDiscreteValuationRing.lean,Mathlib/RingTheory/Valuation/Integers.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/Algebra/Polynomial.lean,Mathlib/Topology/Algebra/ValuativeRel/Completion.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean,Mathlib/Topology/Connected/HausdorffMeasure.lean,Mathlib/Topology/MetricSpace/Antilipschitz.lean |
45 |
6 |
['Vierkantor', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen', 'vihdzp'] |
nobody |
1-53095 1 day ago |
1-53151 1 day ago |
15-76964 15 days |
0 |
| 35561 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory): power series over regular local ring |
In this PR, we proved that power series over regular local ring is again regular local ring.
Same for finite multivariable power series.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #28682
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
70/0 |
Mathlib.lean,Mathlib/RingTheory/RegularLocalRing/PowerSeries.lean |
2 |
6 |
['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
mattrobball assignee:mattrobball |
1-50461 1 day ago |
18-8913 18 days ago |
75-79739 75 days |
3 |
| 42046 |
LegaSage author:LegaSage |
feat(Polynomial): add Wronskian linear dependence lemmas |
This extends the polynomial Wronskian API of Baek and Lee from the existing coprime case to arbitrary polynomials over a characteristic-zero field.
It adds:
* an explicit nontrivial scalar relation for any pair with zero Wronskian, including zero-polynomial edge cases;
* scalar-multiple corollaries when either polynomial is nonzero;
* the weighted derivative corollary that solutions of `a * f' - n * a' * f = 0` are scalar multiples of `a ^ n` when `a ≠ 0`.
The proof factors out the polynomial gcd and applies the existing `IsCoprime.wronskian_eq_zero_iff` theorem. This PR makes no novelty claim; it packages standard consequences of the existing Baek–Lee coprime Wronskian API.
-------
The implementation was prepared with assistance from OpenAI Codex and reviewed and submitted by LegaSage.
|
t-ring-theory
new-contributor
large-import
LLM-generated
|
96/1 |
Mathlib/RingTheory/Polynomial/Wronskian.lean |
1 |
2 |
['github-actions'] |
alreadydone assignee:alreadydone |
1-50458 1 day ago |
108-47695 108 days ago |
108-47622 108 days |
0 |
| 43166 |
WenrongZou author:WenrongZou |
feat(MvPowerSeries/pderiv): add `pderiv_map` and `pderiv_rename` |
In this PR, we prove `MvPowerSeries.map` and `MvPowerSeries.rename` commute with taking derivative.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
large-import
t-ring-theory
|
29/2 |
Mathlib/RingTheory/MvPowerSeries/Derivative.lean |
1 |
1 |
['github-actions'] |
mattrobball assignee:mattrobball |
1-50455 1 day ago |
62-48714 62 days ago |
74-15654 74 days |
1 |
| 44005 |
seewoo5 author:seewoo5 |
feat(MonotoneConvergence): strict versions of `ge_of_tendsto` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Strict versions of `Monotone.ge_of_tendsto` and similar theorems: `StrictMono.gt_of_tendsto`, `StrictMono.lt_of_tendsto`, `StrictAnti.lt_of_tendsto`, `StrictAnti.gt_of_tendsto`. These require extra hypothesis such as `NoMaxOrder β` or `NoMinOrder β`. Claude is used to find the hypothesis and write initial proofs.
Context: In Sphere packing project, there is an inequality of the form $f(t) < L$ for a strictly decreasing function $f$ on $(0, \infty)$ with $\lim_{t \to 0^+} f(t) = L$. Currently, this is proved by $f(t) < f(t/2) \le L$, where the last step uses `ge_of_tendsto`. With new theorems in this PR, we don't need to consider $f(t/2)$ anymore (by using `StrictAnti.gt_of_tendsto`).
[](https://gitpod.io/from-referrer/)
|
t-topology
LLM-generated
sphere-packing
|
28/0 |
Mathlib/Topology/Order/MonotoneConvergence.lean |
1 |
1 |
['github-actions'] |
ocfnash assignee:ocfnash |
1-50454 1 day ago |
12-6850 12 days ago |
49-81932 49 days |
0 |
| 44269 |
ROTARTSI82 author:ROTARTSI82 |
feat(Dynamics): periodic orbits must jump up and down |
If x is a periodic point and not a fixed point, there exists some b in its periodic orbit such that b < f b, and some b' such that f b' < b'.
---
This change was motivated by the following proof, a special case of Sharkovskii's theorem:
```lean
theorem exists_isFixedPt_of_continuous_of_mem_periodicPts' {α : Type*}
[ConditionallyCompleteLinearOrder α] [TopologicalSpace α] [OrderTopology α] [DenselyOrdered α]
{f : α → α} {x₀ : α} (hx₀ : x₀ ∈ periodicPts f)
(hf : Continuous f) :
∃(c : α), IsFixedPt f c := by
by_cases hfixed : IsFixedPt f x₀
· exact ⟨x₀, hfixed⟩
obtain ⟨a, _, ha⟩ := exists_lt_map_of_mem_periodicPts hx₀ hfixed
obtain ⟨b, _, hb⟩ := exists_map_lt_of_mem_periodicPts hx₀ hfixed
obtain ⟨c, _, hc⟩ := exists_mem_uIcc_isFixedPt hf.continuousOn ha.le hb.le
exact ⟨c, hc⟩
```
Would this theorem itself or something similar be wanted in mathlib?
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
new-contributor
t-dynamics
|
39/0 |
Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/Order/Monotone/Basic.lean |
2 |
3 |
['ROTARTSI82', 'github-actions'] |
sgouezel assignee:sgouezel |
1-50453 1 day ago |
41-53615 41 days ago |
42-27912 42 days |
0 |
| 45245 |
YaelDillies author:YaelDillies |
feat(Algebra): right-divisibility under a hom |
Also move `map_dvd_iff` to the same file and deprecate `map_dvd_iff_dvd_symm` since it is stated in terms of `MulEquivClass.toMulEquiv` and is not essentially used in mathlib.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
21/28 |
Mathlib/Algebra/Divisibility/Hom.lean,Mathlib/Algebra/Ring/Divisibility/Basic.lean,Mathlib/RingTheory/UniqueFactorizationDomain/NormalizedFactors.lean |
3 |
3 |
['YaelDillies', 'github-actions', 'themathqueen'] |
eric-wieser assignee:eric-wieser |
1-50452 1 day ago |
13-78682 13 days ago |
16-8512 16 days |
2 |
| 45248 |
YaelDillies author:YaelDillies |
feat(Order): constructor for `OrderIso` from a bijective order-preserving map |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
20/0 |
Mathlib/Order/Hom/Basic.lean |
1 |
1 |
['github-actions', 'themathqueen'] |
Komyyy assignee:Komyyy |
1-50451 1 day ago |
13-13345 13 days ago |
16-7025 16 days |
1 |
| 45437 |
zblore author:zblore |
feat(Analysis/Normed/Module): projective space is Hausdorff and compact |
This shows `ℙ K V` is Hausdorff when continuous linear forms separate the points of `V`. Here `K` is Hausdorff with continuous multiplication and each unit of `K` acts continuously on `V`. It also shows `ℙ K V` is compact when `V` is a finite-dimensional topological vector space over a locally compact nontrivially normed field like ℝ, ℂ or the p-adics.
Hausdorff uses the open quotient map from #44117. Two nonzero vectors span the same line exactly when `f v * g w = f w * g v` for all continuous linear forms `f` and `g`. The same-line relation is an intersection of closed sets. Compactness goes through the compact shell in a proper normed space and then a basis.
It also adds an instance that continuous linear forms separate points in a finite-dimensional Hausdorff topological vector space over a complete nontrivially normed field. Mathlib's existing instances need ℝ or ℂ. With it `ℙ K V` is compact and Hausdorff for every finite-dimensional Hausdorff topological vector space `V` over a complete locally compact nontrivially normed field.
The Hausdorff part is adapted from the Tau Ceti project's [projective space file](https://github.com/TauCetiProject/TauCeti/blob/06c598245d42977f79bf09aafd3154dd215c23cd/TauCeti/Topology/Algebra/Projectivization.lean). The compactness proof and the separating dual instance are new.
This covers the compactness and Hausdorff instances for real projective space in #25999 but not its main result.
This is the next step towards the Fubini-Study metric and measure. I asked on Zulip whether this file is in the right place: https://leanprover.zulipchat.com/#narrow/id/634983707
---
I used Claude to draft the Lean against the existing Mathlib API. I used Codex and Claude to review it. I've reworked and checked every line myself and can explain all of it.
|
t-topology
t-analysis
LLM-generated
new-contributor
|
151/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Module/Projectivization.lean |
2 |
3 |
['github-actions', 'zblore'] |
ADedecker assignee:ADedecker |
1-50448 1 day ago |
11-67436 11 days ago |
11-67363 11 days |
0 |
| 45520 |
EzequielS2 author:EzequielS2 |
feat: add growth of finitely generated groups |
Add word-ball growth, domination, and independence of the generating set |
t-geometric-group-theory
new-contributor
|
184/0 |
Mathlib.lean,Mathlib/Geometry/Group/Growth/Basic.lean |
2 |
4 |
['EzequielS2', 'github-actions', 'tb65536'] |
ADedecker assignee:ADedecker |
1-50447 1 day ago |
1-72292 1 day ago |
6-40301 6 days |
3 |
| 45550 |
user202729 author:user202729 |
refactor(AlgebraicGeometry/EllipticCurve): make baseChange transparent notation |
- Make `baseChange` an `abbrev`, so the user doesn't need to explicitly unfold `baseChange`.
- Explicitly document that `W⁄A` is equivalent to `W.map <| algebraMap R A`, so users seeing a `map` lemma applied on `W⁄S` at a use site can see why.
- Rename `S` to `A` for consistency.
---
As discussed in https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Expose.20public.20section.20bad.3F/with/635418753 , `W⁄A` is meant to be transparent, so I think this change is appropriate.
This explicitly changes the meaning of `baseChange`, making code that previously name `baseChange` explicitly backwards incompatible, but I think this is fine.
The affected proofs are fixed. I think the impact is rather minimal.
The four copies of the notation in fact return the same thing, but for example `Affine R` is defined to be an `abbrev` of `WeierstrassCurve R`, so if one writes `(W⁄S).map`, the method `map` is looked up in namespace `Affine`. Without the notation in namespace `Affine`, it would implicitly convert `W` to `WeierstrassCurve`, then lookup the method `map` in namespace `WeierstrassCurve`.
The `name` is added to the notation that needs linking from `baseChangeAux` to make the link in the HTML page works. (Similar to https://github.com/leanprover-community/mathlib4/pull/45129)
|
t-algebraic-geometry
new-contributor
|
29/41 |
Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/LFunction.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Reduction.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Weierstrass.lean |
6 |
7 |
['JX-Mo', 'github-actions', 'user202729'] |
kim-em assignee:kim-em |
1-50446 1 day ago |
8-37888 8 days ago |
8-37815 8 days |
0 |
| 44853 |
dkaysin author:dkaysin |
feat(Geometry/Group): relate the word metric to the Cayley graph distance |
This PR constructs the Cayley graph (realized as a `SimpleGraph`) for a group `G` with respect to a generating family `P : Group.Generators G ι`, implements the link between walks in the Cayley graph and words, and establishes equivalence of the word metric and the distance on the Cayley graph.
---
Resolves TODO from [#43118](https://github.com/leanprover-community/mathlib4/pull/43118).
Implementation details:
* `SimpleGraph` was chosen vs `Quiver/Schreier` because it has a more comprehensive API at the moment. More context: [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Relate.20the.20word.20metric.20to.20the.20distance.20in.20the.20Cayley.20graph/with/631376709).
* To accommodate possible future implementation for `Quiver/Schreier`, I've included "Simple" in the names of definitions and theorems (e.g., `cayleySimpleGraph`).
* Because simple graph has no loops, in several places we have to check that a letter/generator is not trivial.
Use of AI: I used Claude Opus 5.5 to help me with gathering context, designing API and implementation of several proofs.
* I used AI to brainstorm and compare API design ideas based on the context from previous Zulip threads and existing repo code.
* I used AI for suggesting parts of the proofs for `exists_walk_of_word` and `exists_word_of_walk` lemmas.
* I used AI for checking docstrings for consistency.
All AI-generated content was reviewed and edited by me.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #45359 [additivization of dependencies] |
t-geometric-group-theory
new-contributor
LLM-generated
|
161/3 |
Mathlib.lean,Mathlib/Geometry/Group/CayleySimpleGraph.lean,Mathlib/Geometry/Group/README.md,Mathlib/Geometry/Group/WordMetric.lean |
4 |
16 |
['dkaysin', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536', 'vlad902'] |
nobody |
1-49561 1 day ago |
11-71899 11 days ago |
25-7162 25 days |
0 |
| 27707 |
amellendijk author:amellendijk |
feat(NumberTheory/SelbergSieve): define Selberg's weights and prove basic results |
This PR continues the work from #23635.
Original PR: https://github.com/leanprover-community/mathlib4/pull/23635
- [x] depends on: #27702 |
t-number-theory |
139/2 |
Mathlib/NumberTheory/Divisors.lean,Mathlib/NumberTheory/SelbergSieve.lean |
2 |
36 |
['AlexKontorovich', 'MichaelStollBayreuth', 'ajirving', 'amellendijk', 'github-actions', 'loefflerd', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] |
nobody |
1-49559 1 day ago |
64-71437 64 days ago |
126-42777 126 days |
0 |
| 42587 |
joelriou author:joelriou |
feat(AlgebraicTopology/SimplicialSet): the fundamental groupoid, as a pseudofunctor |
The main definition in this PR is the pseudofunctor `SSet.FundamentalGroupoid.pseudofunctor : LocallyDiscrete SSet.{u} ⥤ᵖ Cat.{u, u}` which sends a simplicial set to its fundamental groupoid.
---
- [x] depends on: #42576
- [x] depends on: #42523
- [x] depends on: #42528
- [x] depends on: #42529
- [x] depends on: #42527
- [x] depends on: #42526
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology |
106/2 |
Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialSet/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/FundamentalGroupoid/Pseudofunctor.lean |
3 |
5 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
1-49558 1 day ago |
25-66979 25 days ago |
25-66910 25 days |
0 |
| 45775 |
Parcly-Taxel author:Parcly-Taxel |
chore: deprecate `NumberTheory.Basic` |
…by reproving `dvd_sub_pow_of_dvd_sub` (using Codex, with the result hand-golfed) in `Algebra.Ring.GeomSum`. |
t-algebra
LLM-generated
label:t-algebra$ |
16/44 |
Mathlib/Algebra/Ring/GeomSum.lean,Mathlib/NumberTheory/Basic.lean,Mathlib/RingTheory/WittVector/Frobenius.lean,Mathlib/RingTheory/WittVector/StructurePolynomial.lean |
4 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
1-48810 1 day ago |
1-48866 1 day ago |
1-62501 1 day |
0 |
| 45297 |
vihdzp author:vihdzp |
refactor: deprecate `DivisibleBy` in favor of a `Prop`-valued typeclass |
We deprecate `DivisibleBy` in favor of a new typeclass `IsDivisibleBy`, which is `Prop`-valued. This lets us avoid diamonds in circumstances where division is not unique or canonical, e.g. quotient groups. See [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Instances.20of.20DivisibleBy/with/566631239) for further discussion and motivation.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
The deprecation linter doesn't seem to understand deprecations nested in `to_additive` attributes. Or maybe I'm doing them wrong? |
t-algebra
increases-technical-debt
label:t-algebra$ |
233/101 |
Mathlib/Algebra/Category/Grp/EnoughInjectives.lean,Mathlib/Algebra/Category/Grp/Injective.lean,Mathlib/Algebra/Group/Monoid.lean,Mathlib/Algebra/Module/CharacterModule.lean,Mathlib/Dynamics/Ergodic/AddCircle.lean,Mathlib/GroupTheory/Divisible.lean,Mathlib/GroupTheory/DivisibleHull.lean,Mathlib/MeasureTheory/Measure/Haar/Unique.lean,Mathlib/Topology/Instances/AddCircle/Defs.lean |
9 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
1-48151 1 day ago |
1-48198 1 day ago |
13-45105 13 days |
0 |
| 45786 |
matt-w-horn author:matt-w-horn |
feat(Probability/Distributions): head and tail mass of the geometric distribution |
For `p ≠ 0` the geometric distribution gives `Iio m` mass `1 - (1 - p) ^ m` and `Ici m` mass `(1 - p) ^ m`. Split out of #42381.
---
Assisted-by: Claude Fable 5.1 (code), Gemini Argon (review); used in https://github.com/matt-w-horn/overload
|
t-measure-probability
LLM-generated
new-contributor
|
23/0 |
Mathlib/Probability/Distributions/Geometric.lean |
1 |
3 |
['github-actions', 'matt-w-horn'] |
nobody |
1-45146 1 day ago |
1-45209 1 day ago |
1-45136 1 day |
1 |
| 41957 |
YijunYuan author:YijunYuan |
feat(NumberTheory/Padics/Complex): add densely normed field and separable space instances |
Equip the field `ℂ_[p]` of `p`-adic complex numbers and its dense subfield
`PadicAlgCl p` (the algebraic closure of `ℚ_[p]`) with two further standard
typeclass instances.
Main additions:
* `DenselyNormedField (PadicAlgCl p)`: the norm takes values dense in the
positive reals. The witness between two given bounds `a < b` is built from an
`n`-th root `z` of `p` (which exists since `PadicAlgCl p` is algebraically
closed): choosing `n` so that `(a / b) ^ n < ‖p‖` gives `a / b < ‖z‖ < 1`, and
some integer power `z ^ m` then has norm strictly between `a` and `b`.
* `SeparableSpace (PadicAlgCl p)`: the elements algebraic over `ℚ` form a
countable dense subset. Density follows from continuity of roots — `α` is a
root of its minimal polynomial `f` over `ℚ_[p]`, and approximating the
coefficients of `f` by a polynomial `g` over the dense subfield `ℚ` yields a
root `β` of `g` (hence algebraic over `ℚ`) arbitrarily close to `α`.
* The corresponding instances `DenselyNormedField ℂ_[p]` and
`SeparableSpace ℂ_[p]` are then inferred, `ℂ_[p]` being the completion of
`PadicAlgCl p`.
Supporting general instance:
* `DenselyNormedField (UniformSpace.Completion A)` for a densely normed field
`A` with `CompletableTopField A`, since the norm on the completion extends the
norm on `A`.
The existing `NontriviallyNormedField` instances on `PadicAlgCl p` and `ℂ_[p]`
are simplified to `inferInstance`, as they now follow from the new
`DenselyNormedField` instances. |
new-contributor
t-number-theory
t-algebra
label:t-algebra$ |
123/19 |
Mathlib/Analysis/Normed/Field/Dense.lean,Mathlib/Analysis/Normed/Module/Completion.lean,Mathlib/NumberTheory/Padics/Complex.lean |
3 |
12 |
['YijunYuan', 'github-actions', 'mathlib-merge-conflicts', 'pechersky', 'riccardobrasca'] |
jjdishere assignee:jjdishere |
1-26933 1 day ago |
1-26989 1 day ago |
102-12341 102 days |
0 |
| 40736 |
tb65536 author:tb65536 |
feat(NumberTheory/NumberField/HeckeLFunction): define Hecke L-Functions |
This PR defines Hecke L-Functions.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #40735
[](https://gitpod.io/from-referrer/)
|
t-number-theory
t-algebra
label:t-algebra$ |
130/0 |
Mathlib.lean,Mathlib/NumberTheory/NumberField/HeckeLFunction.lean |
2 |
9 |
['github-actions', 'josephlr', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536'] |
riccardobrasca assignee:riccardobrasca |
1-26802 1 day ago |
2-2492 2 days ago |
73-65037 73 days |
0 |
| 43858 |
BoltonBailey author:BoltonBailey |
chore(Algebra/GroupWithZero/Units/Basic): rename three lemmas `'` -> `₀` |
These lemmas about `GroupWithZero` are analogous to unprimed lemmas about groups. This PR renames them to use the usual convention of naming such lemmas with an underscored zero.
- `div_left_inj'`
- `div_div_cancel_left'`
- `div_div_div_cancel_left'`
-----
This PR comes about as a result of using Claude to look for easy reductions to the docPrime linter.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
LLM-generated
t-algebra
awaiting-requeue
label:t-algebra$ |
28/25 |
Mathlib/Algebra/Field/ModEq.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Analysis/BoxIntegral/UnitPartition.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Metric.lean,Mathlib/Analysis/Normed/Algebra/QuaternionExponential.lean,Mathlib/Analysis/SpecialFunctions/Log/Base.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/Geometry/Euclidean/Angle/Bisector.lean,Mathlib/Geometry/Euclidean/Angle/Oriented/Affine.lean,Mathlib/NumberTheory/FLT/Basic.lean,Mathlib/NumberTheory/Height/NumberField.lean,Mathlib/NumberTheory/LSeries/HurwitzZetaEven.lean,Mathlib/NumberTheory/LSeries/ZMod.lean,Mathlib/NumberTheory/PythagoreanTriples.lean,Mathlib/Probability/Distributions/Gaussian/CharFun.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Independence.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/Topology/Instances/AddCircle/Real.lean,scripts/nolints_prime_decls.txt |
19 |
13 |
['BoltonBailey', 'felixpernegger', 'github-actions', 'grunweg', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
1-21495 1 day ago |
1-21496 1 day ago |
48-54737 48 days |
0 |
| 45789 |
ooovi author:ooovi |
chore(Geometry/Convex): generalize faces of cones to AddCommMonoid |
Generalize faces of pointed cones to `AddCommMonoid` from `AddCommGroup`
---
I missed this somehow, sorry.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-convex-geometry
easy
awaiting-requeue
|
3/3 |
Mathlib/Geometry/Convex/Cone/Face/Basic.lean,Mathlib/Geometry/Convex/Cone/Face/Lattice.lean |
2 |
2 |
['github-actions', 'grunweg', 'mathlib-bors'] |
nobody |
1-21087 1 day ago |
1-21088 1 day ago |
1-55863 1 day |
0 |
| 45406 |
astrainfinita author:astrainfinita |
feat(Order/ConditionallyCompleteLattice/WithTop): `OrderSupSet` instances on `WithTop` |
Adds `OrderSupSet (WithTop α)` and `OrderInfSet (WithTop α)` instances (and their `WithBot` duals), and cleans up the API for `sSup` and `sInf` on `WithTop`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #45402 |
tech debt
t-order
|
145/144 |
Mathlib/Order/ConditionallyCompleteLattice/WithTop.lean |
1 |
13 |
['astrainfinita', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] |
nobody |
1-14576 1 day ago |
1-39636 1 day ago |
3-53891 3 days |
7 |
| 45788 |
JovanGerb author:JovanGerb |
chore: rename `nndist` to `nnDist` |
This PR renames `nndist` to `nnDist` to satisfy the new naming convention.
The commits are as follows
1. replaces `nndist` by `nnDist` everywhere except in existing deprecations
2. adds deprecations for all declarations
3. changes `edist_nnDist` to `eDist_nnDist` to avoid a future deprecation
4. adds a deprecation for `NNDist.nndist` itself.
5. adds deprecations for lemmas created with the `alias ⟨_, _⟩ := _` syntax.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
|
831/479 |
Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/Complex/AbsMax.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Complex/Norm.lean,Mathlib/Analysis/Convex/MetricSpace.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean,Mathlib/Analysis/InnerProductSpace/TensorProduct.lean,Mathlib/Analysis/LocallyConvex/Bounded.lean,Mathlib/Analysis/Normed/Affine/AddTorsor.lean,Mathlib/Analysis/Normed/Affine/Isometry.lean,Mathlib/Analysis/Normed/Algebra/Unitization.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/AddTorsor.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Constructions.lean,Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Analysis/Normed/Lp/Finsupp.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/Normed/MulAction.lean,Mathlib/Analysis/Normed/Operator/NNNorm.lean,Mathlib/Analysis/Normed/Ring/Lemmas.lean,Mathlib/Geometry/Convex/ConvexSpace/CompactSpaceStdSimplex.lean,Mathlib/Geometry/Euclidean/Projection.lean,Mathlib/InformationTheory/Hamming.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Metric.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Integral/Bochner/SumMeasure.lean,Mathlib/MeasureTheory/Integral/BoundedContinuousFunction.lean,Mathlib/MeasureTheory/Measure/FiniteMeasure.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/MeasureTheory/Measure/Portmanteau.lean,Mathlib/MeasureTheory/VectorMeasure/Integral.lean,Mathlib/Probability/BrownianMotion/Basic.lean,Mathlib/Probability/BrownianMotion/GaussianProjectiveFamily.lean,Mathlib/Topology/Algebra/InfiniteSum/ENNReal.lean,Mathlib/Topology/Algebra/MetricSpace/Lipschitz.lean,Mathlib/Topology/ContinuousMap/Bounded/Basic.lean,Mathlib/Topology/ContinuousMap/Bounded/Normed.lean,Mathlib/Topology/ContinuousMap/Compact.lean,Mathlib/Topology/ContinuousMap/Ideals.lean,Mathlib/Topology/EMetricSpace/Weak.lean,Mathlib/Topology/Instances/Rat.lean,Mathlib/Topology/MetricSpace/Algebra.lean,Mathlib/Topology/MetricSpace/Antilipschitz.lean,Mathlib/Topology/MetricSpace/Basic.lean,Mathlib/Topology/MetricSpace/Cauchy.lean,Mathlib/Topology/MetricSpace/Congruence.lean,Mathlib/Topology/MetricSpace/Defs.lean,Mathlib/Topology/MetricSpace/Dilation.lean,Mathlib/Topology/MetricSpace/Holder.lean,Mathlib/Topology/MetricSpace/IsometricSMul.lean,Mathlib/Topology/MetricSpace/Isometry.lean,Mathlib/Topology/MetricSpace/Lipschitz.lean,Mathlib/Topology/MetricSpace/ProperSpace/Lemmas.lean,Mathlib/Topology/MetricSpace/Pseudo/Basic.lean,Mathlib/Topology/MetricSpace/Pseudo/Constructions.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,Mathlib/Topology/MetricSpace/Pseudo/Pi.lean,Mathlib/Topology/MetricSpace/Similarity.lean,MathlibTest/Tactic/Basify.lean |
65 |
3 |
['JovanGerb', 'github-actions', 'joneugster'] |
nobody |
1-6366 1 day ago |
1-53407 1 day ago |
1-54568 1 day |
0 |
| 45646 |
Parcly-Taxel author:Parcly-Taxel |
feat: simultaneous Dirichlet approximation theorem |
This is an extension of `Real.exists_int_int_abs_mul_sub_le` to multiple numbers. The proof is similar.
----
I proved this along the way to proving Alon's result on [Erdős Problem 798](https://www.erdosproblems.com/forum/thread/798). Aristotle was only used for formalising _some_ parts of Alon's result – this was not one of those parts. |
t-number-theory
maintainer-merge
|
29/1 |
Mathlib/NumberTheory/DiophantineApproximation/Basic.lean |
1 |
7 |
['MichaelStollBayreuth', 'Parcly-Taxel', 'github-actions'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
1-3842 1 day ago |
1-48008 1 day ago |
5-14527 5 days |
0 |
| 45480 |
RFT-SIRM author:RFT-SIRM |
feat(Matrix): add ordered trace expansion for powers of sums |
## Summary
This PR adds a reusable ordered-word expansion for traces of powers of a sum of square matrices.
- `Matrix.orderedWordExpansion A B p` lists products obtained by choosing either `A` or `B` at each of the `p` positions.
- `Matrix.sum_orderedWordExpansion` proves that the list sums to `(A + B)^p`.
- `Matrix.trace_orderedWordExpansion` gives the corresponding trace identity.
The construction preserves the exact order of factors and retains repeated words with their full multiplicity. It does not assume that `A` and `B` commute or identify cyclically equivalent trace terms.
## Motivation
For higher-moment trace identities, expanding `(A + B)^p` requires precise bookkeeping of ordered words before cyclic trace rotations and structural vanishing arguments can be applied. This generic expansion is useful for `p = 6` and for subsequent `p = 8, 10` developments without hard-coding a particular matrix model.
This PR contains only general matrix-algebra lemmas. It does not include application-specific graph operators or claim to prove a particular moment recurrence.
## Verification
The proofs use induction on `p`, right distributivity, and the existing `Matrix.trace_list_sum` theorem. Please run the full Mathlib build and style checks on this PR. |
t-algebra
new-contributor
label:t-algebra$ |
40/0 |
Mathlib/LinearAlgebra/Matrix/Trace.lean |
1 |
2 |
['github-actions'] |
nobody |
1-2151 1 day ago |
1-2455 1 day ago |
10-61608 10 days |
0 |
| 45651 |
YaelDillies author:YaelDillies |
chore(Algebra/Polynomial): replace `Polynomial.sum` by `Finsupp.sum` |
Summing over a polynomial is not a mathematical concept.
Generated by Claude Sonnet in several rounds of reviews by myself.
Assisted-by: Claude Sonnet 5.5
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
LLM-generated
label:t-algebra$ |
449/495 |
Archive/Wiedijk100Theorems/AbelRuffini.lean,Counterexamples/Cyclotomic105.lean,Counterexamples/MonicNonRegular.lean,Mathlib/Algebra/Lie/CartanExists.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Bivariate.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/Algebra/Polynomial/CoeffMem.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Algebra/Polynomial/Degree/Support.lean,Mathlib/Algebra/Polynomial/Degree/TrailingDegree.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Algebra/Polynomial/Eval/Coeff.lean,Mathlib/Algebra/Polynomial/Eval/Defs.lean,Mathlib/Algebra/Polynomial/Eval/Degree.lean,Mathlib/Algebra/Polynomial/Eval/SMul.lean,Mathlib/Algebra/Polynomial/Expand.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/HasseDeriv.lean,Mathlib/Algebra/Polynomial/Homogenize.lean,Mathlib/Algebra/Polynomial/Identities.lean,Mathlib/Algebra/Polynomial/Inductions.lean,Mathlib/Algebra/Polynomial/Mirror.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/OfFn.lean,Mathlib/Algebra/Polynomial/Smeval.lean,Mathlib/Algebra/Polynomial/Taylor.lean,Mathlib/Algebra/Polynomial/UnitTrinomial.lean,Mathlib/Analysis/Normed/Field/Approximation.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/Real/Pi/Irrational.lean,Mathlib/Data/Nat/Choose/Lucas.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/FieldTheory/Minpoly/Basic.lean,Mathlib/FieldTheory/Minpoly/Field.lean,Mathlib/FieldTheory/RatFunc/Luroth.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Basic.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/LinearAlgebra/SModEq/Basic.lean,Mathlib/LinearAlgebra/Vandermonde.lean,Mathlib/NumberTheory/BernoulliPolynomials.lean,Mathlib/RingTheory/Adjoin/Polynomial/Basic.lean,Mathlib/RingTheory/Adjoin/PowerBasis.lean,Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/FreeCommRing.lean,Mathlib/RingTheory/Henselian.lean,Mathlib/RingTheory/IntegralClosure/Algebra/Ideal.lean,Mathlib/RingTheory/IntegralClosure/IsIntegral/Basic.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean,Mathlib/RingTheory/Localization/Integral.lean,Mathlib/RingTheory/MatrixPolynomialAlgebra.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/Content.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Roots.lean,Mathlib/RingTheory/Polynomial/DegreeLT.lean,Mathlib/RingTheory/Polynomial/Eisenstein/Criterion.lean,Mathlib/RingTheory/Polynomial/Hermite/Basic.lean,Mathlib/RingTheory/Polynomial/HilbertPoly.lean,Mathlib/RingTheory/Polynomial/Ideal.lean,Mathlib/RingTheory/Polynomial/IntegralNormalization.lean,Mathlib/RingTheory/Polynomial/IrreducibleRing.lean,Mathlib/RingTheory/Polynomial/IsIntegral.lean,Mathlib/RingTheory/Polynomial/Nilpotent.lean,Mathlib/RingTheory/Polynomial/Quotient.lean,Mathlib/RingTheory/Polynomial/Resultant/Basic.lean,Mathlib/RingTheory/Polynomial/ScaleRoots.lean,Mathlib/RingTheory/Polynomial/UniversalFactorizationRing.lean,Mathlib/RingTheory/PolynomialAlgebra.lean,Mathlib/RingTheory/PowerBasis.lean,Mathlib/RingTheory/PowerSeries/Trunc.lean,Mathlib/RingTheory/PowerSeries/WeierstrassPreparation.lean,Mathlib/RingTheory/ReesAlgebra.lean,Mathlib/RingTheory/Smooth/IntegralClosure.lean,Mathlib/RingTheory/Spectrum/Prime/Polynomial.lean,Mathlib/RingTheory/Trace/Basic.lean,Mathlib/RingTheory/ZariskisMainTheorem.lean,Mathlib/Tactic/ComputeDegree.lean,Mathlib/Topology/Algebra/Polynomial.lean,MathlibTest/ComputeDegree.lean |
85 |
1 |
['github-actions'] |
nobody |
1-744 1 day ago |
1-793 1 day ago |
2-51144 2 days |
0 |
| 41308 |
sergantche author:sergantche |
feat: add `List.insertIdx_eraseIdx_getElem_perm` |
Adds `List.insertIdx_eraseIdx_getElem_perm`, showing that erasing an element by index and inserting it at any valid position gives a permutation of the original list.
This packages the existing lemmas `List.perm_insertIdx` and `List.getElem_cons_eraseIdx_perm` into a direct API lemma.
AI assistance was used in preparing this PR; I reviewed the statement and proof.
[](https://gitpod.io/from-referrer/) |
t-data
new-contributor
LLM-generated
maintainer-merge
|
5/0 |
Mathlib/Data/List/Perm/Basic.lean |
1 |
6 |
['YaelDillies', 'github-actions', 'sergantche', 'vlad902'] |
nobody |
1-540 1 day ago |
119-57547 119 days ago |
123-54344 123 days |
0 |
| 45794 |
ambrose-tang author:ambrose-tang |
feat(LinearAlgebra/Matrix/Cartan/Basic): submatrices and bonds of finite Cartan matrices |
This PR adds basic API for `Matrix.IsFiniteCartan`:
* principal submatrices and relabellings of finite Cartan matrices are finite Cartan matrices
(`IsFiniteCartan.submatrix`, `IsFiniteCartan.reindex`, `IsFiniteCartan.submatrix_equiv_iff`);
* `IsFiniteCartan.exists_symmetrizer`: `dᵢ Mᵢⱼ = dⱼ Mⱼᵢ` for the weights `d`;
* `IsFiniteCartan.mul_lt_four`: `Mᵢⱼ Mⱼᵢ < 4` for `i ≠ j`;
* `CartanMatrix.IsBond` and `IsFiniteCartan.apply_cases`: the five possible pairs `(Mᵢⱼ, Mⱼᵢ)`
of non-zero off-diagonal entries;
* the symmetries `CartanMatrix.A_submatrix_revPerm` and `CartanMatrix.D_submatrix_swap`.
This is part 1 of 7 of the classification of finite Cartan matrices (`Matrix.IsFiniteCartan.exists_A_or_B_or_C_or_D_or_E_or_F_or_G`, see `Wanted/LinearAlgebra/Matrix/Cartan/Basic.lean`).
|
t-algebra
new-contributor
label:t-algebra$ |
123/1 |
Mathlib/LinearAlgebra/Matrix/Cartan/Basic.lean |
1 |
4 |
['ambrose-tang', 'github-actions', 'wwylele'] |
nobody |
0-85429 23 hours ago |
0-85541 23 hours ago |
1-26119 1 day |
6 |
| 45590 |
justus-springer author:justus-springer |
refactor(Geometry/Convex/): generalize `parallelepiped` to linearly ordered fields |
Mathlib's `parallelepiped` is currently only defined for families of vectors in a real vector space. This PR generalized the definition to arbitrary linearly ordered fields, along with most of its API. Moreover, several proofs were significantly shortened and some new API lemmas were added for convenience.
New API lemmas:
* `parallelepiped_of_isEmpty`: the parallelepiped of an empty family is `{0}`
* `zero_mem_parallelepiped`
* `parallelepiped_unique`: a parallelepiped spanned by a single vector is a segment
* `parallelepiped_prod`: the parallelepiped of a family in `E × F` built from families in
`E` and `F` is the product of the parallelepipeds
Generative AI was used to find shorter proofs of the API lemmas.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-convex-geometry |
143/198 |
Mathlib.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Geometry/Convex/Parallelepiped.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/MeasureTheory/Measure/Haar/InnerProductSpace.lean,Mathlib/MeasureTheory/Measure/Haar/OfBasis.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/Lebesgue/EqHaar.lean |
8 |
3 |
['github-actions', 'wwylele'] |
nobody |
0-84112 23 hours ago |
0-84162 23 hours ago |
6-83054 6 days |
2 |
| 45811 |
YaelDillies author:YaelDillies |
feat(Tactic/Positivity): avoid assuming extensions are run with an order |
The `positivity` extensions for `Nat`-valued functions assume they are run with `q(PartialOrder ℕ)`, which is not necessarily the case: The extension for `Nat.cast` didn't call `core` when run without an order. There are two solutions to this:
1. avoid assuming extensions are run with an order;
2. always run extensions with an order if there is an order.
This PR implements option 1 because it makes the extensions cheaper (they need fewer TC searches) and simpler (only touches the `positivity` extensions for concrete-type-valued functions, instead of every call to `core`).
Written by Claude Sonnet, reviewed line-by-line by myself.
Assisted-by: Claude Sonnet 5.5
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
LLM-generated
t-meta
|
141/105 |
Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Analysis/Complex/BorelCaratheodory.lean,Mathlib/Analysis/Complex/Order.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Bound.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/Data/Nat/Factorial/DoubleFactorial.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/NumberTheory/Height/NumberField.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Tactic/Positivity/Finset.lean,MathlibTest/Tactic/Positivity.lean |
15 |
1 |
['github-actions'] |
nobody |
0-83270 23 hours ago |
0-83313 23 hours ago |
0-83240 23 hours |
0 |
| 45270 |
YaelDillies author:YaelDillies |
feat(Order): quotienting by the trivial equivalence relation does nothing |
This is already the content of `quotientBotEquiv`, but it is syntactically specialised to `\bot`, while I want to apply it to `Associates.setoid M` where `M` has a single unit.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
27/10 |
Mathlib/Order/Setoid/Basic.lean,Mathlib/Topology/Homeomorph/Quotient.lean |
2 |
2 |
['Komyyy', 'artie2000', 'github-actions', 'vihdzp'] |
Komyyy assignee:Komyyy |
0-82924 23 hours ago |
0-82978 23 hours ago |
15-13579 15 days |
1 |
| 45810 |
user202729 author:user202729 |
chore: remove many `set_option quotPrecheck false` |
Delete almost all `set_option quotPrecheck false`. Fix errors by stop using generalized field notation (e.g. `Functor.obj`), or change the notations that use variables in the current file to `local notation`.
---
Advantage of enabling quotation precheck is that “Go to definition” works. (Though maybe we can have an intermediate: if the option is false, precheck as many things as possible. There's a risk of going to the wrong definition though)
To see what the symbols should resolve to, adding a `variable (i j k) in #check [the notation]` often works.
It might be nice to have some automatic tool to automatically rewrite an expression into normal notation, if one is confused how a generalized field notation works.
I learnt that `local notation` takes into account the variables in the current file. It would be a good idea for the error message to mention this option instead of just `set_option quotPrecheck false`.
It's odd that some field notation still work (`D.f`). Arguably if it's possible to make it work without making the notation definition more verbose, we should do that, but at the moment I don't know how yet.
The `.invApp` is the most confusing one: the thing before the dot is an instance-implicit parameter to the function. It's not clear why it's written the way it is instead of the shorter form (as printed by `#check`/written in the comment), but it's possible that it's to save instance synthesis time, so I leave it alone.
Perhaps it's a good idea to disallow `set_option quotPrecheck false` entirely, and maybe count `set_option quotPrecheck false in` as a tech debt.
Not sure if `notation3` (“Lean 3 style notation”) should be refactored to the new `notation`. On the other hand, it seems like `notation3` supports generalized field notation just fine so…?
There's at least one notation that use hole (https://github.com/leanprover-community/mathlib4/pull/45810/changes#diff-50fa68fd318fd7e616ab659edfdbea6253edaaa7cadb0d1214c1d739e737b592L121). As mentioned in https://github.com/leanprover-community/mathlib4/pull/45550, I _think_ this will make the delaborator fail, even though elaboration works as usual. (So someone will only notice by looking at the infoview.) |
tech debt
new-contributor
|
21/46 |
Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/Analysis/Matrix/LDL.lean,Mathlib/CategoryTheory/Monoidal/Closed/Basic.lean,Mathlib/CategoryTheory/Monoidal/Closed/Cartesian.lean,Mathlib/CategoryTheory/Shift/Basic.lean,Mathlib/FieldTheory/CardinalEmb.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/Gluing.lean,Mathlib/LinearAlgebra/TensorProduct/Defs.lean,Mathlib/MeasureTheory/MeasurableSpace/Defs.lean,Mathlib/RepresentationTheory/Homological/Resolution.lean,Mathlib/RingTheory/DedekindDomain/SelmerGroup.lean,Mathlib/RingTheory/Norm/Transitivity.lean,Mathlib/RingTheory/Smooth/NoetherianDescent.lean,Mathlib/RingTheory/WittVector/Basic.lean,Mathlib/RingTheory/WittVector/StructurePolynomial.lean,Mathlib/RingTheory/WittVector/WittPolynomial.lean,Mathlib/Tactic/CategoryTheory/BicategoryCoherence.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean |
19 |
2 |
['github-actions'] |
nobody |
0-81943 22 hours ago |
0-81988 22 hours ago |
0-83340 23 hours |
0 |
| 45779 |
jasondavies author:jasondavies |
fix(GroupTheory/Coxeter/Matrix): correct the type D Coxeter matrix |
`CoxeterMatrix.D n` currently retains every edge of the type A chain and adds the fork edge. For `n ≥ 3`, this creates a triangle on the last three vertices instead of the type D fork. For example, `CoxeterMatrix.D 4 2 3` is `3`, but the two fork tips should commute, so this entry should be `2`. The small ranks are also wrong: `D 2` is A₂, and `D 3` is a triangle rather than A₃.
Set the entries between vertices `n - 2` and `n - 1` to `2` before checking the fork and chain edges. This also gives the standard small-rank cases `D₂ = A₁ × A₁` and `D₃ = A₃`. Checking the excluded pair first handles rank 2, where natural-number subtraction gives `n - 3 = 0`, making the fork condition select the same pair that must be excluded. Ranks 0 and 1 are unchanged.
Add exact-matrix regression checks for ranks 2, 3, 4, and 5.
--
Trivial fix implemented via GPT-6-Astra. All four regression checks fail against the old definition. |
LLM-generated
t-group-theory
new-contributor
|
3/2 |
Mathlib/GroupTheory/Coxeter/Matrix.lean |
1 |
8 |
['github-actions', 'jasondavies', 'vihdzp'] |
nobody |
0-80736 22 hours ago |
1-6760 1 day ago |
1-71357 1 day |
0 |
| 42993 |
D-Thomine author:D-Thomine |
feat(UniformIntegrable): definitions of `UnifTail` and `UnifLpTail` |
This PR mainly **adds two definitions** to `MeasureTheory.Function.UniformIntegrable`:
* `UnifTail f μ`: the measure of the set `{ x | M ≤ ‖f i x‖ₑ }` vanishes when `M` goes to infinity, uniformly in `i`.
* `UnifLpTail f p μ`: the `ELpNorm` carried by the set `{ x | M ≤ ‖f i x‖ₑ }` vanishes when `M` goes to infinity, uniformly in `i`.
`UnifLpTail` gives a name to a statement which appears repeatedly in the file:
`∀ ε > 0, ∃ C : ℝ≥0, ∀ i, eLpNorm ({ x | C ≤ ‖f i x‖₊ }.indicator (f i)) p μ ≤ ε`
`UnifTail` is exactly the difference between `UnifLpTail` and `UnifIntegrable`, so having this notion at hand will be extremely helpful to manage the passage from one statement to the other.
I have also **added some basic lemmas** about `UnifTail` and `UnifLpTail`. I have slightly changed the structure of the file, so that the basic lemmas for all four objects defined in the file are in the same section.
These new notions do not see much use for the remainder of `MeasureTheory.Function.UniformIntegrable` for now. This depends on other PRs, and will be done later so as keep each PR at a manageable level.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
227/88 |
Mathlib/MeasureTheory/Function/UniformIntegrable.lean |
1 |
8 |
['github-actions', 'mathlib-merge-conflicts'] |
EtienneC30 assignee:EtienneC30 |
0-79756 22 hours ago |
0-79800 22 hours ago |
48-15900 48 days |
0 |
| 45813 |
DavidLedvinka author:DavidLedvinka |
refactor(Probability/Process/HittingTime): (re)define hitting times on deterministic paths |
Redefine hitting times initially on deterministic paths. The motivation for this PR can be found here: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Propose.20refactor.20of.20hitting.20times.20.28and.20stochastic.20processes.29/with/638516122
AI-assistance disclosure: I started with a hand written new version of hitting time. I then asked an LLM to refactor mathlib to use it, but after trying this I decided it was better to start by more closely mirroring the current definitions and API of hitting times in Mathlib, only making some changes that I thought were significant improvements. This was done initially by an LLM but I reviewed the proofs and API and did some further refactoring by hand. |
LLM-generated |
641/421 |
Mathlib.lean,Mathlib/Dynamics/HittingTime.lean,Mathlib/Order/ConditionallyCompleteLattice/WithTop.lean,Mathlib/Probability/Martingale/BorelCantelli.lean,Mathlib/Probability/Martingale/OptionalStopping.lean,Mathlib/Probability/Martingale/Upcrossing.lean,Mathlib/Probability/Process/HittingTime.lean,docs/overview.yaml |
8 |
1 |
['github-actions'] |
nobody |
0-76768 21 hours ago |
0-76826 21 hours ago |
0-76753 21 hours |
0 |
| 45519 |
Nicola9Falciola author:Nicola9Falciola |
chore(LinearAlgebra/Matrix): add api for compatibility between `reindex` and `map` for `GL` and `Matrix` |
---
This PR adds two API lemmas for the compatibility between `reindex` and `map` following the discussion in #44094.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
19/3 |
Mathlib/LinearAlgebra/Matrix/Defs.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean |
2 |
10 |
['Nicola9Falciola', 'eric-wieser', 'github-actions', 'themathqueen'] |
nobody |
0-72905 20 hours ago |
0-74269 20 hours ago |
7-68885 7 days |
0 |
| 45665 |
sun123zxy author:sun123zxy |
feat(RingTheory/TensorProduct): projectivity under base change and quotient scalars |
Add lemmas showing preservation of module projectivity under base change, including several special cases:
- algebra pushouts
- `M / IM` is projective over `R / I` when `M` is projective over `R`, and the algebra version of it.
Extracted from #44636 to provide quotient-projectivity instances independently of the trace API.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #45656
Extracted from #44636 as per review. |
t-ring-theory
new-contributor
file-removed
|
128/3 |
Mathlib.lean,Mathlib/RingTheory/EssentialFiniteness.lean,Mathlib/RingTheory/ReesAlgebra.lean,Mathlib/RingTheory/TensorProduct/IsBaseChangeProjective.lean,Mathlib/RingTheory/TensorProduct/Quotient/Algebra.lean,Mathlib/RingTheory/TensorProduct/Quotient/Projective.lean,Mathlib/RingTheory/TensorProduct/Quotient/Torsion.lean |
7 |
10 |
['JX-Mo', 'github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'sun123zxy'] |
nobody |
0-72774 20 hours ago |
0-72953 20 hours ago |
0-72880 20 hours |
1 |
| 45814 |
DavidLedvinka author:DavidLedvinka |
feat(Probability/MarkovChain): add Markov chain measures |
Define `Kernel.markovChainMeasure` which is the measure of paths of a Markov chain with the given transition kernel and starting distribution.
AI Assistance Disclosure: LLMs were used to golf and suggest generalisations |
t-measure-probability |
126/8 |
Mathlib.lean,Mathlib/Probability/Kernel/IonescuTulcea/Traj.lean,Mathlib/Probability/Kernel/MarkovChainMeasure.lean |
3 |
1 |
['github-actions'] |
nobody |
0-72156 20 hours ago |
0-72209 20 hours ago |
0-72136 20 hours |
0 |
| 45815 |
SnirBroshi author:SnirBroshi |
feat(Algebra/GroupWithZero/NonZeroDivisors): `nonZeroDivisors` is a lower set w.r.t. divisibility |
---
We could also add a `|ᵣ` version (and matching versions for left/right when the monoid is commutative), but I think it's peculiar to use `RightDvd`/`nonZeroDivisorsLeft`/`nonZeroDivisorsRight` when there's commutativity.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
17/0 |
Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean |
1 |
1 |
['github-actions'] |
nobody |
0-67543 18 hours ago |
0-67601 18 hours ago |
0-67528 18 hours |
0 |
| 42164 |
CoolRmal author:CoolRmal |
feat(MeasureTheory): one-sided continuous functions are measurable |
The following lemmas are proved in this PR:
- `IsRightContinuousOn.separableSpace_image`, `IsRightContinuous.separableSpace_range`: the image of a set of a second-countable linear order under a right-continuous function is a
separable space.
- `IsRightContinuous.measurable`: a right continuous function is measurable.
- `IsRightContinuous.stronglyMeasurable`: a right continuous function is strongly measurable.
The corresponding statements for left continuous functions are also included, via `to_dual`.
Note: the statement that a right continuous function is strongly measurable is actually true even in the case that the codomain is not assumed to be pseudometrizable, and this can be proved through an explicit construction of an approximating sequence of simple functions. However, this proof is definitely more lengthy, and I believe in practice we only care about strongly measurable functions in the case of integrating banach space valued functions. This is why I decide to assume pseudometrizability so that a simpler proof is available through the use of [stronglyMeasurable_iff_measurable_separable](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.html#stronglyMeasurable_iff_measurable_separable).
Importing `Topology/Order/Cadlag.lean` into `BorelSpace/Order.lean` pulled `Analysis.Normed.Group.Continuity` into the import closure of `Lebesgue/Basic.lean`, breaking its `assert_not_exists Norm`. `Cadlag.lean` uses no norms, so its import is replaced by `Topology.Algebra.GroupWithZero` and `Topology.MetricSpace.Bounded`. That import had also been transitively supplying the `push ←` attribute on `Function.comp_def` that `@[to_fun]` needs to eta-expand `g ∘ f`, so the file now declares it itself, as `Order/ScottContinuity.lean` does (see #40183).
---
Created with the help of Claude Code, carefully reviewed and golfed by myself.
- [x] depends on: #45475 (regroups the sections of `BorelSpace/Order.lean`, where `IsRightContinuous.measurable` is added)
- [x] depends on: #45544 (adds `IsRightContinuousOn`)
|
t-measure-probability |
71/4 |
Mathlib/MeasureTheory/Constructions/BorelSpace/Order.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/AEStronglyMeasurable.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/Topology/Order/Cadlag.lean,Mathlib/Topology/Order/LeftRightNhds.lean |
6 |
16 |
['CoolRmal', 'EtienneC30', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
RemyDegenne assignee:RemyDegenne |
0-66748 18 hours ago |
0-66748 18 hours ago |
73-54527 73 days |
1 |
| 45388 |
loefflerd author:loefflerd |
feat(Tactic/Linter): lint against overlong proofs |
Emit a warning for declarations over 200 code lines long (excluding comments).
There is a general consensus that long proofs are bad style, and are better refactored into multiple smaller lemmas (making proofs easier to understand for human readers, faster to compile, and more likely to be re-usable elsewhere).
This has historically been an "unwritten rule" – it is not mentioned in the library-style guide – but still enforced through the PR review process; development of this linter only revealed 2 declarations in mathlib over 200 lines. However, Mathlib is playing an increasing role as a model to downstream libraries (both human and AI-written) as to what good Lean code should look like; and such downstream libraries frequently adopt Mathlib's standard linter set. So adding a linter that enforces this rule (with a mechanism for exceptions when necessary) makes it clear that this is part of the Mathlib community's understanding of code quality.
---
This will not pass CI until the following PR's are merged, splitting declarations over > 200 code lines that are presently in mathlib – the fact that CI fails shows that the linter is working as intended 🙂
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
-->
- [x] depends on: #45374 [long proof that this linter correctly flags]
[ dependency on #45574 removed, added a set-option tag instead ] |
t-linter |
317/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/Notation.lean,Mathlib/Init.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/LongDeclaration.lean,MathlibTest/Linter/LongDeclaration.lean |
6 |
40 |
['JovanGerb', 'SnirBroshi', 'chenson2018', 'github-actions', 'grunweg', 'joneugster', 'leanprover-radar', 'loefflerd', 'mathlib-dependent-issues'] |
JovanGerb and joneugster assignee:joneugster assignee:JovanGerb |
0-65744 18 hours ago |
0-65859 18 hours ago |
2-56921 2 days |
1 |
| 44994 |
TJHeeringa author:TJHeeringa |
feat(Analysis/InnerProductSpace): add Trace for continuousLinearMaps between Hilbert spaces |
Schatten p-norm is based on the trace for continuous linear maps between Hilbert spaces. This PR adds that trace.
---
This PR is split of from #44525, which is a draft for the Schatten operators.
Mathlib has an existing trace operator for linear maps. That trace has differing requirements from this trace. The existing trace requires `Fintype \iota`, but this trace works for infinite dimensional spaces too. Conversely, this trace requires topological properties that the existing trace doesn't require. Hence, this is not a generalization of the existing trace.
An argument can be made that this should be placed in `InnerProductSpace/Trace` instead of `InnerProductSpace/Schatten`. However, I placed it here due to the aforementioned incompatibilities between the two trace definitions.
When writing this message I saw the PR #44636. My impression is that that generalization doesn't cover this case.
The API I put here is limited as this is all what is needed to define the Schatten p-norms. If more is desired in this PR, then I'd be happy to add it.
**AI usage**:
I used an LLM to a proof for `_root_.Summable.of_add_nonneg` and then cleaned it up manually. I also used it as support in the second branch of the `by_cases` in `traceOfBasis_eq`. I also used an LLM in parts of #44525, but I don't think any bits of that usage remain.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis |
179/0 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Positive.lean,Mathlib/Analysis/InnerProductSpace/Schatten.lean,Mathlib/Analysis/InnerProductSpace/l2Space.lean |
4 |
6 |
['JX-Mo', 'TJHeeringa', 'github-actions', 'mcdoll'] |
nobody |
0-64911 18 hours ago |
0-65018 18 hours ago |
19-22965 19 days |
0 |
| 29281 |
plp127 author:plp127 |
doc: `Fin.natAdd_castLEEmb` |
Change the docstring of `Fin.natAdd_castLEEmb` which confused me when I read it so I rewrote it. Also rename to follow naming conventions.
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
To indicate co-authors, include at least one commit authored by each
co-author among the commits in the pull request. If necessary, you may
create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
When merging, all the commits will be squashed into a single commit listing all co-authors.
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
26/22 |
Mathlib/Data/Fin/Embedding.lean,Mathlib/GroupTheory/Perm/Fin.lean |
2 |
3 |
['github-actions', 'mathlib4-merge-conflict-bot', 'urkud'] |
nobody |
0-62008 17 hours ago |
0-62058 17 hours ago |
21-14974 21 days |
0 |
| 45819 |
gloges author:gloges |
feat(LinearAlgebra/PiTensorProduct): lift multi-semilinear maps |
Generalizes `PiTensorProduct.lift` (and along the way `PiTensorProduct.liftAux`) to multi-*semi*linear maps, following up on #42534.
This then also allows `PiTensorProduct.map`, `PiTensorProduct.mapMultilinear`, `PiTensorProduct.congr`, *etc.* to be generalized to *semi*linear maps.
With now several `CommSemiring`s floating around, I have updated variable names throughout [LinearAlgeabra/PiTensorProduct/Basic.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/LinearAlgebra/PiTensorProduct/Basic.html) to use `M/M₁/M₂/M₃` for dependent families of modules with the subscript indicating the corresponding ring. This brings it more into line with the other `LinearAlgebra/PiTensorProduct/` files.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
new-contributor |
270/275 |
Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean |
3 |
2 |
['github-actions'] |
nobody |
0-56422 15 hours ago |
0-56479 15 hours ago |
0-56406 15 hours |
0 |
| 42487 |
bocowgill author:bocowgill |
feat(Algebra/BigOperators/Group/Finset/Powerset): add nested powersetCard identities |
This PR adds product and sum identities for nested collections of fixed-cardinality subsets. For `r ≤ k`, each `r`-element subset of a finite set `s` is contained in exactly
`Nat.choose (s.card - r) (k - r)`
of the `k`-element subsets of `s`. Thus, a sum over the `r`-element subsets of every `k`-element subset reduces to this multiplicity, times a single sum over `s.powersetCard r`. The product version is the analogous power identity.
The proof exchanges the order of the two big operators using `Finset.prod_comm'`. It then counts each fiber with `Finset.card_filter_powersetCard_subset`. The additive identities are generated with `to_additive`. The PR also provides the useful elementwise specialization `r = 1`.
**Motivation**: These results provide reusable weighted double-counting tools for finite combinatorics. They are useful in arguments about uniform set systems, incidence relations, and sums or products over fixed-cardinality subsets.
---
### LLM disclosure
For theorem planning and Lean implementation, I used OpenAI Codex substantially. I also used Codex to search Mathlib and open PRs for related results, suggest naming and documentation, iterate on the proofs, audit import dependencies, and validate the commits locally.
I personally reviewed the mathematical statements and Lean code line-by-line, including the naming and API choices. I also confirmed that I can explain each step of the proofs.
For the current revision, I ran a targeted build of `Mathlib.Algebra.BigOperators.Group.Finset.Powerset`, the style and environment linters, and `git diff --check`. I also inspected the generated additive declarations and axiom dependencies, and tested an alternative proof using explicit incidence finsets. The complete GitHub CI suite passes.
This is one of my earliest Mathlib contributions. I welcome corrections and suggestions, and I am prepared to revise the PR and learn from the review. |
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
27/0 |
Mathlib/Algebra/BigOperators/Group/Finset/Powerset.lean |
1 |
17 |
['bocowgill', 'github-actions', 'pepamontero'] |
alreadydone assignee:alreadydone |
0-50460 14 hours ago |
56-40546 56 days ago |
94-67234 94 days |
0 |
| 42629 |
SnirBroshi author:SnirBroshi |
feat(Order/RelSeries): `FiniteDimensionalOrder` implies `WellFoundedLT` |
and `WellFoundedGT`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
13/0 |
Mathlib/Order/RelSeries.lean |
1 |
6 |
['SnirBroshi', 'github-actions', 'plp127', 'vihdzp'] |
Komyyy assignee:Komyyy |
0-50459 14 hours ago |
89-34680 89 days ago |
89-34607 89 days |
0 |
| 43556 |
teorth author:teorth |
feat(Analysis/SpecialFunctions/Gamma/Digamma): the real digamma function, its asymptotics, and Gauss' series |
This extends the digamma file with the real digamma function, its logarithmic
asymptotics, and Gauss' series for `ψ`.
---
Main additions:
`Mathlib/Analysis/SpecialFunctions/Gamma/Digamma.lean`
* `Real.digamma`, the real digamma function `logDeriv Real.Gamma`, and its
real functional equations (`Real.digamma_apply_add_one`, `..._add_nat`,
`..._nat_add_one`, `..._one_sub`, `..._two_mul`), obtained from the complex
versions via the bridge below.
* `Complex.digamma_ofReal : Complex.digamma x = Real.digamma x` (a `simp`
lemma, unconditional thanks to matching junk values at the non-positive
integers), and `Complex.digamma_eq_re`.
* Real asymptotics: `Real.monotoneOn_digamma` (monotone on `Ioi 0`, via
log-convexity of `Γ`), `Real.digamma_le_log_le` (`ψ x ≤ log x ≤ ψ (x + 1)`),
and `Real.abs_digamma_sub_log_le` (`|ψ x - log x| ≤ 1 / x`).
* `Complex.gammaAnalyticSet`, the complement of the non-positive integers,
with `isOpen_gammaAnalyticSet`, `isPreconnected_gammaAnalyticSet`,
`Complex.differentiableOn_Gamma`, and `Complex.differentiableOn_digamma`.
* **Gauss' series** `ψ(s) = -γ + ∑ₙ (1/(n+1) - 1/(s+n))`
(`Complex.digamma_eq_gaussSeries`, `Real.digamma_eq_gaussSeries`,
`summable_gaussSeries`). The error is shown to vanish on the positive reals
(a finite partial-sum identity together with `abs_digamma_sub_log_le`) and to
be analytic off the poles, hence zero everywhere by the identity theorem.
`Mathlib/Analysis/Complex/RealDeriv.lean`
* `logDeriv_comp_ofReal`, `logDeriv_ofReal_comp`, relating the real and complex
logarithmic derivatives along the reals.
`Mathlib/Analysis/SpecialFunctions/Gamma/Deriv.lean`
* Real analogues of the existing complex lemmas: `Real.continuousAt_Gamma`,
and non-continuity/non-differentiability of `Real.Gamma` at the non-positive
integers.
Several complex analysis imports were added to `Digamma.lean` in order to justify the proof of the Gauss identity in the complex case.
The code was initially generated by an AI, and then heavily golfed and reviewed by the author.
[](https://gitpod.io/from-referrer/)
|
t-analysis |
434/23 |
Mathlib/Analysis/Complex/RealDeriv.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Digamma.lean |
3 |
4 |
['github-actions', 'mathlib-merge-conflicts', 'metakunt'] |
urkud assignee:urkud |
0-50458 14 hours ago |
30-52800 30 days ago |
61-59469 61 days |
0 |
| 44582 |
CBirkbeck author:CBirkbeck |
chore(Tactic/Inclusion): inline the dyadic midpoint using core's `Dyadic.shiftRight` |
Remove `Inclusion.IntervalDyadicReal.midpoint`, which re-implemented core's `Dyadic.shiftRight`, and write the midpoint in `binarySplitMap` as `(l + u) >>> 1`.
---
The tactic's tests (`MathlibTest/Tactic/Inclusion/Basic.lean`) take the same time as with the old `midpoint`: about 3.6 s either way, over five runs each.
<!--redteam:v1 {"owner":"AI-DOOM-97fce5ac-e255-4515-b311-12ecf245ce72","findings":["RT-20261006-3d9a05"],"patterns":["reimplements-core-function"],"severity":"MAJOR"}-->
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-meta
LLM-generated
|
3/8 |
Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/BinarySplit.lean |
1 |
4 |
['DavidLedvinka', 'github-actions', 'tb65536'] |
thorimur assignee:thorimur |
0-50457 14 hours ago |
9-81570 9 days ago |
9-83158 9 days |
0 |
| 45010 |
loefflerd author:loefflerd |
feat(NumberTheory/ModularForms): q-expansions at irregular cusps |
The q-expansion of a modular form at an irregular cusp is supported on exponents of the same parity as the weight of the form. (This is a step in proving an "optimal" Sturm bound for general arithmetic subgroups.)
---
Carved off from the modular-form finite-dimensionality PR #43644.
AI use: Based on code originally written by ChatGPT 5.6 Sol and 6.0 Astra, but carefully checked and cleaned up by me.
- [x] depends on: #45009
|
t-number-theory |
39/0 |
Mathlib/Analysis/Complex/Periodic.lean,Mathlib/Analysis/Complex/UpperHalfPlane/MoebiusAction.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean |
3 |
3 |
['github-actions', 'mathlib-dependent-issues'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
0-50456 14 hours ago |
3-58982 3 days ago |
3-69542 3 days |
1 |
| 45287 |
JX-Mo author:JX-Mo |
feat(DoubleCoset): add `DoubleCoset.Quotient.inv` |
Add "the map sending `H₁gH₂` to `H₂g⁻¹H₁`" which is used to construct the involution of Hecke algebras. |
t-group-theory |
32/0 |
Mathlib/GroupTheory/DoubleCoset.lean |
1 |
1 |
['github-actions'] |
riccardobrasca assignee:riccardobrasca |
0-50454 14 hours ago |
14-62951 14 days ago |
14-62878 14 days |
0 |
| 45521 |
EzequielS2 author:EzequielS2 |
feat: add automorphisms of the infinite binary tree |
Add TreeAut and the splitting TreeAut ≃* (TreeAut × TreeAut) ⋊ ℤ/2 |
t-geometric-group-theory
new-contributor
|
602/0 |
Mathlib.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/Geometry/Group/InfiniteBinaryTree.lean |
3 |
15 |
['EzequielS2', 'github-actions', 'tb65536', 'vihdzp'] |
ADedecker assignee:ADedecker |
0-50453 14 hours ago |
1-58194 1 day ago |
6-24987 6 days |
3 |
| 42113 |
LAC1213 author:LAC1213 |
feat(RingTheory/Noetherian): injective modules over a Noetherian ring… |
… surject onto localizations by powers of an element. [Hartshorne III.3.3]
Disclaimer: I used Claude to help me find the names of useful lemmas and definitions and explain lean errors to me.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
LLM-generated
|
114/0 |
Mathlib.lean,Mathlib/Algebra/Module/Torsion/Basic.lean,Mathlib/RingTheory/Noetherian/InjectiveModule.lean |
3 |
46 |
['LAC1213', 'NoahW314', 'github-actions', 'robin-carlier', 'tb65536'] |
nobody |
0-49561 13 hours ago |
105-2823 105 days ago |
105-26987 105 days |
0 |
| 41347 |
mkaratarakis author:mkaratarakis |
feat(Tactic/Polynomial): poly_dvd_cert, certificate-based polynomial divisibility |
The `poly_dvd_cert` tactic: prove `p ∣ q` for `Polynomial K` polyrith-style - search the quotient uncertified in compiled `MetaM` (pseudo-division, so the certified identity is division-free), then verify with `ring` and cancel the leading-coefficient unit. Works over any field with concrete or symbolic coefficients, for monic divisors over any commutative ring, and for unit leading coefficients.
|
t-meta
LLM-generated
|
303/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ComputablePolynomial/DvdCert.lean,MathlibTest/ComputablePolynomial/PolyDvdCert.lean |
4 |
8 |
['JovanGerb', 'eric-wieser', 'github-actions', 'mkaratarakis'] |
nobody |
0-49560 13 hours ago |
45-74758 45 days ago |
108-16114 108 days |
0 |
| 45802 |
vihdzp author:vihdzp |
refactor: dualize `ScottContinuous` predicate |
The plan is to deprecate `LeftOrdContinuous` and `RightOrdContinuous` in favor of `SupScottContinuous` and `InfScottContinuous`. See [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/ScottContinuous.20and.20LeftOrdContinuous/near/637456525).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
232/131 |
Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/Bounds/Image.lean,Mathlib/Order/CompletePartialOrder.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/ScottContinuity.lean,Mathlib/Order/ScottContinuity/Complete.lean,Mathlib/Order/ScottContinuity/Prod.lean,Mathlib/Topology/OmegaCompletePartialOrder.lean,Mathlib/Topology/Order/ScottTopology.lean |
9 |
1 |
['github-actions'] |
nobody |
0-43778 12 hours ago |
0-44073 12 hours ago |
0-44000 12 hours |
0 |
| 43871 |
manman4 author:manman4 |
feat(PowerSeries): add Lagrange inversion formula |
## What this PR adds
This PR formalizes the Lagrange inversion formula for formal power series over commutative rings without additive torsion (`HasUniqueDiv R`), together with divided versions over characteristic-zero fields.
For formal power series `P`, `Y`, and `H` over such a ring, suppose `Y = X * P.subst Y`. Then, for every natural number `n`, the Lagrange–Bürmann formula states:
```
(n + 1)[X^{n + 1}]H(Y) = [X^n](H' P^{n + 1}).
```
The brackets denote coefficient extraction, and `H'` denotes the formal derivative of `H`. Over a characteristic-zero field, dividing by `n + 1` gives the usual coefficient formula.
## Proof and scope
The proof follows the inductive argument of Surya and Warnke. The torsion-free assumption is used to cancel multiplication by positive natural numbers.
Following the review suggestions, this PR is restricted to the torsion-free version.
## Motivation
Lagrange inversion is a classical tool in enumerative combinatorics, treated for example in Section 5.4 of Richard P. Stanley’s *Enumerative Combinatorics*, Volume 2. It gives coefficient formulas for implicitly defined generating functions, with applications to counting rooted trees and other recursively defined combinatorial structures.
My motivation was to make this tool, which is also used in competitive programming, available in Mathlib.
## LLM
We (Julian and I) used Aristotle and Codex for code generation and ChatGPT and Claude for cleanup.
|
t-ring-theory
new-contributor
LLM-generated
|
212/0 |
Mathlib.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/Derivative.lean,Mathlib/RingTheory/PowerSeries/LagrangeInversion.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean,docs/references.bib |
6 |
126 |
['JX-Mo', 'Julian-Kuelshammer', 'github-actions', 'manman4', 'wwylele'] |
nobody |
0-39506 10 hours ago |
0-39750 11 hours ago |
53-49097 53 days |
0 |
| 45823 |
SnirBroshi author:SnirBroshi |
feat(Order/DirSupClosed): a finite union of `DirSupClosed` sets is `DirSupClosed` |
---
I don't have a solution to `large-import` other than creating a new file.
Although the large import is private, so maybe it's okay.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order
large-import
|
34/0 |
Mathlib/Order/DirSupClosed.lean |
1 |
1 |
['github-actions'] |
nobody |
0-39391 10 hours ago |
0-39444 10 hours ago |
0-39371 10 hours |
0 |
| 45554 |
Thmoas-Guan author:Thmoas-Guan |
feat(Data/ENat): more lemma for WithBot ENat |
We plan to add more lemmas into this separate file, instead of only adding it in `ENat.Basic`.
There would be a porting PR later.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-data |
41/0 |
Mathlib.lean,Mathlib/Data/ENat/WithBot.lean,Mathlib/Order/WithBotTop.lean |
3 |
7 |
['SnirBroshi', 'Thmoas-Guan', 'github-actions', 'tb65536'] |
nobody |
0-34725 9 hours ago |
0-34789 9 hours ago |
8-26481 8 days |
19 |
| 43958 |
kebekus author:kebekus |
feat: simplify computations in complex analysis by extracting frequently-used lemmas |
Simplify several computations in complex analysis by extracting lemmas that are used more than once. At present, the gain is real but modest. It will become more visible as more computations are added.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis
LLM-generated
|
80/56 |
Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Complex/CircleMap.lean,Mathlib/Analysis/SpecialFunctions/Integrals/PosLog.lean |
5 |
23 |
['github-actions', 'kebekus', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
0-30949 8 hours ago |
0-31018 8 hours ago |
49-20347 49 days |
0 |
| 43238 |
teorth author:teorth |
feat(NumberTheory/LSeries): the (weak) prime number theorem |
This PR adds `Mathlib/NumberTheory/LSeries/WeakPNT.lean`, deducing the prime
number theorem from the Wiener–Ikehara Tauberian theorem (#43233):
- `Chebyshev.isEquivalent_psi_id`: `ψ x ~ x`
- `Chebyshev.isEquivalent_theta_id`: `θ x ~ x`
- `Chebyshev.isEquivalent_primeCounting`: **the prime number theorem** `π x ~ x / log x`
- `Mertens.isLittleO_M_id`: the Möbius form `∑_{n ≤ x} μ n = o(x)`
- consecutive-prime asymptotics and prime-gap existence
A version of the first item for arithmetic progressions is also given, but I did not develop analogues for the other four items (this would require extending the `Chebyshev` API to cover Dirichlet characters or arithmetic progressions) .
---
The milestone is recorded in `docs/1000.yaml` (Q386292).
The proofs are relatively short due to the Wiener-Ikehara theorem, which is then the main new addition to Mathlib. On the other hand, it does not lead to stronger versions of the PNT with better error terms; this would be a future task to add to Mathlib. However, I believe that having just these weak versions will already be useful for many downstream applications in formalizing results in analytic number theory.
- [x] depends on: #43233
- [X] depends on: #43207
- [X] depends on: #43215
The code here is derived from the PNT+ project, but has been heavily golfed by both myself and an AI agent. |
t-number-theory
t-analysis
|
403/0 |
Mathlib.lean,Mathlib/NumberTheory/ArithmeticFunction/Moebius.lean,Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/LSeries/WeakPNT.lean,docs/1000.yaml |
5 |
48 |
['MichaelStollBayreuth', 'Parcly-Taxel', 'github-actions', 'loefflerd', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536', 'teorth'] |
loefflerd assignee:loefflerd |
0-27508 7 hours ago |
0-81791 22 hours ago |
6-13039 6 days |
0 |
| 44011 |
joelriou author:joelriou |
chore(Algebra/Homology/ShortComplex): remove `set_option` |
This PR removes all the `set_option` in the `Algebra/Homology/ShortComplex/` files.
This reverts part of #45589 which made too many things globally `implicit_reducible` in my opinion. Here, the idea is to maintain a certain API isolation for the definitions related to `homology` so that in the future it could be attempted to mark `left/right/homology`, `cycles` and `opcycles` as unexposed.
---
- [x] depends on: #43980
- [x] depends on: #43977
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory
tech debt
|
260/473 |
Mathlib/Algebra/Homology/ShortComplex/Ab.lean,Mathlib/Algebra/Homology/ShortComplex/Abelian.lean,Mathlib/Algebra/Homology/ShortComplex/Basic.lean,Mathlib/Algebra/Homology/ShortComplex/ConcreteCategory.lean,Mathlib/Algebra/Homology/ShortComplex/Exact.lean,Mathlib/Algebra/Homology/ShortComplex/FunctorEquivalence.lean,Mathlib/Algebra/Homology/ShortComplex/HomologicalComplex.lean,Mathlib/Algebra/Homology/ShortComplex/Homology.lean,Mathlib/Algebra/Homology/ShortComplex/LeftHomology.lean,Mathlib/Algebra/Homology/ShortComplex/Limits.lean,Mathlib/Algebra/Homology/ShortComplex/Preadditive.lean,Mathlib/Algebra/Homology/ShortComplex/PreservesHomology.lean,Mathlib/Algebra/Homology/ShortComplex/QuasiIso.lean,Mathlib/Algebra/Homology/ShortComplex/RightHomology.lean,Mathlib/Algebra/Homology/ShortComplex/ShortExact.lean,Mathlib/Algebra/Homology/ShortComplex/SnakeLemma.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/LowDegree.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/LowDegree.lean |
18 |
8 |
['github-actions', 'joelriou', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-22539 6 hours ago |
0-22589 6 hours ago |
1-55349 1 day |
1 |
| 41478 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Paths): more length upper bounds |
Bound the lengths of trails/paths/circuits/cycles by `ENat.card V`/`Nat.card V`/`G.edgeSet.encard`/`G.edgeSet.ncard`.
---
I then used these to slightly golf some other lemmas.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #41476
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
38/28 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean |
1 |
6 |
['YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-18789 5 hours ago |
41-82645 41 days ago |
86-59942 86 days |
0 |
| 45570 |
BryceT233 author:BryceT233 |
feat(Algebra/TotalMonoidAlgebra): add unit and multiplication |
We added unit and multiplication of total monoid algebras.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
This is a split of #41472 |
t-algebra
maintainer-merge
label:t-algebra$ |
261/0 |
Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/TotalMonoidAlgebra/Defs.lean |
2 |
7 |
['BryceT233', 'YaelDillies', 'github-actions'] |
nobody |
0-18597 5 hours ago |
0-47524 13 hours ago |
6-63524 6 days |
1 |
| 45174 |
YaelDillies author:YaelDillies |
feat({Topology,MeasureTheory}): instances for `Additive`/`Multiplicative` |
This will help me deduce results about automatic continuity of `AddChar`s from the analogous ones for `AddMonoidHom`.
From MeanFourier
Generated by Claude Sonnet, reviewed line-by-line by myself.
Assisted-by: Claude Sonnet 5.5
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-topology
LLM-generated
t-measure-probability
maintainer-merge
|
45/0 |
Mathlib/MeasureTheory/Constructions/BorelSpace/Basic.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/MeasureTheory/MeasurableSpace/Embedding.lean,Mathlib/Topology/Bases.lean |
4 |
6 |
['EtienneC30', 'YaelDillies', 'github-actions'] |
urkud assignee:urkud |
0-17256 4 hours ago |
0-17436 4 hours ago |
15-2433 15 days |
1 |
| 45709 |
YaelDillies author:YaelDillies |
chore(Algebra/Order): make `Nonneg` a one-field structure |
The goal is to eventually make `NNRat` and `NNReal` `abbrev`s for `Nonneg Rat` and `Nonneg Real`, and deduplicate their API. This is currently not possible due to prohibitive slowdowns when making their definition in terms of `Subtype` visible to automation.
Generated by Claude Sonnet in many rounds of review by myself.
Assisted-by: Claude Sonnet 5.5
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
tech debt
t-order
large-import
LLM-generated
label:t-algebra$ |
650/253 |
Mathlib.lean,Mathlib/Algebra/Order/Nonneg/Basic.lean,Mathlib/Algebra/Order/Nonneg/Defs.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Floor.lean,Mathlib/Algebra/Order/Nonneg/Interval.lean,Mathlib/Algebra/Order/Nonneg/Lattice.lean,Mathlib/Algebra/Order/Nonneg/Order.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/Hom.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/CStarAlgebra/Multiplier.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Complex/Norm.lean,Mathlib/Analysis/Complex/OperatorNorm.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Measure.lean,Mathlib/Analysis/ConstantSpeed.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Convex/SpecificFunctions/Pow.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/Matrix/Normed.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Group/Constructions.lean,Mathlib/Analysis/Normed/Group/Continuity.lean,Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/Normed/Operator/Mul.lean,Mathlib/Analysis/Normed/Operator/NNNorm.lean,Mathlib/Analysis/Normed/Operator/NormedSpace.lean,Mathlib/Analysis/Normed/Operator/Prod.lean,Mathlib/Analysis/Quaternion.lean,Mathlib/Basic/NNReal/Basic.lean,Mathlib/Basic/NNReal/Defs.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/Rat/Cast/Lemmas.lean,Mathlib/Data/Rat/Init.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Basic.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Function/SpecialFunctions/Basic.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/SetToL1/L1.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/NumberTheory/Modular.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/Basic.lean,Mathlib/RingTheory/RootsOfUnity/Complex.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/Topology/Algebra/Field.lean,Mathlib/Topology/Algebra/Order/Module.lean,Mathlib/Topology/Algebra/Ring/Real.lean,Mathlib/Topology/Bornology/Real.lean,Mathlib/Topology/ContinuousMap/Bounded/Basic.lean,Mathlib/Topology/ContinuousMap/Bounded/Normed.lean,Mathlib/Topology/Instances/NNReal/Lemmas.lean,Mathlib/Topology/Instances/Rat.lean,Mathlib/Topology/MetricSpace/Basic.lean,Mathlib/Topology/MetricSpace/ProperSpace/Real.lean,Mathlib/Topology/MetricSpace/Pseudo/Constructions.lean,Mathlib/Topology/MetricSpace/Thickening.lean,Mathlib/Topology/Order/Nonneg.lean,Mathlib/Topology/UniformSpace/Real.lean |
70 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-17148 4 hours ago |
0-17239 4 hours ago |
3-43477 3 days |
0 |
| 45806 |
vihdzp author:vihdzp |
chore(GroupTheory/Coxeter/Basic): clean up `set_option` |
We make `CoxeterSystem.Group` into an `abbrev`, so the `PresentedGroup` API can be used directly for it.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Mathematically speaking, I'd say Coxeter groups *are* presented groups, so making this transparent seems reasonable to me. |
tech debt
t-group-theory
maintainer-merge
|
28/42 |
Mathlib/GroupTheory/Coxeter/Basic.lean |
1 |
3 |
['github-actions', 'grunweg'] |
nobody |
0-16599 4 hours ago |
1-5284 1 day ago |
1-6110 1 day |
2 |
| 45822 |
Parcly-Taxel author:Parcly-Taxel |
refactor: really make `SetSemiring` a one-field structure |
Step 0 in [#mathlib4 > The new `Language` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/The.20new.20.60Language.60/near/638463014). I also add `Membership/Singleton/Insert` instances for `SetSemiring`. |
t-algebra
tech debt
label:t-algebra$ |
56/44 |
Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Data/Set/Semiring.lean |
2 |
9 |
['Parcly-Taxel', 'eric-wieser', 'github-actions'] |
nobody |
0-16536 4 hours ago |
0-16581 4 hours ago |
0-21261 5 hours |
0 |
| 45749 |
grunweg author:grunweg |
chore: golf using finiteness |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
maintainer-merge |
27/37 |
Mathlib/Analysis/BoundedVariation.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL2.lean,Mathlib/MeasureTheory/Function/L1Space/Integrable.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/SMul.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Integral/BoundedContinuousFunction.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Countable.lean,Mathlib/MeasureTheory/Integral/Prod.lean,Mathlib/MeasureTheory/Integral/SetToL1/ChangeMeasure.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/MeasureTheory/Measure/Prod.lean,Mathlib/MeasureTheory/Measure/Typeclasses/SFinite.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/ConvexBody.lean,Mathlib/Topology/MetricSpace/Antilipschitz.lean |
16 |
7 |
['github-actions', 'grunweg', 'mcdoll', 'themathqueen'] |
nobody |
0-15774 4 hours ago |
2-56103 2 days ago |
2-56030 2 days |
0 |
| 45702 |
mcdoll author:mcdoll |
feat(Analysis/Calculus): iterated derivatives of constant additions |
Mirroring the naming etc of the `fderiv` versions. Note that these don't assume that `f` is differentiable, so they cannot be deduced from `iteratedFDeriv_add`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis |
49/0 |
Mathlib/Analysis/Calculus/ContDiff/Operations.lean |
1 |
2 |
['github-actions', 'wwylele'] |
nobody |
0-15478 4 hours ago |
0-15530 4 hours ago |
4-37599 4 days |
0 |
| 45714 |
YaelDillies author:YaelDillies |
chore(Order): tweak naming and simp NF of some `OrderIso`s |
... following the post-merge comments on #45251.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
33/15 |
Mathlib/Order/Hom/Basic.lean,Mathlib/Order/RelIso/Basic.lean |
2 |
10 |
['YaelDillies', 'github-actions', 'grunweg', 'themathqueen'] |
nobody |
0-14745 4 hours ago |
0-14797 4 hours ago |
1-18880 1 day |
0 |
| 45443 |
janbernloehr author:janbernloehr |
feat(Analysis/ODE): add variable-coefficient integral Grönwall |
Add `le_mul_exp_integral_of_le_const_add_integral`, the integral Grönwall inequality with a continuous nonnegative variable coefficient. If `f t ≤ c + ∫ s in a..t, β s * f s` on `[a, b]`, conclude `f t ≤ c * exp (∫ s in a..t, β s)`. Require continuity only on the interval, with no sign assumptions on `f` or `c`.
Use interval FTC and derivative monotonicity on the dominating primitive times its integrating factor. Put the theorem in a separate integral module so existing importers of differential Grönwall do not acquire FTC dependencies.
This lemma is used in the formalization of my dissertation for Volterra inverse bounds and stability estimates; one concrete use is the [Volterra inverse bound](https://github.com/janbernloehr/diss-lean/blob/2091dba5870425e38372f9e0a9106c4214a1dfbe/NLS/ZakharovShabat/ClassicalVolterraL2Bound.lean#L41). Keeping the coefficient's integral in the exponential matters when integral norms are controlled but pointwise bounds are not uniform. For another contribution arising from the same dissertation formalization, see [#45441](https://github.com/leanprover-community/mathlib4/pull/45441), on compact remainders under one-sided inverses.
---
## Related work
The same integral statement was previously proposed in [#37287](https://github.com/leanprover-community/mathlib4/pull/37287), which was withdrawn and not merged. The stronger variable-forcing proposal [#38829](https://github.com/leanprover-community/mathlib4/pull/38829) is also closed unmerged. Open [#39871](https://github.com/leanprover-community/mathlib4/pull/39871) concerns uniform Grönwall; its internal exponential comparison is a potential consumer of this lemma. No PR dependencies.
## Validation
Checked using Lean `v4.36.0-rc2`:
- Affected-module build and direct source check with warnings treated as errors.
- `mk_all --lib Mathlib --check` and `lint-style`.
- Default semantic linters and documentation linters.
- Axiom inspection: only `propext`, `Classical.choice`, `Quot.sound`.
- Clean merge simulation, diff/whitespace checks, and separate Volterra-use examples.
## AI assistance
OpenAI Codex was used to write the Lean implementation. The proof design was informed by downstream proofs and the earlier proposals linked above. |
t-analysis
LLM-generated
new-contributor
|
70/0 |
Mathlib.lean,Mathlib/Analysis/ODE/GronwallIntegral.lean |
2 |
3 |
['NousVolition', 'github-actions'] |
nobody |
0-14667 4 hours ago |
11-58401 11 days ago |
11-58328 11 days |
0 |
| 45072 |
HugLycan author:HugLycan |
refactor(Tactic/Positivity): add a cache |
This PR adds caching to `positivity`, following the implementation in `FunProp`.
It is the first step towards #45305 . This does not speed up mathlib but is crucial for `positivity_lemma` attribute.
The two test example in the newly created file `Positivity/Cache.lean` took 359 heartbeats and 641 heartbeats respectively before the PR, and 172 heartbeats and 568 heartbeats afterwards.
We had to change many positivity extensions for two reasons:
- The type of `PositvityExt` has changed from `MetaM` to `PositivityM`.
- We have to return `.none` instead of failing to preserve the cache.
Most of the positivity extensions will soon be replaced by the `positivity_lemma` attribute.
---
<!-- Your PR title will become the first line of the commit messag
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
new-contributor
t-meta
file-removed
|
529/342 |
Mathlib/Algebra/Order/Algebra.lean,Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean,Mathlib/Algebra/Order/Floor/Extended.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/Normed/Algebra/GelfandRadius.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Real/Sqrt.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Basic/ENNReal/Basic.lean,Mathlib/Basic/ENNReal/Real.lean,Mathlib/Basic/NNReal/Defs.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Bound.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Removal.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/Geometry/Euclidean/Altitude.lean,Mathlib/Geometry/Euclidean/Volume/Basic.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/NumberTheory/ArithmeticFunction/VonMangoldt.lean,Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/NumberTheory/Height/NumberField.lean,Mathlib/NumberTheory/Height/Projectivization.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/NumberTheory/SelbergSieve.lean,Mathlib/RingTheory/Radical/NatInt.lean,Mathlib/Tactic/LinearCombination.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Positivity/Finset.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,MathlibTest/Tactic/Positivity/Basic.lean,MathlibTest/Tactic/Positivity/Cache.lean |
49 |
11 |
['HugLycan', 'fpvandoorn', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
0-13492 3 hours ago |
0-31284 8 hours ago |
0-32645 9 hours |
2 |
| 45805 |
vihdzp author:vihdzp |
chore(Algebra/Order/Group/Indicator): generalize typeclasses |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
easy
maintainer-merge
label:t-algebra$ |
3/3 |
Mathlib/Algebra/Order/Group/Indicator.lean |
1 |
2 |
['Hagb', 'github-actions', 'grunweg', 'vlad902'] |
nobody |
0-11992 3 hours ago |
1-1305 1 day ago |
1-1232 1 day |
0 |
| 39307 |
FordUniver author:FordUniver |
feat(Combinatorics/SimpleGraph/Copy): introduce `UnlabeledCopy` carrier subtype |
Adds `abbrev UnlabeledCopy A B := {B' : B.Subgraph // Nonempty (A ≃g B'.coe)}` and uses it to replace the previous inline filter-set body of `copyCount G H`. Drops the now unused legacy Finset-image bridge `copyCount_eq_card_image_copyToSubgraph`. Adds `uniqueUnlabeledCopyBot` instance so `copyCount_bot` is a one-liner via `Fintype.card_unique`.
Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com>
---
**Step 1/5 of the `Copy` / `InducedCopy` refactor-feat stack.**
This PR isolates the `UnlabeledCopy` type introduction and the count's type-form redefinition from the larger rename/convention work in the rest of the stack. Note that resolving the current clash in naming (`Copy` and `UnlabeledCopy` vs `labelledCopyCount` and `copyCount`) is part of #38745.
|
t-combinatorics
awaiting-requeue
|
29/24 |
Mathlib/Combinatorics/SimpleGraph/Copy.lean |
1 |
39 |
['FordUniver', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'bryangingechen', 'github-actions', 'jcommelin', 'mathlib-bors', 'mathlib-merge-conflicts', 'mitchell-horner'] |
nobody |
0-11683 3 hours ago |
0-11683 3 hours ago |
128-48687 128 days |
6 |
| 45829 |
IvanRenison author:IvanRenison |
feat(Data/Holor): reorder arguments of `Holor` and define an instance `LawfulApplicative (Holor ds)` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-data |
70/50 |
Mathlib/Data/Holor.lean |
1 |
1 |
['github-actions'] |
nobody |
0-11122 3 hours ago |
0-11169 3 hours ago |
0-11096 3 hours |
0 |
| 45803 |
vihdzp author:vihdzp |
chore(Algebra/Order/Monoid/WithTop): generalize typeclass assumptions |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
easy
maintainer-merge
label:t-algebra$ |
7/7 |
Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Order/SuccPred/ENat.lean |
3 |
3 |
['Hagb', 'github-actions', 'grunweg', 'vlad902'] |
nobody |
0-11080 3 hours ago |
0-39595 10 hours ago |
0-39522 10 hours |
0 |
| 45804 |
vihdzp author:vihdzp |
chore(Dynamics/Flow): generalize typeclass assumptions |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-dynamics
easy
maintainer-merge
|
10/11 |
Mathlib/Dynamics/Flow.lean |
1 |
5 |
['Hagb', 'github-actions', 'grunweg', 'leanprover-radar'] |
nobody |
0-10510 2 hours ago |
0-41140 11 hours ago |
0-41067 11 hours |
0 |
| 45824 |
vihdzp author:vihdzp |
refactor: deprecate `IsOrderConnected` |
The typeclass describes itself as an intuitionistic substitute of `IsTrans`. But Mathlib is not intuitionistic, so we might as well just use that instead. This also avoids confusion with `Set.OrdConnected`, which is unrelated.
See [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/IsOrderConnected/with/637402302).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order |
18/6 |
Mathlib/Data/List/Lex.lean,Mathlib/Order/RelClasses.lean |
2 |
2 |
['github-actions', 'plp127'] |
nobody |
0-9390 2 hours ago |
0-35622 9 hours ago |
0-35549 9 hours |
0 |
| 45817 |
WenrongZou author:WenrongZou |
feat(Topology/PontryaginDual): add some examples of Pontryagin duals |
In this PR, we prove Pontryagin duals of `ZMod n`, `ℤ`, `ℝ` and `Circle` are `ZMod n`, `Circle`, `ℝ` and `ℤ` respectively.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-topology |
216/1 |
Mathlib.lean,Mathlib/Topology/Algebra/PontryaginDual.lean,Mathlib/Topology/Algebra/PontryaginDual/Examples.lean |
3 |
9 |
['WenrongZou', 'github-actions', 'tb65536', 'vihdzp'] |
nobody |
0-9366 2 hours ago |
0-20928 5 hours ago |
0-63828 17 hours |
0 |
| 45075 |
vdelbarc author:vdelbarc |
feat(LinearAlgebra/Span): characterize IsCoatom submodules via IsCompl with singleton spans |
`isCompl_span_singleton_iff` shows that a submodule over a division ring is a coatom if and only if it admits a complement spanned by a vector outside the submodule.
The simp lemma `LinearEquiv.coord_smul`, shows that the coordinate map associated with a nonzero singleton span sends `a • x` to `a`.
Co-authored by: Gustavo Infanti, Exequiel Rivas and Paul Schwahn
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
new-contributor
label:t-algebra$ |
14/0 |
Mathlib/LinearAlgebra/Span/Basic.lean |
1 |
39 |
['JX-Mo', 'alreadydone', 'artie2000', 'github-actions', 'themathqueen', 'vdelbarc'] |
nobody |
0-9225 2 hours ago |
0-26207 7 hours ago |
16-43520 16 days |
0 |
| 36428 |
wrenna-robson author:wrenna-robson |
feat(Logic/Equiv/Fin): Streamline equiv definitions using mkDivMod |
This PR uses `Fin.mkDivMod` (from Batteries) to streamline `finProdFinEquiv`, and introduces `Nat`-level analogues to do the same for `Nat.divModEquiv`.
* Add `Nat.mkDivMod n i j := n * i + j`, the `ℕ`-level analogue of `Fin.mkDivMod`, with basic `div`/`mod`/injectivity lemmas.
* Add `Nat.mkDivFin n i (j : Fin n)`, a variant with the remainder bundled as a `Fin n`, whose lemmas recover the quotient and remainder without side conditions.
* Redefine `finProdFinEquiv` in terms of `Fin.mkDivMod`, `Fin.divNat` and `Fin.modNat`.
* Add `natProdFinEquiv n : ℕ × Fin n ≃ ℕ` (the analogue of `finProdFinEquiv` with `m` infinite), and redefine `Nat.divModEquiv` as its inverse.
* `Nat.divModEquiv` now reconstructs `n * q + r` rather than `q * n + r`, matching `Fin.mkDivMod`. The generated `simps` lemmas change shape accordingly, and downstream proofs (`Complex.hasSum_cos'`, `Complex.hasSum_sin'`, `Complex.hasSum_arctan`, `mulHeight_mul_mulHeight`, `Finpartition.IsEquipartition.exists_partPreservingEquiv`) are adjusted.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
117/94 |
Mathlib/Analysis/SpecialFunctions/Complex/Arctan.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Series.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Logic/Equiv/Fin/Basic.lean,Mathlib/NumberTheory/Height/MvPolynomial.lean,Mathlib/Order/Partition/Equipartition.lean |
6 |
7 |
['JovanGerb', 'github-actions', 'mathlib-merge-conflicts', 'wrenna-robson'] |
eric-wieser assignee:eric-wieser |
0-9167 2 hours ago |
0-7183 1 hour ago |
125-7901 125 days |
0 |
| 45830 |
plp127 author:plp127 |
feat(Data/Finsupp/Lex): left congruence for finsupp lex and colex |
Prove left congruence for finsupp lex and colex, right congruence is not proved since it requires preserving `0`. Also some trivial generalizations in `Mathlib.Data.Finsupp.WellFounded` and `Mathlib.Data.DFinsupp.WellFounded`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order
t-data
|
90/5 |
Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Data/Finsupp/Lex.lean,Mathlib/Data/Finsupp/WellFounded.lean |
3 |
1 |
['github-actions'] |
nobody |
0-8841 2 hours ago |
0-7954 2 hours ago |
0-7881 2 hours |
0 |
| 45793 |
Hagb author:Hagb |
feat(Data/{D,}Finsupp/WellFounded): weaken `AddMonoid` to `Zero` in `WellFoundedLT` instances |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-data
easy
maintainer-merge
|
6/6 |
Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Data/Finsupp/WellFounded.lean |
2 |
10 |
['Hagb', 'github-actions', 'grunweg', 'leanprover-radar', 'vihdzp'] |
nobody |
0-8653 2 hours ago |
1-43713 1 day ago |
1-43640 1 day |
0 |
| 45827 |
RFT-SIRM author:RFT-SIRM |
feat(Combinatorics): characterize GF(2) incidence independence |
## Summary
Adds an incidence-theory module over `ZMod 2` for finite indexed undirected multigraphs, represented by two endpoint maps.
The edge type is an index type, so parallel edges remain distinct. Both endpoints are counted, so a loop contributes twice at its vertex and has a zero incidence column over `ZMod 2`.
The main theorem characterizes linear independence of the incidence columns by the finite even-subgraph criterion:
`LinearIndependent (ZMod 2) (column source target) ↔ IsForest source target`.
The module also proves:
- invariance under reversing all edge orientations;
- the handshake-parity identity;
- preservation of column independence after deleting a distinguished root row;
- exclusion of loops and parallel edges in an incidence forest;
- uniqueness of coefficients for reduced incidence sums.
## Mathematical scope
The result is formulated for finite edge-index types and does not identify parallel edges. The predicate `IsForest` is expressed by the absence of a nonempty finite edge subset with even degree at every vertex. Thus the algebraic statement is independent of any particular graph geometry.
## Validation status
The branch is based directly on upstream `master` at `139105d28c7685a154cb3093f79edb2e16708099`.
A local Lean build was unavailable in the current execution environment. CI validation and API/style review are therefore still required.
## AI assistance
AI tools assisted with drafting and editing the formalization. The author remains responsible for checking the statements, proof, API choices, and any requested revisions before this contribution is considered ready for review. |
t-combinatorics
new-contributor
LLM-generated
|
304/0 |
Mathlib.lean,Mathlib/Combinatorics/Incidence/Forest.lean |
2 |
2 |
['github-actions'] |
nobody |
0-7432 2 hours ago |
0-10193 2 hours ago |
0-10120 2 hours |
0 |
| 45828 |
aliquis11 author:aliquis11 |
feat(Analysis/InnerProductSpace/LinearPMap): characterise the adjoint domain |
Add a characterisation of the adjoint domain of a densely defined operator. The existing mem_adjoint_domain_of_exists gives one implication. The new result states that domain membership is equivalent to the existence of a vector satisfying the inner product identity. This standard characterisation from functional analysis is useful in constructing the Friedrichs extension.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis
new-contributor
|
14/0 |
Mathlib/Analysis/InnerProductSpace/LinearPMap.lean |
1 |
2 |
['github-actions'] |
nobody |
0-7399 2 hours ago |
0-11213 3 hours ago |
0-11140 3 hours |
0 |
| 43859 |
kebekus author:kebekus |
feat: Jensen-Type Inequality for Circle Averages |
In preparation for the upcoming proof of Nevanlinna's "Lemma on Logarithmic Derivatives", establish a Jensen-type inequality for circle averages, where the positive part of the logarithm plays the role of the concave function.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
LLM-generated
|
135/3 |
Mathlib.lean,Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/Analysis/Complex/Liouville.lean,Mathlib/Analysis/Complex/OpenMapping.lean,Mathlib/Analysis/Complex/PhragmenLindelof.lean,Mathlib/Analysis/Complex/RemovableSingularity.lean,Mathlib/Analysis/Complex/Schwarz.lean,Mathlib/Analysis/Complex/ValueDistribution/LogDerivLemma.lean,Mathlib/Analysis/Convex/SpecificFunctions/Basic.lean,Mathlib/Analysis/Normed/Algebra/GelfandFormula.lean,Mathlib/Analysis/SpecialFunctions/Elliptic/Weierstrass.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Beta.lean,Mathlib/Analysis/SpecialFunctions/Integrals/PosLog.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/MeasureTheory/Integral/CircleAverage.lean,Mathlib/MeasureTheory/Integral/CircleIntegral.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Finite.lean,Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/NumberTheory/LSeries/DirichletContinuation.lean,Mathlib/NumberTheory/LSeries/ZMod.lean,Mathlib/Probability/Moments/ComplexMGF.lean |
21 |
18 |
['EtienneC30', 'github-actions', 'kebekus', 'mathlib-merge-conflicts'] |
urkud assignee:urkud |
0-6482 1 hour ago |
0-6482 1 hour ago |
50-50349 50 days |
0 |
| 45242 |
Nicola9Falciola author:Nicola9Falciola |
chore(LinearAlgebra/Matrix/SpecialLinearGroup): add missing api |
---
This PR adds missing API for `SpecialLinearGroup`.
- For `coe_mk_mul_mk` both `simp` and ` rw [coe_mul, coe_mk, coe_mk]` fail.
- For `coe_inv_mk` both `simp` and ` rw [coe_inv, coe_mk]` fail.
- For `map_mk_apply` `simp` fails.
Without this API is dealing with matrix literals in `SL` is quite annoying.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
tech debt
label:t-algebra$ |
46/41 |
Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Projective.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean |
2 |
16 |
['Nicola9Falciola', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
0-6118 1 hour ago |
0-6225 1 hour ago |
14-52266 14 days |
0 |
| 45472 |
EtienneC30 author:EtienneC30 |
feat: use `IsApply` for `OneHom` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #45474
|
large-import
t-algebra
label:t-algebra$ |
264/124 |
Mathlib.lean,Mathlib/Algebra/Group/Action/FunLike.lean,Mathlib/Algebra/Group/Hom/Basic.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Hom/Instances.lean,Mathlib/Algebra/Group/IsApply.lean,Mathlib/Algebra/Group/IsNPowApplyEqIterate.lean,Mathlib/Algebra/GroupWithZero/Action/FunLike.lean,Mathlib/Algebra/GroupWithZero/FunLike.lean,Mathlib/Algebra/Module/FunLike.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Data/Nat/Factorization/Basic.lean,Mathlib/Data/Nat/Factorization/Defs.lean,Mathlib/Geometry/Convex/AffineMap/Module.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfStabilizer.lean,Mathlib/LinearAlgebra/AffineSpace/Basis.lean,Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Basis/SMul.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Operations.lean,Mathlib/RingTheory/Derivation/Basic.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/SetTheory/Ordinal/CantorNormalForm.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean |
27 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
j-loreaux assignee:j-loreaux |
0-6033 1 hour ago |
0-6035 1 hour ago |
0-6535 1 hour |
0 |
| 45504 |
EtienneC30 author:EtienneC30 |
feat: use `IsApply` for `Function.Embedding` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #45474 |
t-data |
185/85 |
Mathlib.lean,Mathlib/Algebra/Group/Action/FunLike.lean,Mathlib/Algebra/Group/IsApply.lean,Mathlib/Algebra/Group/IsNPowApplyEqIterate.lean,Mathlib/Algebra/GroupWithZero/Action/FunLike.lean,Mathlib/Algebra/GroupWithZero/FunLike.lean,Mathlib/Algebra/Module/FunLike.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Geometry/Convex/AffineMap/Module.lean,Mathlib/GroupTheory/GroupAction/Embedding.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/LinearAlgebra/AffineSpace/Basis.lean,Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Basis/SMul.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Operations.lean,Mathlib/RingTheory/Derivation/Basic.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean |
19 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
j-loreaux assignee:j-loreaux |
0-6030 1 hour ago |
0-6032 1 hour ago |
0-5959 1 hour |
0 |
| 45535 |
EtienneC30 author:EtienneC30 |
feat: use `IsApply` for `Poly` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #45474 |
t-number-theory |
220/112 |
Mathlib.lean,Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/Group/Action/FunLike.lean,Mathlib/Algebra/Group/FunLike.lean,Mathlib/Algebra/Group/IsApply.lean,Mathlib/Algebra/Group/IsNPowApplyEqIterate.lean,Mathlib/Algebra/GroupWithZero/Action/FunLike.lean,Mathlib/Algebra/GroupWithZero/FunLike.lean,Mathlib/Algebra/Module/FunLike.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Geometry/Convex/AffineMap/Module.lean,Mathlib/LinearAlgebra/AffineSpace/Basis.lean,Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Basis/SMul.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Operations.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/RingTheory/Derivation/Basic.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean |
20 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
j-loreaux assignee:j-loreaux |
0-6027 1 hour ago |
0-6029 1 hour ago |
0-5956 1 hour |
0 |
| 45599 |
EtienneC30 author:EtienneC30 |
feat: use `IsApply` for `AffineMap` and `AffineIsometry` |
In `Analysis.Convex.PathConnected`, I have to write `_root_.add_apply` because there is a conflict with `Path.add_apply`. I don't know how to make `Path.add_apply` protected because it is an automatically generated lemma.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #45474 |
t-algebra
t-analysis
label:t-algebra$ |
245/111 |
Mathlib.lean,Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/Group/Action/FunLike.lean,Mathlib/Algebra/Group/FunLike.lean,Mathlib/Algebra/Group/IsApply.lean,Mathlib/Algebra/Group/IsNPowApplyEqIterate.lean,Mathlib/Algebra/GroupWithZero/Action/FunLike.lean,Mathlib/Algebra/GroupWithZero/FunLike.lean,Mathlib/Algebra/Module/FunLike.lean,Mathlib/Algebra/Module/LinearMap/End.lean,Mathlib/Analysis/Convex/PathConnected.lean,Mathlib/Analysis/Normed/Affine/Isometry.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/RingInverseOrder.lean,Mathlib/Geometry/Convex/AffineMap/Module.lean,Mathlib/LinearAlgebra/AffineSpace/AffineMap.lean,Mathlib/LinearAlgebra/AffineSpace/Basis.lean,Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Basis/SMul.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Operations.lean,Mathlib/RingTheory/Derivation/Basic.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean |
23 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
j-loreaux assignee:j-loreaux |
0-6024 1 hour ago |
0-6026 1 hour ago |
0-5953 1 hour |
0 |
| 45758 |
grunweg author:grunweg |
doc(RepresentationTheory/Action): rewrite module doc-string |
The current header 'Main properties' is not very information (and should also be a level one header). Add a more informative header and rewrite the introductory paragraph slightly.
While we're at it, remove a TODO that has been completed by now.
-----
Claude Code was used to suggest a better title and a new paragraph. I then rewrote the paragraph by hand, to remove the AI speak.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
maintainer-merge |
6/7 |
Mathlib/RepresentationTheory/Action.lean |
1 |
5 |
['Whysoserioushah', 'github-actions', 'grunweg'] |
nobody |
0-5102 1 hour ago |
2-10450 2 days ago |
2-18870 2 days |
0 |
| 45833 |
Whysoserioushah author:Whysoserioushah |
refactor(Homology/Bifunctor): change abbrev to reducible def |
This change speeds up the kernel check, it's discovered from formalizing [Stacks Project](https://github.com/AxiomMath/Stacks).
Co-authored-by: Axiom formalization team
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra label:t-algebra$ |
4/2 |
Mathlib/Algebra/Homology/Bifunctor.lean |
1 |
3 |
['Whysoserioushah', 'github-actions', 'leanprover-radar'] |
nobody |
0-3876 1 hour ago |
0-4279 1 hour ago |
0-4206 1 hour |
0 |
| 40953 |
ymonbru author:ymonbru |
feat: the definition of a KSheaf on a T2 Space |
This files adds the definition of a KSheaf on a T2 space with value in an arbitrary category.
One may expect this notion to come from sheaves on a site of compact subset of a topological space but there is no coresponding Grothendieck topology on compact subsets. In particular, this is because one of the axioms is in the form of a colimit and can't be expressed as a limit condition (hence a sheaf condition).
It also adds API that allow to use the axioms in a convenient way.
---
- [x] depends on: #40737
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
t-category-theory
|
170/0 |
Mathlib.lean,Mathlib/Topology/Sheaves/KSheaf.lean,docs/references.bib |
3 |
33 |
['Multramate', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'ymonbru'] |
ocfnash assignee:ocfnash |
0-3317 55 minutes ago |
0-3317 54 minutes ago |
122-80603 122 days |
1 |
| 39935 |
FordUniver author:FordUniver |
feat(Combinatorics/SimpleGraph/Finite): LocallyFiniteOrder |
Adds `LocallyFiniteOrder (SimpleGraph V)` for finite `V` and decidability of `G ≤ H` for a fintype `V` with decidable adjacency. Required for finite sums over intervals of simple graphs.
Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com>
---
Came up while writing a Möbius inversion between copy counts and induced copy counts ([WIP](https://github.com/FordUniver/mathlib4/pull/36/changes)) that sums over the closed interval `Finset.Icc G ⊤` of supergraphs. Decidability of the order plus local-finiteness of the lattice felt like a clean standalone piece to land first, before the rest of the Möbius file.
Less sure about what the conventions for declaring type class instances are in mathlib, let me know if this is not of the expected shape or should not be included at all. |
t-combinatorics |
13/0 |
Mathlib/Combinatorics/SimpleGraph/Finite.lean |
1 |
16 |
['FordUniver', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-2625 43 minutes ago |
0-2725 44 minutes ago |
100-37575 100 days |
0 |
| 45834 |
osmangroup author:osmangroup |
feat(GroupTheory/Abelianization/Basic): abelianization of a quotient |
- Adds `Mathlib/GroupTheory/Abelianization/Basic.lean`, containing
`Group.Abelianization.quotientMulEquiv`: for a normal subgroup `N` of `G`,
the abelianization of `G ⧸ N` is isomorphic to the quotient of the abelianization of `G`
by the image of `N`.
- Also adds simp lemmas describing the equivalence
and its inverse on elements of the group, and additive versions via `to_additive`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-group-theory
new-contributor
|
59/0 |
Mathlib.lean,Mathlib/GroupTheory/Abelianization/Basic.lean |
2 |
2 |
['github-actions'] |
nobody |
0-1202 20 minutes ago |
0-1301 20 minutes ago |
0-1228 20 minutes |
0 |
| 45083 |
fpvandoorn author:fpvandoorn |
perf: lower prio of expensive instance |
* Lower priority of rarely-used instance
* Also remove a superfluous variable block (these variables were already declared)
---
Other attempts: #45080 (don't import this file); #45084 (other attempted fix, no speedup).
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
maintainer-merge
label:t-algebra$ |
2/5 |
Mathlib/Algebra/Order/Quantale.lean |
1 |
10 |
['adomani', 'aimmerwahr', 'bryangingechen', 'felixpernegger', 'fpvandoorn', 'github-actions', 'leanprover-radar'] |
nobody |
0-280 4 minutes ago |
20-5165 20 days ago |
20-5092 20 days |
0 |
| Number |
Author |
Title |
Description |
Labels |
+/- |
Modified files (first 100) |
📝 |
💬 |
All users who commented or reviewed |
Assignee(s) |
Updated |
Last status change |
total time in review |
blocks |
| 36719 |
NoneMore author:NoneMore |
feat(ModelTheory): add `PartialType` for first-order theories |
This PR adds the definitions of partial types over theories and over parameter sets, and proves several equivalent characterizations.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #36667
[](https://gitpod.io/from-referrer/)
|
t-logic
new-contributor
|
432/17 |
Mathlib.lean,Mathlib/ModelTheory/PartialTypes.lean,Mathlib/ModelTheory/Semantics.lean |
3 |
7 |
['NoneMore', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] |
nobody |
116-47280 3 months ago |
116-47367 116 days ago |
124-27426 124 days |
0 |
| 42718 |
justinhalford author:justinhalford |
feat(Combinatorics/SetFamily): the linear algebra method and the Oddtown theorem |
Adds the basic form of the **linear algebra method** for set families (Babai–Frankl) together with its standard first application, the **Oddtown theorem** (Berlekamp, 1969).
### What's here
- `linearIndependent_of_dotProduct_eq_ite` — a family of vectors whose pairwise dot products form the identity matrix is linearly independent. Stated over an arbitrary field, so it does not rely on positivity; this is the engine of the method.
- `Finset.charVec` — the characteristic vector of a finset, valued in a semiring, with `charVec_apply`.
- `Finset.charVec_dotProduct_charVec` — the dot product of two characteristic vectors is the cardinality of the intersection.
- `Finset.card_le_card_of_odd_card_of_even_card_inter` — **Oddtown**: a family of finsets of odd cardinality, any two of which meet in an even number of elements, has at most `Fintype.card α` members.
### Why
I could not find the linear algebra method anywhere in Mathlib. Searching for `Oddtown`, `Eventown`, Fisher's inequality, `RayChaudhuri` and `FranklWilson` returns nothing, and exactly one file under `Mathlib/Combinatorics/` uses `finrank`/`LinearIndependent` (`SimpleGraph/LapMatrix.lean`, for spectral graph theory). Since the technique underlies a large family of extremal results, the general lemma is stated separately from Oddtown so that Eventown, Fisher's inequality and Ray-Chaudhuri–Wilson can be added on top later.
If this does already exist under a formulation I did not think to search for, I would be glad to be pointed at it.
### Verification
Compiles against `master` (Lean 4.34.0-rc1) with no errors or warnings. `#print axioms` on each of the three results reports only `[propext, Classical.choice, Quot.sound]`. No `sorry`, no new axioms, no `set_option` overrides.
### Disclosure
This file was written with AI assistance (Claude Opus 5) and then checked against the Lean kernel; that is noted in the module docstring as well. Every statement, proof and docstring has been read through by me before submission. Happy to adjust naming, generality or placement to whatever the maintainers prefer.
### Process note
I am a first-time contributor and I am aware the usual convention is to raise a new file on Zulip before opening a PR. Apologies for going in the other order — I am glad to move the discussion to `#mathlib4` if that is preferred, or to close this if the material is not wanted.
---
[](https://gitpod.io/#https://github.com/leanprover-community/mathlib4)
|
t-combinatorics
new-contributor
|
144/0 |
Mathlib.lean,Mathlib/Combinatorics/SetFamily/Oddtown.lean |
2 |
3 |
['D-Thomine', 'github-actions'] |
nobody |
88-13226 2 months ago |
88-17236 88 days ago |
88-17163 88 days |
0 |
| 42540 |
shaikidris author:shaikidris |
feat(Combinatorics): asymptotic / natural density and linear-growth bridge |
Redefines asymptotic / natural density around a shared finite relative-density profile, instead of density along `SummationFilter`s.
* `Set.partialDensity S A b` — proportion of `A ∩ Iio b` in `S`
* `Set.lowerDensity` / `Set.upperDensity` — liminf / limsup of that profile
* `Set.HasDensity` — convergence of the profile; `Set.HasNaturalDensity` — `ℕ` case with `A = univ`
* Basic API: `[0,1]` bounds, empty/univ, finite sets have density `0`, `Finset.range` characterizations
* Drops the filter-parametric layer and the junk-valued `naturalDensity`
* Opt-in `Mathlib.Combinatorics.AsymptoticDensity.LinearGrowth`: exact lower/upper density equalities for the counting function `n ↦ #{x ∈ Finset.range n | x ∈ S}`, with no `LinearGrowth` dependency on the core density module
* Retargets the Schnirelmann TODO to this module; Schnirelmann-density comparison proofs are left for follow-up (the linear-growth bridge is proved here)
AI disclosure: this PR is primarily LLM-generated (OpenAI Codex). I reviewed the design (with review comments feedback), public APIs and edge-cases.
I primarily used these as part of my other project on quantitative descent and I think there is a merit in reusability.
---
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
LLM-generated
|
358/2 |
Mathlib.lean,Mathlib/Combinatorics/AsymptoticDensity.lean,Mathlib/Combinatorics/AsymptoticDensity/LinearGrowth.lean,Mathlib/Combinatorics/Schnirelmann.lean |
4 |
16 |
['D-Thomine', 'b-mehta', 'github-actions', 'jcommelin', 'mathlib-bors', 'shaikidris', 'wwylele'] |
nobody |
84-17088 2 months ago |
84-17148 84 days ago |
93-33015 93 days |
0 |
| 42590 |
AntoineduFresne author:AntoineduFresne |
feat(Order/UpperLower/Closure): the upper and lower closures of a maximal antichain cover the order |
I add `IsMaxAntichain.upperClosure_union_lowerClosure`. It says that the upper and lower closures of a maximal antichain cover the whole order.
I put it right after `ordConnected_iff_upperClosure_inter_lowerClosure`, next to `upperClosure_inter_lowerClosure`, which seems the right spot.
The lemma is about antichains, so `Mathlib/Order/Antichain.lean` would have looked like the natural file to modify, but `upperClosure` is defined in `Mathlib/Order/UpperLower/Closure.lean`, which imports `Mathlib.Order.Interval.Set.OrdConnected`, which imports `Mathlib.Order.Antichain`. So to avoid an import loop I put it in `Closure.lean`.
I split this out of #40741, where a reviewer suggested it. Nothing in that PR uses the lemma.
|
t-order
new-contributor
|
13/0 |
Mathlib/Order/Antichain.lean,Mathlib/Order/UpperLower/Closure.lean |
2 |
12 |
['AntoineduFresne', 'Ruben-VandeVelde', 'SnirBroshi', 'github-actions', 'tdwag123'] |
nobody |
69-22927 2 months ago |
69-22994 69 days ago |
85-8233 85 days |
0 |
| 43672 |
javgomzar author:javgomzar |
chore(LinearAlgebra/Matrix): add push tags to transpose lemmas |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
6/5 |
Mathlib/LinearAlgebra/Matrix/Defs.lean |
1 |
3 |
['github-actions'] |
nobody |
60-1082 1 month ago |
60-1245 60 days ago |
60-1172 60 days |
0 |
| 42424 |
lydia-schiff author:lydia-schiff |
feat(Order/Partition/Finpartition): transport a set partition along a type equivalence |
- Adds `Finpartition.congr` to transport a `Finpartition` along a type equivalence.
- We can use `Finpartition.map` if we have an order-iso, and the equivalence induces one via the new `Finset.congrOrderIso` which is based on `Equiv.finsetCongr`.
- Includes parts, card, refl, and round-trip lemmas.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- `Equiv.finsetCongr` already gives us an equivalence of Finsets, so the new `Finset.congrOrderIso` just adds that the power-set lattice structure is also preserved.
- Includes lemmas showing that the parts are e-images of the old ones, card is preserved, and refl + round-trip for the equivalence.
- The cardinality lemma was the original motivation from some work on Stirling numbers, but I thought that `Finpartition.congr` and `Finset.congrOrderIso` seemed reusable and hopefully useful in their own right, and thought it would make a good first contribution.
- Zulip thread about naming and placement [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60Finpartition.2Econgr.60.20.E2.80.94.20naming.20.26.20placement)
- I used Claude Opus 4.8 to help draft the proofs and explore the API. I have spent several weeks making sure I understand and can justify every line and I've learned a lot which is great.
[](https://gitpod.io/from-referrer/)
|
t-order
LLM-generated
new-contributor
|
61/0 |
Mathlib/Data/Finset/Image.lean,Mathlib/Order/Partition/Finpartition.lean |
2 |
6 |
['github-actions', 'lydia-schiff', 'mathlib-merge-conflicts'] |
nobody |
59-70639 1 month ago |
59-70739 59 days ago |
86-48880 86 days |
0 |
| 43702 |
theebayuser author:theebayuser |
feat(LinearAlgebra/AffineSpace): add Varignon's theorem |
Hello, this PR introduces Varignon's theorem.
Varignon's theorem states that the midpoints of the sides of a quadrilateral form a parallelogram. More precisely, `midpoint_midpoint_midpoint_rotate` states: the two diagonals of the midpoint quadrilateral have the same midpoint.
This PR was written with AI assistance (Claude Code)
|
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
22/2 |
Mathlib/LinearAlgebra/AffineSpace/Midpoint.lean,docs/1000.yaml |
2 |
7 |
['github-actions', 'theebayuser', 'wwylele'] |
nobody |
58-81056 1 month ago |
58-81214 58 days ago |
59-35292 59 days |
0 |
| 29744 |
espottesmith author:espottesmith |
feat(Combinatorics): define directed hypergraphs |
This PR defines directed hypergraphs:
```
@[ext]
structure DiHypergraph (α : Type*) where
/-- The vertex set -/
vertexSet : Set α
/-- The edge set -/
edgeSet : Set ((Set α) × (Set α))
/-- Each edge is a pair (s, d), where s ⊆ vertexSet and d ⊆ vertexSet -/
edge_src_dst_isSubset_vertexSet' : ∀ ⦃e⦄, e ∈ edgeSet → e.1 ⊆ vertexSet ∧ e.2 ⊆ vertexSet
```
Additional definitions:
- tail/head stars and negative/positive stars
- some special cases (B-Graph, F-Graph, BF-Graph, and what I'm calling a "non-endless" dihypergraph, where neither the source/tail nor the destination/head are empty)
- Vertex and (hyper)edge adjacency
- isolated vertices
- empty and nonempty dihypergraphs
The design employed here is based off of #28613, but this PR does not depend on that one.
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
To indicate co-authors, include at least one commit authored by each
co-author among the commits in the pull request. If necessary, you may
create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
When merging, all the commits will be squashed into a single commit listing all co-authors.
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
290/0 |
Mathlib.lean,Mathlib/Combinatorics/DiHypergraph/Basic.lean |
2 |
12 |
['SnirBroshi', 'b-mehta', 'espottesmith', 'github-actions', 'mathlib4-merge-conflict-bot', 'pimotte'] |
nobody |
49-76776 1 month ago |
139-75399 139 days ago |
277-81749 277 days |
1 |
| 43780 |
SashaIr author:SashaIr |
feat: q-analogs |
An implementation of q-analogs, q-binomials, and counting results.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
965/0 |
Mathlib.lean,Mathlib/Combinatorics/QAnalog/Basic.lean,Mathlib/Combinatorics/QAnalog/Binomial.lean,Mathlib/Combinatorics/QAnalog/Counting.lean,Mathlib/Combinatorics/QAnalog/Subspace.lean |
5 |
7 |
['SashaIr', 'SnirBroshi', 'b-mehta', 'github-actions'] |
nobody |
49-67519 1 month ago |
49-67572 49 days ago |
56-61979 56 days |
0 |
| 38334 |
8e7 author:8e7 |
feat(Combinatorics/SimpleGraph/TreeDecomp): define tree decompositions |
Add definition for tree decompositions on simple graphs. Define the tree width of a simple graph and prove basic statements and conversions.
```lean
structure TreeDecomp (G : SimpleGraph V) (W : Type) where
/-- The set of vertices in each bag. -/
bag : W → Finset V
/-- The graph adjacency relation of bags. -/
tree : SimpleGraph W
/-- T must be a tree. -/
isTree : IsTree tree
/-- All vertices in G must appear in some bag. -/
vertexCover : ∀ v : V, ∃ w : W, v ∈ bag w
/-- For any edge (u, v) in G, there is a bag containing both u and v. -/
edgeCover ⦃u v : V⦄ : G.Adj u v → ∃ w : W, u ∈ bag w ∧ v ∈ bag w
/-- For any vertex v in G, the set of bags that contain v is preconnected. -/
connectedBags : ∀ v : V, (tree.induce ({w | v ∈ bag w})).Preconnected
```
AI Usage: Some proofs are written with the help of Claude Code, and everything has been manually reviewed.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #38027
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
LLM-generated
|
395/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/TreeDecomp.lean |
2 |
42 |
['8e7', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
49-49560 1 month ago |
106-36415 106 days ago |
130-18323 130 days |
1 |
| 43953 |
hasjack author:hasjack |
feat(Combinatorics/SimpleGraph/LapMatrix): bound Laplacian eigenvalues by `|V|` |
Prove that every Laplacian eigenvalue of a finite simple graph is at most
the number of vertices, via comparison of the Rayleigh quotient with the
complete graph. Also record the underlying quadratic-form bound
`xᵀ L x ≤ |V| · ‖x‖²`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---` , otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
Adds `dotProduct_mulVec_lapMatrix_le_card` and `eigenvalues_lapMatrix_le_card`
in `LapMatrix.lean` only. The claim is the uniform bound `λ ≤ |V|` for every
indexed eigenvalue; it does not assert `|V| ∈ spectrum` for every graph.
Searched existing LapMatrix API (PSD, `zero_mem_spectrum_lapMatrix`,
`lapMatrix_top`) and did not find a card upper bound under another name.
Happy to rename if a preferred lemma already exists. |
new-contributor
t-combinatorics
LLM-generated
|
37/1 |
Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean,Mathlib/Data/Matrix/Mul.lean |
2 |
61 |
['Parcly-Taxel', 'SnirBroshi', 'github-actions', 'hasjack'] |
nobody |
49-7472 1 month ago |
49-8001 49 days ago |
51-32083 51 days |
0 |
| 44099 |
xiahongchi author:xiahongchi |
feat: maximize concave functions at stationary points |
Adds two first-order maximum principles for real concave functions:
* `ConcaveOn.le_of_hasDerivAt_eq_zero`
* `ConcaveOn.isGreatest_of_hasDerivAt_eq_zero`
They use the existing secant-slope bounds and require differentiability only at the candidate maximizer.
Tested by compiling `Mathlib/Analysis/Convex/Deriv.lean` locally. |
t-analysis
new-contributor
|
31/0 |
Mathlib/Analysis/Convex/Deriv.lean |
1 |
3 |
['github-actions'] |
nobody |
47-50326 1 month ago |
47-50913 47 days ago |
47-50840 47 days |
0 |
| 44103 |
xiahongchi author:xiahongchi |
feat: equate derivatives of ordered functions at contact points |
This adds Fréchet-derivative and scalar-derivative lemmas saying that two everywhere-ordered real-valued functions have equal derivatives wherever they agree. The proof applies Fermat’s theorem to their nonnegative difference.
This packages and generalizes the scalar envelope argument from Bryan Sanchez’s `NSBlwChain/Caveats/C2_Envelope.lean` at `Brsanch/ns-lean-proofs@b73f537d1646165fbdc0993c5b2e223355dc3469` (MIT).
The new declarations elaborate under the released toolchain; compiling the current master file there reports only one pre-existing current-Lean field-notation incompatibility before the new code. Current-toolchain CI is authoritative. |
t-analysis
new-contributor
|
20/0 |
Mathlib/Analysis/Calculus/LocalExtr/Basic.lean |
1 |
2 |
['github-actions'] |
nobody |
47-48641 1 month ago |
47-49098 47 days ago |
47-49025 47 days |
0 |
| 42955 |
mpacholski author:mpacholski |
feat(diffgeo): add Hom-bundle support and fix pullback base points in T% elaborator |
# Changes
## `Mathlib/Geometry/Manifold/Notation.lean`
* **Add support for pullback bundles:** Replaced the hardcoded bound variable `x` with the dynamically extracted argument `arg`, which allows for using elaborator `T%` with pullback bundles, where the base point lies in a different manifold, e.g. `v : Π (m : M), E₁ (b m)`, where `b : M → B`.
* **Add support for Hom-bundles:** The elaborator now supports sections of Hom-bundles (`ContinuousLinearMap` between two fiber bundles, e.g. `ϕ : ∀ x, (E₁ x →L[𝕜] E₂ x`). It also supports the case where the base point lies in a different manifold (e.g. `ϕ : ∀ x, (E₁ (b x) →L[𝕜] E₂ (b x))`)
* **Support nested `TangentSpace`:** Modified `findModelFiber?` to natively intercept `TangentSpace` applications and extract the model fiber at index 2. This prevents typeclass synthesis failures when `TangentSpace` is used inside a Hom-bundle.
## `MathlibTest/DifferentialGeometry/Notation/Basic.lean`
* **Added tests for all the new usecases** this includes pullback bundles, Hom-bundles, pullback Hom-bundles, and Hom-bundles where one of the fibers is a `TangentSpace`.
## `Mathlib/Geometry/Manifold/VectorBundle/Hom.lean`
* **Refactor `Hom.lean`:** Replaced verbose `TotalSpace.mk'` boilerplate in with the newly supported `T%` syntax (e.g. `MDiffAt[s] T% ϕ x` instead of `MDiffAt[s] (fun m ↦ TotalSpace.mk' (F₁ →L[𝕜] F₂) (E := fun (x : B) ↦ (E₁ x →L[𝕜] E₂ x)) (b m) (ϕ m)) x)`
# Use of AI
The help of AI was used in writing the code in `Mathlib/Geometry/Manifold/Notation.lean`. It was hence manually edited to simplify the code as much as possible. While the author is not yet an expert in metaprogramming in Lean, he is willing to learn and receive feedback, and put all the effort to understand the presented code. The code was carefully tested with different parts of it changed and removed to make sure that every line serves a purpose to provide the expected functionality.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
new-contributor
LLM-generated
|
127/36 |
Mathlib/Geometry/Manifold/Notation.lean,Mathlib/Geometry/Manifold/VectorBundle/Hom.lean,MathlibTest/DifferentialGeometry/Notation/Basic.lean |
3 |
5 |
['github-actions', 'grunweg', 'mpacholski'] |
nobody |
45-49557 1 month ago |
80-85169 80 days ago |
80-85096 80 days |
3 |
| 44222 |
SamuelSchlesinger author:SamuelSchlesinger |
feat(Analysis/SpecialFunctions/Stirling): asymptotics of the central binomial coefficient |
Upstreaming `n.centralBinom ~ 4 ^ n / √(π * n)` and its `4 ^ n`-normalised corollaries,
needed for a Razborov–Smolensky `AC⁰[p]` lower bound in a circuit-complexity formalization,
together with the Catalan asymptotic `catalan n ~ 4 ^ n / (√π * n ^ (3 / 2))` as a first
application in Mathlib.
Drafted with Claude Code from my existing proof of the same statement, then revised by me
against Mathlib conventions.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis
LLM-generated
new-contributor
|
85/1 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/Combinatorics/Enumerative/Catalan/Asymptotics.lean |
3 |
4 |
['SamuelSchlesinger', 'github-actions'] |
nobody |
44-30231 1 month ago |
44-30560 44 days ago |
44-30487 44 days |
0 |
| 42720 |
justinhalford author:justinhalford |
feat(Order/KrullDimension): level sets of height are antichains |
Adds one lemma to `Mathlib/Order/KrullDimension.lean`, directly after `height_strictMono`:
```lean
lemma isAntichain_lt_height_preimage {n : ℕ∞} (hn : n ≠ ⊤) :
IsAntichain (· < ·) {x : α | height x = n}
```
Elements sharing a common *finite* height are pairwise incomparable — the level sets of `height` are antichains.
### Why
This is the combinatorial content of **Mirsky's theorem**, which partitions a finite-dimensional order into `krullDim + 1` antichains (and is the easy dual of Dilworth's theorem). Neither Mirsky nor Dilworth currently appears in Mathlib — both are on the tracked list in `docs/1000.yaml` without a `decl`, and searching for `Mirsky` and `Dilworth` returns nothing.
Rather than introduce the partition machinery up front, this contributes the underlying fact, which is what any route to Mirsky needs and is independently useful for reasoning about graded and finite-dimensional orders.
### Design
Stated with `(· < ·)` rather than `(· ≤ ·)` so that it lives in the existing `[Preorder α]` section and needs no antisymmetry; in a partial order the two coincide for distinct elements. The hypothesis is `n ≠ ⊤` rather than a finiteness typeclass, which keeps it usable without extra assumptions — `height_strictMono` needs exactly that much.
### Proof
Three lines on `height_strictMono`, immediately above it in the same file.
### Verification
Compiles against `master` with no errors or warnings. `#print axioms` reports only `[propext, Classical.choice, Quot.sound]`. No new imports or definitions — `+11 -0` in one file.
### Disclosure
Written with AI assistance (Claude Opus 5) and checked against the Lean kernel; I have read the statement and proof before submitting. Happy to rename, or to restate as `IsAntichain (· ≤ ·)` in a `PartialOrder` section if that is preferred.
|
t-order
new-contributor
|
11/0 |
Mathlib/Order/KrullDimension.lean |
1 |
5 |
['github-actions', 'theebayuser'] |
nobody |
42-30641 1 month ago |
88-14790 88 days ago |
88-14717 88 days |
0 |
| 44297 |
langston-barrett author:langston-barrett |
feat(Data/FinEnum): `Std.PRange.LawfulUpwardEnumerable` instance |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
I'm not sure how Mathlib feels about interfacing with std constructs, but I was looking for something along the lines of `succMany?` and found `Std.PRange.LawfulUpwardEnumerable`, so I figured I'd implement it and see what the appetite is. Even if we don't decide to use this particular typeclass, the underlying functionality still seems useful.
This is my first ever Lean development, so I would greatly appreciate any tips and feedback on the style!
I wrote all of this by hand, though I asked some questions about Lean to GPT 5.6 Luna along the way.
A `LinearlyUpwardEnumerable` instance would be a good follow-up. |
t-data
new-contributor
|
112/0 |
Mathlib/Data/FinEnum.lean |
1 |
3 |
['github-actions', 'langston-barrett'] |
nobody |
40-64786 1 month ago |
40-65310 40 days ago |
41-68072 41 days |
0 |
| 43852 |
ZRTMRH author:ZRTMRH |
feat(Combinatorics/Quiver/Schreier): add Schreier Cayley basics |
Defined Cayley graph as a coset Schreier graph. Proved connectivity and vertex-transitivity on Cayley graphs, as promised in #38310.
Follow-up to #38310, this is the 3rd split pr from #35467.
This PR was written with AI assistance (Claude). The code has been reviewed by the author.
P.S. cayley_subsingleton_weaklyConnectedComponent's proof is generic and I can extract it to Quiver/ConnectedComponent.lean as a weak-connectivity lemma, if it is wanted.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
large-import
LLM-generated
|
278/7 |
Mathlib/Combinatorics/Quiver/Schreier.lean |
1 |
10 |
['SnirBroshi', 'ZRTMRH', 'github-actions', 'mathlib-merge-conflicts', 'vlad902'] |
nobody |
40-498 1 month ago |
40-566 40 days ago |
54-45963 54 days |
0 |
| 44437 |
FawadHa1der author:FawadHa1der |
perf(Analysis/Normed/Lp/SmoothApprox): manifold-free proof of smooth approximation in Lp |
Authored with AI help. Created after @mcdoll feedback on [leanprover-community/mathlib4#42451](https://github.com/leanprover-community/mathlib4/pull/42451)
This is an alternate solution. This removes the manifold chain from the longest pole and even if the poisson summation is approved using denseRange_toLpCLM. We would still be saving roughly 5% in build time. There is only one new lemma but no change to existing lemmas/statements.
|
t-analysis
new-contributor
|
82/36 |
Mathlib/Analysis/Normed/Lp/SmoothApprox.lean |
1 |
3 |
['FawadHa1der', 'github-actions'] |
nobody |
37-76291 1 month ago |
37-76358 37 days ago |
37-76285 37 days |
0 |
| 43745 |
theebayuser author:theebayuser |
feat(Geometry/Euclidean): add Euler's quadrilateral theorem |
Adds Euler's quadrilateral theorem to Mathlib/Geometry/Euclidean/, and records it in docs/1000.yaml (Q18630480). It states: for any four points, the sum of the squares of the four sides of the quadrilateral a b c d equals the sum of the squares of the two diagonals, plus four times the square of the distance between the midpoints of the diagonals.
This PR was written with AI assistance (Claude Code).
|
t-euclidean-geometry
new-contributor
LLM-generated
maintainer-merge
|
84/0 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Geometry/Euclidean/EulerQuadrilateral.lean,docs/1000.yaml |
4 |
17 |
['github-actions', 'jsm28', 'theebayuser', 'wwylele'] |
nobody |
36-49559 1 month ago |
41-42750 41 days ago |
58-33225 58 days |
0 |
| 44440 |
vincentqb author:vincentqb |
feat(Computability/TuringMachine): bound the output length of a TM2 run |
This PR bounds the output length of a TM2 run by the input length plus a machine constant times the step count. It deduces `TM2ComputableInPolyTime.length_le`, the polynomial output-length bound used in composition.
It also adds step-count induction and defines `initList` and `haltList` using `Function.update`.
---
Relates to #7172 #33132 #35366
The code, the testing, and this description were prepared with the help of an AI coding assistant (Codex).
|
t-computability
LLM-generated
new-contributor
|
82/7 |
Mathlib/Computability/StateTransition.lean,Mathlib/Computability/TuringMachine/Computable.lean,Mathlib/Computability/TuringMachine/StackTuringMachine.lean |
3 |
3 |
['github-actions', 'vincentqb'] |
nobody |
34-35058 1 month ago |
37-18810 37 days ago |
37-57784 37 days |
1 |
| 44541 |
vincentqb author:vincentqb |
feat(Computability/Partrec): computability of list operations |
This PR adds `Computable.list_foldl`, `list_foldr`, `list_rec`, and `list_map`, with the same statements as their `Primrec` counterparts.
---
The code, the testing, and this description were prepared with the help of an AI coding assistant.
|
LLM-generated
new-contributor
t-computability
|
37/0 |
Mathlib/Computability/Partrec.lean |
1 |
3 |
['github-actions', 'vincentqb'] |
nobody |
34-33744 1 month ago |
34-33933 34 days ago |
34-33860 34 days |
0 |
| 44392 |
yhx-12243 author:yhx-12243 |
fix(Algebra/Polynomial/Roots): fix tendstoCofinite with normal generic universe |
Remove the extraneous accidentally {R : Type} [CommRing R] [IsDomain R] in the signature of `Polynomial.tendstoCofinite_of_natDegree_ne_zero`, make it generic. |
t-algebra
new-contributor
label:t-algebra$ |
2/2 |
Mathlib/Algebra/Polynomial/Roots.lean |
1 |
3 |
['github-actions', 'plp127'] |
nobody |
32-79264 1 month ago |
38-83937 38 days ago |
38-83864 38 days |
0 |
| 44618 |
barni120400 author:barni120400 |
feat(RingTheory/MvPolynomial/Homogeneous): powers of linear forms span the homogeneous polynomials |
Prove that the `n`-th powers of linear forms span the homogeneous polynomials of degree `n` (`MvPolynomial.homogeneousSubmodule_eq_span_pow`). Along the way, add the identity `Finset.sum_powerset_neg_one_pow_card_mul_sum_sdiff_pow_card` used in the proof.
---
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-data
new-contributor
LLM-generated
|
64/0 |
Mathlib/Data/Nat/Choose/Sum.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean |
2 |
2 |
['github-actions'] |
nobody |
32-58487 1 month ago |
32-59284 32 days ago |
32-59211 32 days |
0 |
| 44019 |
bally65 author:bally65 |
feat(Computability/Primrec): primality is primitive recursive |
Primrec.nat_prime : PrimrecPred Nat.Prime, via Nat.prime_def_lt' and the bounded quantifier PrimrecRel.forall_lt. Mathlib had no computability statement about Nat.Prime.
AI disclosure: I used Claude and ChatGPT to discuss ideas, to adjust and optimize the approach, and to explore whether there was something worth taking on. They also proposed many of the problems, lines of thought, and decisions about direction. Almost all of the Lean code was written by Claude Code. I applied the reviewer's suggested changes myself.
AI 使用聲明:我使用 Claude 和 ChatGPT 討論構思、調整與優化,也討論有沒有值得挑戰的方向。它們也提出了許多題目、思路和決策方向。Lean 程式碼幾乎全部由 Claude Code 撰寫。審稿人提供的修改建議由我自己套用。
Note: the English disclosure is a translation of my Chinese text, assisted by Claude. |
t-computability
new-contributor
LLM-generated
|
44/0 |
Mathlib.lean,Mathlib/Computability/Primrec/Prime.lean |
2 |
6 |
['bally65', 'github-actions', 'pepamontero'] |
nobody |
31-84172 1 month ago |
48-3900 48 days ago |
49-37878 49 days |
0 |
| 44261 |
javgomzar author:javgomzar |
feat(Algebra/Category/Grp): free functor preserves monomorphisms |
Refactored the proof for AddCommGrpCat, so that it also works in GrpCat.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
new-contributor
label:t-algebra$ |
18/5 |
Mathlib/Algebra/Category/Grp/Adjunctions.lean |
1 |
15 |
['JX-Mo', 'github-actions', 'javgomzar', 'mathlib-merge-conflicts'] |
nobody |
30-79048 30 days ago |
30-79142 30 days ago |
42-51044 42 days |
0 |
| 44681 |
Altabeh author:Altabeh |
feat(Analysis/ODE/Linearization): the derivative of a flow at a fixed… |
Add a new file `Mathlib/Analysis/ODE/Linearization.lean`. Let `ϕ : Flow ℝ E` on a real Banach space
be generated by a vector field `f`, meaning `∀ x t, HasDerivAt (fun s ↦ ϕ s x) (f (ϕ t x)) t`. If
`e` is a fixed point of `ϕ` and `f` has derivative `A` at `e`, then every time-`t` map has derivative
`exp (t • A)` at `e`:
* `Flow.hasFDerivAt_of_isFixedPt`: `HasFDerivAt (ϕ t) (exp (t • A)) e` for every `t : ℝ`.
* `Flow.fderiv_eq_exp_of_isFixedPt`: the `fderiv` form.
* `Flow.eventually_norm_sub_exp_le`: a uniform estimate on compact time intervals. For `0 ≤ T` and
`0 < ε`, eventually for `x` near `e`, `‖ϕ t x - e - exp (t • A) (x - e)‖ ≤ ε * ‖x - e‖` for all
`t ∈ [0, T]`.
Only differentiability of `f` at `e` is needed; nothing is assumed about `f` elsewhere. The estimate
comes from comparing `ϕ t x - e` with `exp (t • A) (x - e)` using Grönwall's inequality. Negative
times are handled by applying the result to `ϕ.reverse`.
---
This PR is independent of the `LipschitzWith.flow` PR. It applies to any `Flow ℝ E` with a
generating vector field, which includes those flows.
**Proof of `eventually_norm_sub_exp_le` is done by a combination of `Claude Opus 5.5` and `GPT-5.6 Sol`. Linting and comments were done by AI.*** |
new-contributor
t-analysis
LLM-generated
|
166/0 |
Mathlib.lean,Mathlib/Analysis/ODE/Linearization.lean |
2 |
3 |
['github-actions', 'grunweg'] |
nobody |
30-65950 30 days ago |
30-66025 30 days ago |
30-67960 30 days |
0 |
| 44680 |
Altabeh author:Altabeh |
feat(Analysis/ODE/LipschitzFlow): the flow of a globally Lipschitz ve… |
Add a new file `Mathlib/Analysis/ODE/LipschitzFlow.lean`. A globally Lipschitz vector field
`v : E → E` on a real Banach space has a unique solution of `γ' = v ∘ γ` through every point, defined
for all time, and these solutions form a continuous flow:
* `LipschitzWith.exists_forall_hasDerivAt`: global existence of solutions.
* `LipschitzWith.dist_le_of_forall_hasDerivAt`: two solutions satisfy
`dist (γ t) (δ t) ≤ dist (γ 0) (δ 0) * exp (K * |t|)`.
* `LipschitzWith.flow : Flow ℝ E`: the flow of `v`.
* `LipschitzWith.hasDerivAt_flow`: the orbits of the flow solve `γ' = v ∘ γ`.
* `LipschitzWith.flow_eq_of_hasDerivAt`: every global solution is an orbit of the flow.
* `LipschitzWith.dist_flow_le`: `dist (flow t x) (flow t y) ≤ dist x y * exp (K * |t|)`.
The field does not need to be bounded. For a bounded field, Picard–Lindelöf (`IsPicardLindelof`)
gives solutions on each interval `(-(n + 1), n + 1)`, and uniqueness glues them into a global
solution. A general field is reduced to this case by multiplying `v` by a Lipschitz cutoff that is
`1` on `closedBall 0 R`. Grönwall's inequality, using `‖v y‖ ≤ ‖v 0‖ + K * ‖y‖`, shows that for
large `R` the solution stays in that ball on the time interval, so the cutoff does not change it.
---
Continuity of the flow jointly in `(t, x)` comes from
`continuousOn_prod_of_continuousOn_lipschitzOnWith'`, using the exponential separation bound on
bounded time intervals.
**The proofs of`exists_forall_hasDerivAt_of_forall_Ioo`, `lipschitzWith_cutoff_smul`, `norm_le_gronwallBound` and part of `dist_le_of_forall_hasDerivAt` used a combo of `GPT-5.6 Sol` and `Claude Opus 5.5`. Linting and comments were done by AI as well.** |
t-analysis
new-contributor
LLM-generated
|
276/0 |
Mathlib.lean,Mathlib/Analysis/ODE/LipschitzFlow.lean |
2 |
3 |
['github-actions', 'grunweg'] |
nobody |
30-65829 30 days ago |
30-65935 30 days ago |
30-68167 30 days |
0 |
| 44679 |
Altabeh author:Altabeh |
feat(LinearAlgebra/FiniteDimensional/Lemmas): dimension counts in exa… |
Add dimension formulas for exact sequences of vector spaces over a division ring `K`:
* `Function.Exact.finrank_range_add_finrank_range`: if `A → B → C` is exact (maps `f`, `g`) and `B`
is finite-dimensional, then `finrank (range f) + finrank (range g) = finrank B`.
* `Function.Exact.linearEquivQuotientRangeProdKer`: if `A → B → C → D → E` is exact (maps
`f, g, h, j`), then `C ≃ₗ[K] (B ⧸ range f) × ker j`.
* `Function.Exact.finrank_eq_finrank_quotient_range_add_finrank_ker`: hence, when `B` and `D` are
finite-dimensional, `finrank C = finrank (B ⧸ range f) + finrank (ker j)`.
---
The splitting is noncomputable, meaning it picks a complement of `ker h` in `C`. These statements are the counting steps used, for example, when comparing Betti numbers along long exact sequences.
**These are basic results that have been written by myself. The only use of AI was to write the comments and test.** |
t-algebra
new-contributor
label:t-algebra$ |
34/0 |
Mathlib/LinearAlgebra/FiniteDimensional/Lemmas.lean |
1 |
5 |
['Altabeh', 'github-actions', 'grunweg'] |
nobody |
30-30782 30 days ago |
30-64585 30 days ago |
30-66452 30 days |
0 |
| 44740 |
user202729 author:user202729 |
chore(Algebra/Ring/CompTypeclasses): fix a typo and reformat slightly |
Change `σ₂₃` to `σ` in the header, this one is clearly a typo.
Do some minor reformatting for the rest of the file, which I think make it nicer.
---
|
t-algebra
new-contributor
label:t-algebra$ |
7/11 |
Mathlib/Algebra/Ring/CompTypeclasses.lean |
1 |
3 |
['github-actions', 'user202729', 'vihdzp'] |
nobody |
29-34738 29 days ago |
29-34846 29 days ago |
29-34773 29 days |
0 |
| 44762 |
Julian-Kuelshammer author:Julian-Kuelshammer |
feat(Combinatorics/Enumerative/Catalan/BracketingFunction): adds Huang-Tamari's bracketing functions |
This PR defines bracketing functions, an elementary description of the Tamari lattice. This PR is intentially kept short and just adds the definition and a bit of basic API. There are potential follow-ups proving that these are counted by the Catalan numbers and giving the lattice instance, for a preview see https://github.com/Julian-Kuelshammer/ExtensionClosedSubcategoriesOfAn/blob/main/ExtensionClosedSubcategoriesOfAn/BracketingFunctions.lean
A first version of the file was created with the help of Aristotle and Claude.
---
|
new-contributor
t-combinatorics
LLM-generated
|
102/0 |
Mathlib.lean,Mathlib/Combinatorics/Enumerative/Catalan/BracketingFunction.lean |
2 |
4 |
['Julian-Kuelshammer', 'github-actions'] |
nobody |
29-5223 29 days ago |
29-5279 29 days ago |
29-5206 29 days |
0 |
| 44783 |
ZRTMRH author:ZRTMRH |
feat(Analysis/MeanInequalities): n-ary ℓ^p monotonicity and Lyapunov's inequality |
Add finite-sum versions of the two-term power inequalities in `Analysis/MeanInequalitiesPow.lean`, in `ℝ≥0`, `ℝ` and `ℝ≥0∞`:
* `sum_rpow_le_rpow_sum`: `∑ i ∈ s, f i ^ p ≤ (∑ i ∈ s, f i) ^ p` for `1 ≤ p`
* `rpow_sum_rpow_le`: the `ℓ^p` (quasi)norm `(∑ i ∈ s, f i ^ p) ^ (1 / p)` is antitone in `p > 0`
* `rpow_sum_le_sum_rpow`: `(∑ i ∈ s, f i) ^ p ≤ ∑ i ∈ s, f i ^ p` for `0 < p ≤ 1`
Also add Lyapunov's inequality in `Analysis/MeanInequalities.lean`, `NNReal.lyapunov_inequality` and `Real.lyapunov_inequality_of_nonneg`: the weighted moments `t ↦ ∑ i ∈ s, w i * f i ^ t` are log-convex on `[0, ∞)`.
The code was refined with AI assistance (Claude). The code has been reviewed by the author.
Discussion on zulip: [ℓp norm monotonicity for finite sums](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/.E2.84.93p.20norm.20monotonicity.20for.20finite.20sums)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis
LLM-generated
new-contributor
|
122/0 |
Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/MeanInequalitiesPow.lean |
2 |
3 |
['ZRTMRH', 'github-actions'] |
nobody |
28-55585 28 days ago |
28-55635 28 days ago |
28-56888 28 days |
0 |
| 44214 |
ZRTMRH author:ZRTMRH |
feat(Analysis/SpecialFunctions): taylor series bounds for sin and cos |
Adds `Mathlib/Analysis/SpecialFunctions/Trigonometric/SeriesBounds.lean` with three groups of results:
1. Remainder bounds on the unit disc at every order: `Complex.sin_series_bound`, `Complex.cos_series_bound` and their real forms. Ported from #29355, taken over with the author's agreement. This PR supersedes #29355, which can be closed when this lands.
2. `Real.sum_lt_sin_of_pos`, `Real.sin_lt_sum_of_pos`, `Real.sum_lt_cos_of_pos`, and `Real.cos_lt_sum_of_pos`: `sin x` and `cos x` lie between consecutive partial sums of their Taylor series. Yury posted on Zulip in October 2025 with a request that someone open a PR for it ([Upper and Lower Bounds of Cosine](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Upper.20and.20Lower.20Bounds.20of.20Cosine/near/546287708)), it had not been opened.
4. Six low-order corollaries, as completion to `one_sub_sq_div_two_lt_cos` and `sin_gt_sub_cube` which Mathlib already has: `cos_lt/le_one_sub_sq_div_two_add_pow_four`, `sin_lt/le_sub_cube_add_pow_five`, and `sub_cube_add_pow_five_lt/le_sin` for negative arguments.
The 6 low-order corollaries and the docstrings were written with AI assistance (Claude). The code has been reviewed by the author.
Co-authored-by: Geoffrey Irving <irving@naml.us>
Co-authored-by: Yury G. Kudryashov <urkud@urkud.name>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
LLM-generated
new-contributor
t-analysis
|
302/0 |
Mathlib.lean,Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/SeriesBounds.lean |
3 |
53 |
['SnirBroshi', 'ZRTMRH', 'github-actions', 'wwylele'] |
nobody |
28-43445 28 days ago |
28-43568 28 days ago |
38-50182 38 days |
0 |
| 44684 |
josephqian507 author:josephqian507 |
feat(LinearAlgebra/Matrix): add row equivalence and echelon form lemmas |
feat(LinearAlgebra/Matrix): add row equivalence and echelon form lemmas
This adds lemmas to bridge the current mathlib definition of row equivalence with the idea of two matrices that have the same null space. It also adds a proof that the reduced row echelon form of a matrix is unique. LLMs were used to fill in sorrys for some proofs (specifically, rowEquivalent_of_mul_eq_zero, rowEquivalent_iff_ker_eq, and much of RrefUniqueness.lean)
Co-authored-by: Junye Ji <junyej@uw.edu>
Co-authored-by: Dhruv Bhatia <dbhatia1@uw.edu>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
new-contributor
large-import
LLM-generated
label:t-algebra$ |
501/1 |
Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Echelon/Basic.lean,Mathlib/LinearAlgebra/Matrix/Echelon/RrefUniqueness.lean,Mathlib/LinearAlgebra/Matrix/ElementaryRowOperations.lean |
4 |
3 |
['github-actions', 'josephqian507'] |
nobody |
28-29044 28 days ago |
28-29168 28 days ago |
29-27097 29 days |
0 |
| 44784 |
shunfeng8421 author:shunfeng8421 |
feat(Combinatorics): prove finitary Van der Waerden by compactness |
Proves the finitary version of Van der Waerden's theorem:
```lean
theorem van_der_waerden (k : ℕ) {κ : Type*} [Finite κ] [Nonempty κ] :
∃ N : ℕ, ∀ C : Fin (N + 1) → κ, HasMonoAPWithin k N C
```
i.e. every finite coloring of a sufficiently large initial segment `[0, N]`
contains a monochromatic arithmetic progression of length `k`.
This resolves the TODO in `Mathlib/Combinatorics/HalesJewett.lean` asking for a
finitary version of Van der Waerden's theorem.
## Proof sketch
The proof goes by compactness (Rado's selection lemma), the route explicitly
suggested in the TODO ("either by compactness or by modifying the current
proof"):
1. Assume the theorem fails: every segment `[0, N]` admits a "bad" coloring with
no monochromatic AP of length `k`.
2. For each finite set `s ⊆ ℕ`, pick the bad coloring of the covering interval
`[0, s.sup id]` and extend it (arbitrarily) to all of `ℕ`.
3. **Rado's selection lemma** (`Finset.rado_selection`, from
`Mathlib/Combinatorics/Compactness.lean`, itself proved via Tychonoff's
theorem) stitches these local bad colorings into a global coloring
`χ : ℕ → κ` that agrees with some local bad coloring on every finite set.
4. The **infinite** Van der Waerden theorem — `Combinatorics.exists_mono_homothetic_copy`,
a corollary of Hales–Jewett — produces a monochromatic AP `(a * t + b)_{t < k}`
in `χ`.
5. Viewed as a finite set, this AP lies inside the covering interval of some
finite set `t` on which the bad coloring agrees with `χ`, so it is also
monochromatic there — contradicting badness of that local coloring.
No explicit bounds are produced; this is purely an existence proof, which is
exactly what the compactness route buys.
## New definitions
- `Combinatorics.HasMonoAPWithin k N C`: the coloring `C : Fin (N+1) → κ` of the
initial segment `[0, N]` contains a monochromatic AP of length `k`.
## Changes
- `Mathlib/Combinatorics/HalesJewett.lean`: removed the completed TODO item
("Prove a finitary version of Van der Waerden's theorem ... by compactness"),
added a pointer to the new theorem in the "Main results" list.
- `Mathlib/Combinatorics/VanDerWaerden.lean`: new file.
## Notes for the reviewer
- The file header still contains the `[Author]` placeholder: fill in your name
before committing.
-------
**AI disclosure**: AI-assisted tools were used to draft the proof outline and Lean code, and to debug type/simplifier issues; all contributions were reviewed and verified by the author, who takes full responsibility for the correctness of the mathematics and code.
|
t-combinatorics
new-contributor
LLM-generated
|
100/3 |
Mathlib.lean,Mathlib/Combinatorics/HalesJewett.lean,Mathlib/Combinatorics/VanDerWaerden.lean |
3 |
5 |
['github-actions', 'grunweg', 'shunfeng8421'] |
nobody |
27-59947 27 days ago |
27-59947 27 days ago |
27-67537 27 days |
0 |
| 44831 |
scottdhughes author:scottdhughes |
feat(Analysis/MeanInequalitiesPow): add a real power difference bound |
Add `Real.abs_rpow_sub_rpow_le` in `Mathlib/Analysis/MeanInequalitiesPow.lean`: for nonnegative real bases and `0 ≤ p ≤ 1`,
```lean
|a ^ p - b ^ p| ≤ |a - b| ^ p
```
Provide a direct scalar API for downstream fractional-power regularity estimates. Derive the bound from the neighboring `Real.rpow_add_le_add_rpow`, then handle the two input orders. Include both exponent endpoints. Add one lemma and its docstring, with no new imports.
---
Local validation on Lean/Mathlib 4.35.0:
- `lake build Mathlib.Analysis.MeanInequalitiesPow`
- `lake exe lint-style Mathlib.Analysis.MeanInequalitiesPow`
- Fresh source elaboration, exported-type and axiom checks, plus all 15 default declaration linters for the new lemma.
The axiom check reports only `propext`, `Classical.choice` and `Quot.sound`.
AI assistance: Codex adapted an existing downstream proof, searched Mathlib and relevant open PRs, drafted this description, and ran the local checks.
|
t-analysis
new-contributor
LLM-generated
|
19/0 |
Mathlib/Analysis/MeanInequalitiesPow.lean |
1 |
3 |
['copilot-pull-request-reviewer', 'github-actions', 'scottdhughes'] |
nobody |
25-75075 25 days ago |
26-78239 26 days ago |
26-78166 26 days |
0 |
| 44537 |
vincentqb author:vincentqb |
feat(Analysis/Convex/Cone): prove that open sets have open hulls |
This PR proves `ConvexCone.isOpen_hull`: if addition and multiplication by each fixed scalar are continuous, the convex cone hull of an open set is open. It defines `ConvexCone.interior`, with coercion, membership, and equality lemmas parallel to the closure API. The hull theorem then follows from cone minimality.
The original hypotheses do not suffice, see #44689 for a counterexample.
---
AI-assisted contribution.
|
t-analysis
LLM-generated
new-contributor
file-removed
|
57/24 |
Mathlib.lean,Mathlib/Analysis/Convex/Cone/Basic.lean,Mathlib/Analysis/Convex/Cone/Interior.lean,Wanted.lean,Wanted/Analysis/Convex/Cone/Basic.lean |
5 |
15 |
['github-actions', 'pepamontero', 'vincentqb'] |
nobody |
25-56110 25 days ago |
25-56213 25 days ago |
33-55374 33 days |
0 |
| 44935 |
CollinYuanjieRen author:CollinYuanjieRen |
feat(ENNReal): commute toReal with liminf and limsup for eventually finite functions |
Add eventually-finite variants of `ENNReal.liminf_toReal_eq` and `ENNReal.limsup_toReal_eq`, allowing functions with no eventual uniform finite upper bound. The existing bounded variants are unchanged.
Co-authored-by: Kalle Kytölä <kalle.kytola@aalto.fi>
---
Continues the `toReal` portion of #15115, which its author marked `help-wanted`; this does not cover all of that PR.
Validated the complete modified file with Lean 4.35.0. Codex assisted with the proofs.
|
t-topology
LLM-generated
new-contributor
|
49/1 |
Mathlib/Topology/Instances/ENNReal/Lemmas.lean |
1 |
3 |
['CollinYuanjieRen', 'github-actions'] |
nobody |
24-10593 24 days ago |
24-9308 24 days ago |
24-9235 24 days |
0 |
| 44941 |
CollinYuanjieRen author:CollinYuanjieRen |
feat(Data/Finset/Sort): add filtering and greatest insertion lemmas |
Prove that filtering commutes with `Finset.sort`, and that inserting a new greatest element appends it to the sorted list. Both lemmas work for general total, transitive, antisymmetric relations.
Continues the sorting portion of #9605 by @davikrehalt.
Codex (GPT-6 Astra) assisted with the Lean proofs.
|
t-data
LLM-generated
new-contributor
|
13/0 |
Mathlib/Data/Finset/Sort.lean |
1 |
3 |
['CollinYuanjieRen', 'github-actions'] |
nobody |
24-5894 24 days ago |
24-5956 24 days ago |
24-5883 24 days |
0 |
| 44893 |
unknown8575 author:unknown8575 |
chore(Topology/MetricSpace/Polish): generalize `IsClopenable.iUnion` to countable index types |
The proof only used ℕ to get `t' ≤ t` through index 0, but `exists_polishSpace_forall_le` already gives this directly. So the lemma now works for any countable index type, and the TODO is removed.
I used an LLM to find this TODO and draft the change. I've checked it, built it locally, and understand every line. |
t-topology
new-contributor
|
18/15 |
Mathlib/Topology/MetricSpace/Polish.lean |
1 |
5 |
['github-actions', 'plp127', 'unknown8575', 'vihdzp'] |
nobody |
23-81132 23 days ago |
23-81197 23 days ago |
25-10844 25 days |
0 |
| 44945 |
CollinYuanjieRen author:CollinYuanjieRen |
chore(Algebra/Lie): generalize subalgebra map membership |
Generalize `LieSubalgebra.mem_map_submodule` to arbitrary Lie algebra morphisms. Add `mem_map_equiv` and update the three skew-adjoint equivalence proofs.
Continues Eric Rodriguez Boidi's #7994, marked `please-adopt`.
---
Checked the five affected modules with Lean 4.36.0-rc1 and a zero-morphism client regression.
AI-assisted: Codex prepared the Lean changes; GPT-6 Astra assisted with proof checks.
|
t-algebra
LLM-generated
new-contributor
label:t-algebra$ |
9/6 |
Mathlib/Algebra/Lie/SkewAdjoint.lean,Mathlib/Algebra/Lie/Subalgebra.lean |
2 |
3 |
['CollinYuanjieRen', 'github-actions'] |
nobody |
23-63062 23 days ago |
23-63300 23 days ago |
23-63227 23 days |
0 |
| 29713 |
jessealama author:jessealama |
feat(Algebra/Homology): add Euler–Poincaré formula |
This PR builds on the generalized Euler characteristic framework from #31121 to prove the Euler-Poincaré formula for chain complexes.
PR #31121 defines the Euler characteristic for general homological complexes. This PR specializes those definitions to ℤ-indexed chain complexes and proves the main Euler-Poincaré theorem.
### Main result (in `EulerPoincare.lean`)
* `ChainComplex.eulerChar_eq_homologyEulerChar`: For ℤ-indexed bounded chain complexes of finite-dimensional modules over a division ring, the alternating sum of chain dimensions equals the alternating sum of homology dimensions.
### Supporting lemmas
The file also provides dimension lemmas generalized to arbitrary `HomologicalComplex (ModuleCat k) c` (not just ℤ-indexed chain complexes):
* `HomologicalComplex.dFrom_zero_range` / `dTo_zero_range`: zero range when the target/source object is zero
* `HomologicalComplex.dFrom_range_finrank_eq_d` / `dTo_range_finrank_eq_d`: range of `dFrom`/`dTo` has the same dimension as the underlying differential
* `HomologicalComplex.range_dTo_le_ker_dFrom`: range of `dTo` is contained in the kernel of `dFrom`
|
t-algebra
new-contributor
label:t-algebra$ |
264/0 |
Mathlib.lean,Mathlib/Algebra/Homology/EulerPoincare.lean |
2 |
26 |
['github-actions', 'jessealama', 'joelriou', 'kim-em', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
nobody |
22-62357 22 days ago |
22-62566 22 days ago |
58-1395 58 days |
0 |
| 44982 |
sw1sh author:sw1sh |
feat(Data/List): define Lyndon words |
This PR adds `Mathlib/Data/List/Lyndon.lean` with the definition of Lyndon words and their two basic properties.
* `List.IsLyndon w`: the list `w` is nonempty and strictly smaller, in the lexicographic order, than each of its proper nonempty suffixes.
* `List.IsLyndon.not_hasPeriod`: a Lyndon word has no period `p` with `0 < p < w.length`; that is, it is unbordered. It is stated with `List.HasPeriod` from `Mathlib/Data/List/PeriodicityLemma.lean`.
* `List.IsLyndon.append`: if `u` and `v` are Lyndon words and `u < v`, then `u ++ v` is a Lyndon word.
Two general lemmas on the lexicographic order of lists are added along the way:
* `List.Lex.append_of_not_isPrefix`: if `Lex r u s` holds and `u` is not a prefix of `s`, then `Lex r (u ++ v) (s ++ w)` holds.
* `List.lt_append_of_ne_nil`: a list is smaller than each of its proper extensions.
A planned follow-up uses these to prove the Ehrenfeucht–Silberger theorem for infinite words: over a finite ordered alphabet, an infinite word whose sufficiently long factors are all bordered is eventually periodic. The proof cuts off longest Lyndon prefixes, which gives a non-increasing sequence of short Lyndon words.
---
AI disclosure: this code was written with Claude Code (Anthropic, model Opus 5.5) as part of a project that formalizes equivalent forms of Wolfram's Rule 30 Problem 1 (https://github.com/WolframInstitute/Rule30PrizeKit).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-data
new-contributor
LLM-generated
|
120/0 |
Mathlib.lean,Mathlib/Data/List/Lyndon.lean |
2 |
3 |
['github-actions'] |
nobody |
22-17426 22 days ago |
22-17519 22 days ago |
22-66835 22 days |
0 |
| 36937 |
Yaohua-Leo author:Yaohua-Leo |
feat(Algebra/Jordan): add first linearization lemmas for IsCommJordan |
[](https://gitpod.io/from-referrer/)
AI assistance disclosure: I used AI assistance for CI/debugging and module-structure fixes in this PR. The mathematical content and main lemmas were written by me, with help from @pelicanhere.
This PR adds a new file `Mathlib/Algebra/Jordan/Linearization.lean` containing linearization lemmas for the commutative Jordan identity.
Main declarations:
* `IsCommJordan.four_nsmul_associator_mul_add`
* `IsCommJordan.associator_mul_add`
These lemmas formalize a first linearization of the commutative Jordan identity using `associator`, following McCrimmon, Proposition 1.8.5.
---
I put these lemmas in a separate file because I expect follow-up linearization lemmas to belong naturally in the same place.
I am also happy to rename declarations or move the file if reviewers would prefer. |
t-algebra
new-contributor
label:t-algebra$ |
152/90 |
Mathlib.lean,Mathlib/Algebra/Jordan/Basic.lean,Mathlib/Algebra/Jordan/Linearization.lean |
3 |
8 |
['Yaohua-Leo', 'github-actions', 'grunweg', 'ocfnash'] |
nobody |
21-49558 21 days ago |
42-31995 42 days ago |
55-59627 55 days |
0 |
| 45014 |
GoldenPhysicsProject author:GoldenPhysicsProject |
feat(Analysis/SpecialFunctions/Trigonometric): infinite product formula for sinh |
Transfers the absolutely convergent Euler product for sine (`euler_sineTerm_tprod`) to the hyperbolic sine, in `Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean` next to the sine statement:
* `multipliable_one_add_sq_div`: `Multipliable fun n : ℕ ↦ 1 + x ^ 2 / (n + 1) ^ 2` for every `x : ℂ`.
* `euler_sinh_tprod`: for `x * I ∈ ℂ_ℤ`, `∏' n : ℕ, (1 + x ^ 2 / (n + 1) ^ 2) = Complex.sinh (π * x) / (π * x)`.
This follows a review comment by @wwylele on the first version of this PR, which was a separate file with the conditionally convergent `Tendsto` form. I searched master and the open PRs for an existing hyperbolic-sine product and found none.
AI-assistance disclosure: this PR was written and submitted by Claude Code (Anthropic) at the request of the account owner. The account owner has not reviewed the code line by line. The file builds against current master, `lake exe lint-style` is clean, and `#print axioms` shows only `propext`, `Classical.choice` and `Quot.sound`. Please review it as AI-generated. |
t-analysis
new-contributor
LLM-generated
|
19/0 |
Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean |
1 |
7 |
['GoldenPhysicsProject', 'github-actions', 'wwylele'] |
nobody |
20-65116 20 days ago |
20-65310 20 days ago |
20-78284 20 days |
0 |
| 42815 |
korbonits author:korbonits |
feat(Analysis/Calculus/VectorField): the Lie bracket acts as a derivation on functions |
Add `VectorField.lieBracket_apply_fun`: for a function `f` with derivative `f'` and vector fields `V`, `W`,
D(f' W) V - D(f' V) W = f' [V, W]
i.e. the familiar `[V, W] f = V (W f) - W (V f)`. The two second-derivative terms cancel by symmetry of the second derivative, leaving exactly the bracket.
Placed beside the existing `lieBracket_smul_*` product rules. Needs no new import: `FDeriv.Symmetric` is already imported for `second_derivative_symmetric`, which supplies the symmetry and is the source of the `IsRCLikeNormedField` hypothesis.
---
AI disclosure
- level: Level 5 / Level 6 in [the link shared](https://www.visidata.org/blog/2026/ai/#self-assessed-ai-level-for-contributions) I feel confident about the math but I am still learning Lean itself
- code: most of the Lean in this PR was drafted by Claude Code (statements, proofs, docstrings).
- direction and review: I chose the contribution, made the decisions, reviewed every line, and wrote all GitHub/Zulip comments. |
t-analysis
new-contributor
LLM-generated
t-differential-geometry
|
17/0 |
Mathlib/Analysis/Calculus/VectorField.lean |
1 |
12 |
['github-actions', 'korbonits', 'themathqueen'] |
nobody |
20-36031 20 days ago |
20-36255 20 days ago |
85-23160 85 days |
0 |
| 45076 |
vdelbarc author:vdelbarc |
feat(Algebra/Lie/SemiDirect): add natural ideal and subalgebra; add equivalences |
Define the left ideal and right subalgebra of a semidirect product of Lie
algebras. Give characterizations through natural inclusion/projection maps.
Co-authored by: Gustavo Infanti, Exequiel Rivas and Paul Schwahn
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
new-contributor
t-algebra
label:t-algebra$ |
88/0 |
Mathlib/Algebra/Lie/SemiDirect.lean |
1 |
2 |
['github-actions'] |
nobody |
20-16557 20 days ago |
20-16574 20 days ago |
20-16779 20 days |
0 |
| 44958 |
dkaysin author:dkaysin |
feat(Combinatorics/SimpleGraph/Cayley): reachability and connectedness of Cayley graphs |
This PR adds reachability and connectedness results for Cayley Simple graphs.
---
Implements connectedness results requested [here](https://github.com/leanprover-community/mathlib4/pull/44853#discussion_r4296323074).
Implementation details:
* One-directional reachability results can also be proven for semigroups and monoids. I chose to implement one such result for monoids: `reachable_mulCayley_mul_of_mem_submonoidClosure`.
* Machinery with values of darts can be useful for further proofs when working with Cayley graphs in geometric group theory. Edit: made private for now as per reviewer's comment.
Use of AI: I used Claude Opus 5.5 for the following tasks:
* To brainstorm and compare API design ideas and naming conventions
* To propose simplifications to proofs
* To check docstrings for consistency
All AI-generated content was reviewed and edited by me.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
new-contributor
t-combinatorics
large-import
|
106/1 |
Mathlib/Combinatorics/SimpleGraph/Cayley.lean |
1 |
11 |
['SnirBroshi', 'dkaysin', 'github-actions'] |
nobody |
19-80608 19 days ago |
19-80838 19 days ago |
19-83748 19 days |
0 |
| 34138 |
pfaffelh author:pfaffelh |
feat(MeasureTheory): Introduce `DiscreteMeasure α` giving rise to a `Measure α` as a sum of `dirac`s |
Define `DiscreteMeasure α` as a structure with `weight : α → ℝ≥0∞`
Define `toMeasure (w : DiscreteMeasure α) : Measure α` as a sum of diracs
Show properties of the resulting objects
This PR intends to start a more userfriendly interaction with discrete probability (measure) theory, in contrast to probability mass functions (`PMF`). There are two main differences between `DiscreteMeasure` and `PMF`:
* Every `PMF` hast the additional property `HasSum 1`, making the resulting measure a probability measure. (For `DiscreteMeasure`, I intend to use the typeclass `IsProbabilityMeasure`in a later PR instead.)
* The `toMeasure` function of `MassFunction` defines the measure as a sum of diracs, which immediately makes computations possible.
Discussion thread on [zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/PMF.20Refactor.3A.20FunLike.20vs.20Definition.20Change)
- depends on: #37060
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
new-contributor
|
215/0 |
Mathlib.lean,Mathlib/Algebra/GroupWithZero/Indicator.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/MeasureTheory/Measure/DiscreteMeasure.lean |
4 |
27 |
['DavidLedvinka', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'metakunt', 'ocfnash', 'pfaffelh'] |
RemyDegenne assignee:RemyDegenne |
19-50462 19 days ago |
20-7031 20 days ago |
102-2220 102 days |
0 |
| 45112 |
ZRTMRH author:ZRTMRH |
feat(MeasureTheory/Integral): sharp error bound for Riemann sums of periodic BV functions |
Add a strict error bound for estimating `1`-periodic function using Riemann sum. This is the equally-spaced case of Koksma's inequality, with the sharp constant. The proof is elementary.
* `Function.Periodic.abs_sum_sub_integral_le_eVariationOn`
The bound is added as a new file `Mathlib/MeasureTheory/Integral/IntervalIntegral/PeriodicRiemannSum.lean`. Two supporting lemmas on the variation of a periodic function go into `Mathlib/Analysis/BoundedVariation.lean`.
* `Function.Periodic.eVariationOn_Icc_add_int`
* `Function.Periodic.eVariationOn_Icc_add_one`
Discussion on Zulip: [Riemann sums of periodic bounded-variation functions](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Riemann.20sums.20of.20periodic.20bounded-variation.20functions/with/624474372)
This PR was written with AI assistance (Claude for first draft, Codex for refinement). The code has been reviewed by the authors.
Co-authored-by: Xichen Tang xichen.tang@duke.edu
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-measure-probability
LLM-generated
new-contributor
|
194/0 |
Mathlib.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/PeriodicRiemannSum.lean |
3 |
3 |
['ZRTMRH', 'github-actions'] |
nobody |
19-41030 19 days ago |
19-41283 19 days ago |
19-41210 19 days |
0 |
| 44864 |
user202729 author:user202729 |
feat(Order/Bounds): notation for sSup and sInf |
Also fix a typo (add a full stop) and change some call sites to use the new notation.
---
As discussed on Zulip: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Adding.20notation.20for.20sSup.2FsInf.3F |
t-topology
new-contributor
|
14/3 |
Mathlib/Order/Bounds/Defs.lean,Mathlib/Order/SetNotation.lean,Mathlib/Topology/Sets/Closeds.lean,Mathlib/Topology/Sets/Opens.lean |
4 |
5 |
['Multramate', 'github-actions', 'user202729'] |
nobody |
19-18677 19 days ago |
24-75766 24 days ago |
24-75693 24 days |
0 |
| 45111 |
will1491 author:will1491 |
feat(Topology/ContinuousMap): define normal families |
Define `IsNormalFamily` for families of continuous maps into `OnePoint Y` as compactness of their closure in the compact-open topology.
The one-point compactification is chosen for applications in complex dynamics. See the [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Geometry.20and.20complex.20dynamics.20formalization/with/615696635) for the definition and design discussion.
Co-authored-by: Lasse Rempe <lasse.rempe@manchester.ac.uk>
Co-authored-by: Filip Moruś <filip.morus@postgrad.manchester.ac.uk>
--- |
t-topology
new-contributor
|
30/0 |
Mathlib.lean,Mathlib/Topology/ContinuousMap/NormalFamily.lean |
2 |
3 |
['JX-Mo', 'github-actions'] |
nobody |
19-10107 19 days ago |
19-44330 19 days ago |
19-44257 19 days |
0 |
| 45135 |
rmcrkd author:rmcrkd |
feat(Analysis/Calculus/Deriv/Inverse): add HasDerivWithinAt.of_local_left_inverse |
Add lemma `HasDerivWithinAt.of_local_left_inverse`, following the existing pattern via `HasDerivWithinAt.hasFDerivWithinAt_equiv`.
Assisted by Claude (found the gap, helped with learning and examples, linting and building).
---
[#mathlib4 > HasDerivWithinAt.of_local_left_inverse](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/HasDerivWithinAt.2Eof_local_left_inverse/with/633245785) |
t-analysis
new-contributor
|
18/0 |
Mathlib/Analysis/Calculus/Deriv/Inverse.lean |
1 |
9 |
['github-actions', 'grunweg', 'rmcrkd'] |
nobody |
18-64438 18 days ago |
18-64438 18 days ago |
18-64483 18 days |
0 |
| 41728 |
vaca22 author:vaca22 |
feat(GroupTheory): prove uniqueness of ℤᵐ⁰ automorphisms |
Prove that every order-preserving multiplicative automorphism of ℤᵐ⁰ is the identity. This also gives a Unique instance for its automorphism type and a Subsingleton instance for order-preserving multiplicative normalizations from G to ℤᵐ⁰.
The proof transports an automorphism through WithZero.exp and WithZero.log to an additive automorphism of ℤ, then excludes negation by monotonicity.
------------
**AI disclosure**: this PR is primarily LLM-generated (Claude Code).
|
t-group-theory
new-contributor
LLM-generated
|
58/0 |
Mathlib/GroupTheory/ArchimedeanDensely.lean |
1 |
16 |
['github-actions', 'grunweg', 'tb65536', 'vaca22', 'wwylele'] |
mattrobball assignee:mattrobball |
18-50449 18 days ago |
50-31340 50 days ago |
79-40228 79 days |
0 |
| 45176 |
marcelolynch author:marcelolynch |
ci: shake Archive and Counterexamples in the weekly shake job |
This PR adds `Archive` and `Counterexamples` to the weekly `lake shake` job. The job fetches their oleans with `lake exe cache get Archive.lean Counterexamples.lean` and builds them before it runs `lake shake`.
Five files get `shake: keep` annotations. `lake shake` does not see the uses inside `example` declarations or the `deriving Fintype` handler. Without the annotations, its edits break these files. With the annotations, the 76 shake edits to `Archive` and `Counterexamples` build.
A fork PR runs the workflow file from `master`, so this PR cannot test the workflow change in CI.
🤖
|
new-contributor |
10/10 |
.github/workflows/shake.yaml,Archive/Examples/Eisenstein.lean,Archive/Imo/Imo1988Q6.lean,Archive/Wiedijk100Theorems/Konigsberg.lean,Counterexamples/OrderedCancelAddCommMonoidWithBounds.lean,Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean |
6 |
2 |
['github-actions'] |
nobody |
17-82474 17 days ago |
17-82474 17 days ago |
17-82401 17 days |
0 |
| 45210 |
dongxuelian2 author:dongxuelian2 |
feat(LinearAlgebra/Matrix/Charpoly): finite determination of matrix power sequences |
Add finite-determination criteria for matrix sequences `C * A ^ k * B`, allowing the two square matrices to have different index types.
`Matrix.mul_pow_mul_eq_of_aeval_eq_zero` uses a common monic annihilating polynomial: agreement below its degree implies agreement at every natural exponent. `Matrix.mul_pow_mul_eq_of_lt_card_add` applies this to the product of the characteristic polynomials, giving the bound `Fintype.card ι + Fintype.card κ`.
The statements work over commutative rings and allow empty state index types. The proof reduces `X ^ k` modulo the common polynomial and uses `Polynomial.sum_modByMonic_coeff`, which handles degree zero without a separate dimension case split. This adds two theorems to the existing matrix-power reduction API without introducing imports or definitions.
The proof is adapted from [LeanForControl's finite-determination result](https://github.com/dongxuelian2/LeanForControl/blob/kalman-structural-completion/LeanForControl/LinearSystems/Realization/FiniteDetermination.lean).
---
### Validation
Checked locally with Lean v4.36.0-rc1 against mathlib master `3d14fd9a313ac35ed4b5c653ed5d99157c9e29f6`:
- `lake build Mathlib.LinearAlgebra.Matrix.Charpoly.Coeff`
- `lake exe batteries/runLinter --no-build Mathlib.LinearAlgebra.Matrix.Charpoly.Coeff`
- Direct invocation of the upstream text linters and module-name checks.
- Separate local examples for the requested field/`Fin` statement, either or both dimensions zero, degree-zero and degree-one common annihilators, and matching nonzero sequences in dimensions 1 and 2.
- `#print axioms` for both theorems reports only `propext`, `Classical.choice`, and `Quot.sound`.
- `git diff --check`.
The standalone `lint-style` launcher failed while loading Lake's workspace on Windows; its text linters passed when invoked directly. A clean full `lake shake` run was not obtained: the initial run needed uncached modules outside the targeted dependencies, and the forced run reported suggestions throughout the existing dependency closure. Imports are unchanged from upstream. No full-library build is claimed.
### AI use
OpenAI Codex was used to audit nearby APIs and possible duplicates, extract and generalize the LeanForControl proof, write the Lean code and local examples, run validation, and prepare this PR description.
|
t-algebra
LLM-generated
new-contributor
label:t-algebra$ |
44/0 |
Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean |
1 |
3 |
['dongxuelian2', 'github-actions'] |
nobody |
17-24910 17 days ago |
17-25097 17 days ago |
17-25024 17 days |
0 |
| 43643 |
Sanghyeok0 author:Sanghyeok0 |
refactor(Logic/Relation): move inclusion lemmas out of EqvGen |
This refactor was split out from #40368 following the review discussion there.
Following further review, I moved all lemmas from the `Relation.EqvGen` namespace to `Relation`, except for `is_equivalence`, `setoid`, and `mono`, which retain their original names.
The old names are preserved as deprecated aliases for backward compatibility. I also updated the reference in `Mathlib/Order/JordanHolder.lean` to use `Relation.eqvGen_le` instead of the deprecated name.
**Changes:**
* `Relation.EqvGen.eqvGen_le` → `Relation.eqvGen_le`
* `Relation.EqvGen.eqvGen_mono` → `Relation.eqvGen_mono`
* `Relation.EqvGen.reflGen_le_eqvGen` → `Relation.reflGen_le_eqvGen`
* `Relation.EqvGen.symmGen_le_eqvGen` → `Relation.symmGen_le_eqvGen`
* `Relation.EqvGen.transGen_le_eqvGen` → `Relation.transGen_le_eqvGen`
* `Relation.EqvGen.reflTransGen_le_eqvGen` → `Relation.reflTransGen_le_eqvGen`
* `Relation.EqvGen.eqvGen_reflGen` → `Relation.eqvGen_reflGen`
* `Relation.EqvGen.eqvGen_transGen` → `Relation.eqvGen_transGen`
* `Relation.EqvGen.eqvGen_symmGen` → `Relation.eqvGen_symmGen`
* `Relation.EqvGen.eqvGen_reflTransGen` → `Relation.eqvGen_reflTransGen`
* `Relation.EqvGen.eqvGen_eq_reflTransGen` → `Relation.eqvGen_eq_reflTransGen`
* `Relation.EqvGen.reflTransGen_symmGen` → `Relation.reflTransGen_symmGen`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic
new-contributor
|
53/20 |
Mathlib/Algebra/RingQuot.lean,Mathlib/Data/PFunctor/Multivariate/M.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/Order/JordanHolder.lean |
5 |
17 |
['Sanghyeok0', 'github-actions', 'j-loreaux', 'themathqueen'] |
nobody |
16-44290 16 days ago |
16-44365 16 days ago |
41-67522 41 days |
0 |
| 38223 |
Deicyde author:Deicyde |
feat(Geometry/Manifold): add `MfldCat`, the category of `C^n` manifolds |
Defines `MfldCat 𝕜 n`: the category of `C^n` manifolds over a field `𝕜`, in which the model with corners is allowed to vary between objects. An object bundles a model vector space `E`, a model space `H`, a model with corners `I : ModelWithCorners 𝕜 E H` and a term of `ModelWithCorners.MfldCat I n`--see #41109. This includes manifolds with boundary / corners.
For more discussion see this Zulip thread: [#PR reviews > #38223 The Category of C^n Manifolds](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2338223.20The.20Category.20of.20C.5En.20Manifolds/with/587038032)
Also added: `ContMDiffMap.id_apply`, `.coe_id` and `.coe_comp` which are comparable to `ContinuousMap` API.
### Future work
- ✅ Define a Monoidal structure via product manifolds, analogous to `Manifold.Topology.Category.TopCat.Monoidal` #38560
- ✅ Define the tangent functor: `M ↦ TM`, `F ↦ F.tangentMap` from `MfldCat (n+1) 𝕜` to `MfldCat n 𝕜` #38270
- Functor `FGModuleCat 𝕜 ⥤ MfldCat 𝕜 n` sending a finite-dimensional `𝕜`-vector space to the manifold modeled on itself. Left as `TODO`.
- Define `FGModuleCat 𝕜` as an enriched category over `MfldCat n 𝕜`. Then _smooth functors_ can be realized as endofunctors on the enriched category. This is the main motivation for this construction.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #41109 [The category of `C^n` manifolds on a fixed model]
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
new-contributor
t-category-theory
|
210/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/Category/MfldCat/Basic.lean,Mathlib/Geometry/Manifold/ContMDiffMap.lean |
3 |
63 |
['Deicyde', 'chrisflav', 'dagurtomas', 'github-actions', 'idontgetoutmuch', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'peabrainiac'] |
robin-carlier assignee:robin-carlier |
15-50462 15 days ago |
60-10939 60 days ago |
119-44431 119 days |
2 |
| 44810 |
zixiaowang17 author:zixiaowang17 |
feat(Combinatorics): add abstract graphical Markov properties |
Introduce the global, local, and pairwise Markov properties for undirected graphs, and prove
the forward implications global → local → pairwise under the semigraphoid axioms.
The implementation is a single module importing `Mathlib.Combinatorics.SimpleGraph.Walk.Basic`.
The current framework allows arbitrary vertex types, including infinite and uncountable types.
Reference: David Montague and Bala Rajaratnam, *Graphical Markov models for infinitely many
variables*, *Transactions of the American Mathematical Society* **370** (2018), no. 11,
7557–7603. [doi:10.1090/tran/7048](https://doi.org/10.1090/tran/7048).
---
I want to introduce “a graphical framework in which we can analyze the Markov properties
from a purely set theoretic perspective which is independent of probability theory,” as
described in [Section 4](https://arxiv.org/pdf/1501.07878#page=8).
Motivation: I was trying to provide a common foundation connecting graphical models in
statistics, random fields, and percolation on lattices. Along the way, I found that most of
the materials I read assumed finite vertex sets. However, I want to understand better what
drives the equivalence of the Markov properties, so that we can talk about theorems with
more flexibility. I then found this paper, which, in Section 4, takes a purely set-theoretic approach
to independence and graphical Markov properties, separately from its treatment of
measure-theoretic conditional independence in probabilistic models.
If this PR meets the requirements and is in the right direction, I plan to finish proving
the equivalence of the pairwise, local, and global Markov properties for ternary relations
under suitable intersection assumptions. In the long term, I plan to connect conditional
independence in probability with graphical models, including DAGs.
AI assistance: OpenAI Codex assisted with the Lean definitions and proofs. I checked every
line of the code. |
t-combinatorics
LLM-generated
new-contributor
|
231/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Markov.lean,docs/references.bib |
3 |
4 |
['github-actions', 'zixiaowang17'] |
nobody |
14-78829 14 days ago |
14-78970 14 days ago |
27-51843 27 days |
0 |
| 44978 |
ArtificialZeng author:ArtificialZeng |
feat(Analysis/Normed/Module): uniform bounds for compact injective families |
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. |
t-analysis
LLM-generated
new-contributor
|
57/0 |
Mathlib/Analysis/Normed/Module/FiniteDimension.lean |
1 |
3 |
['ArtificialZeng', 'github-actions'] |
nobody |
14-78613 14 days ago |
14-78808 14 days ago |
22-74957 22 days |
0 |
| 44798 |
3y3y3y-huaiji author:3y3y3y-huaiji |
style(Order/Heyting): rename inf_himp to inf_himp_self |
Rename `inf_himp` to `inf_himp_self` to align with its dual `sup_sdiff_self` and companion lemma `himp_inf_self`, resolving an in-code TODO. Add a deprecated alias `inf_himp`.
---
> [!NOTE]
> **LLM Disclosure / AI Use**: This PR was prepared with the assistance of an LLM (`LLM-generated`). All proofs and statements have been formally verified by Lean 4 and checked with linters.
|
t-order
LLM-generated
new-contributor
|
5/4 |
Mathlib/Order/Heyting/Basic.lean |
1 |
4 |
['3y3y3y-huaiji', 'github-actions', 'plp127', 'vihdzp'] |
nobody |
14-73450 14 days ago |
27-9094 27 days ago |
27-70544 27 days |
0 |
| 40368 |
Sanghyeok0 author:Sanghyeok0 |
feat: add confluence predicates for relations |
This PR adds a minimal relation-level API for confluence-style properties:
* `Relation.IsDiamond`
* `Relation.IsConfluent`
* `Relation.IsChurchRosser`
It also adds the basic API connecting these predicates:
* `Relation.ReflTransGen.to_eqvGen`
* `Relation.Join.le_eqvGen`
* `Relation.IsChurchRosser.isConfluent`
* `Relation.IsConfluent.isChurchRosser`
* `Relation.IsChurchRosser.join_reflTransGen_eq_eqvGen`
The main downstream application is the polynomial-reduction development in
#41475. There, polynomial reduction is treated as an ordinary relation on
`MvPolynomial`, and these predicates are used to formulate confluence and the
Church--Rosser property.
A more general rewriting API exists in CSLib. This PR does not attempt to
upstream that API wholesale; its scope is intentionally limited to the
declarations needed by the downstream polynomial application.
The earlier version of this PR also introduced
`Relation.StronglyConfluent` and additional equivalence packaging. Those
declarations have been removed to keep this PR small and application-driven.
Reference: Becker, Weispfenning, and Kredel,
*Gröbner Bases: A Computational Approach to Commutative Algebra*.
AI usage disclosure:
I used OpenAI Codex to generate initial drafts of the definitions, theorem statements, proof scripts, and docstrings. I made the final decisions on the mathematical scope and API design, reviewed the generated code and final changes, and made a few edits to statements and docstrings.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic
new-contributor
tech debt
LLM-generated
|
103/25 |
Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/Logic/Relation.lean |
2 |
38 |
['Hagb', 'Sanghyeok0', 'SnirBroshi', 'chenson2018', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
14-65913 14 days ago |
62-58570 62 days ago |
135-28964 135 days |
1 |
| 41053 |
hawkrobe author:hawkrobe |
refactor(RingTheory): bialgebra and Hopf algebra structures on RingCon quotients |
---
Since #40451, SymmetricAlgebra R M is (symRingCon R M).Quotient, which the ideal quotients of #39790 don't cover. This PR adds the congruence-level constructions, so SymmetricAlgebra's bialgebra and Hopf algebra structures can descend from TensorAlgebra as suggested in #39579, once #31898 lands.
- [x] depends on: #41052
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
|
154/41 |
Mathlib/RingTheory/Bialgebra/Quotient.lean,Mathlib/RingTheory/HopfAlgebra/Quotient.lean |
2 |
6 |
['github-actions', 'hawkrobe', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
14-60779 14 days ago |
21-60002 21 days ago |
21-63855 21 days |
0 |
| 40967 |
Formalistic03 author:Formalistic03 |
feat(Combinatorics/SimpleGraph/Paths): some lemmas about inducing walks |
Could also be done via `SimpleGraph.Walk.map_induce`, but I thought that doing it directly is not much worse.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
maintainer-merge
|
59/0 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean,Mathlib/Data/List/Nodup.lean,Mathlib/Data/Sym/Sym2.lean |
4 |
34 |
['Formalistic03', 'SnirBroshi', 'github-actions'] |
nobody |
14-49560 14 days ago |
35-11685 35 days ago |
128-72861 128 days |
0 |
| 45263 |
huntse author:huntse |
feat(Order/Filter/Cofinite): add `Filter.countable_sets_cofinite` |
My first attempt at a PR for mathlib so I apologize if I'm doing it wrong. I picked up a lemma in FLT that was marked
as TODO to upstream into mathlib (there it is Filter.cofinite.sets.countable in FLT/Mathlib/Order/Filter/Cofinite.lean)
and upstreamed it.
- I used a name which seemed more in keeping with mathlib convention but please lmk if I should rename it. Both
`countable_sets_cofinite` and `cofinite_sets_countable` seemed somewhat defensible.
- I changed it to a theorem since the neighbouring code seems to all be theorems.
- The actual lean proof is due to kbuzzard. I just copied it upstream and made the following tweaks:
- `(ι : Type*)` was not needed as that's mentioned higher in the file in a `variable` line
- I removed namespacing on Filter.cofinite as we're in that namespace here already
- I didn't use AI to generate this PR or description but since it's my first PR to mathlib and I'm a bit nervous I did
use AI to review the PR and give me suggestions. It suggested the name change and the removal of the redundant
namespacing and type info.
- FLT also has a Countable instance for ↥(cofinite).sets which I left there.
Co-authored-by: kbuzzard
|
t-order
FLT
new-contributor
|
5/0 |
Mathlib/Order/Filter/Cofinite.lean |
1 |
5 |
['github-actions', 'huntse', 'vihdzp'] |
nobody |
14-38854 14 days ago |
14-38990 14 days ago |
15-42496 15 days |
0 |
| 45136 |
raja-19 author:raja-19 |
chore(RingTheory/MvPolynomial/Homogeneous): add lemmas |
These lemmas are used in the proof that the Motzkin polynomial is not expressible as a polynomial sum of squares: #45138. |
t-ring-theory
new-contributor
|
52/0 |
Mathlib/RingTheory/MvPolynomial/Homogeneous.lean |
1 |
9 |
['github-actions', 'raja-19', 'vihdzp', 'wwylele'] |
nobody |
14-15328 14 days ago |
14-15512 14 days ago |
18-79589 18 days |
1 |
| 45137 |
raja-19 author:raja-19 |
chore(Algebra/Polynomial/BigOperators): add `natDegree_sum_pow_eq_of_even` |
This lemma is used in the proof that the Motzkin polynomial is not expressible as a polynomial sum of squares: #45138 . |
t-algebra
new-contributor
label:t-algebra$ |
125/0 |
Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Order/WithBot.lean |
3 |
20 |
['SnirBroshi', 'github-actions', 'raja-19', 'wwylele'] |
nobody |
14-13313 14 days ago |
14-13543 14 days ago |
18-51637 18 days |
1 |
| 42775 |
hawkrobe author:hawkrobe |
feat(RingTheory/HopfAlgebra): construct Hopf algebras from primitive generators |
Upgrade a bialgebra generated by primitive elements to a Hopf algebra (`HopfAlgebra.ofPrimitives`), given an anti-algebra hom `S : A →ₐ[R] Aᵐᵒᵖ` negating each generator, and show that such an `S` is the antipode (`HopfAlgebra.eq_antipodeAlgHomOp_of_primitives`). Both build on `HopfAlgebra.ofAntipodeOfAdjoin` from #41828, which superseded the generators construction this PR originally carried.
Split out of #39841. Claude Code was used to prepare this revision. |
t-ring-theory
new-contributor
|
31/4 |
Mathlib/RingTheory/HopfAlgebra/Primitive.lean |
1 |
3 |
['github-actions'] |
alreadydone assignee:alreadydone |
13-77432 13 days ago |
13-77483 13 days ago |
84-41278 84 days |
1 |
| 41729 |
vaca22 author:vaca22 |
feat(RingTheory/DedekindDomain): add divisor group core |
Add the divisor group of a Dedekind domain as a formal-sum model, together with the additive equivalence to the multiplicative group of nonzero fractional ideals.
**Relation to what Mathlib already has.** As pointed out on Zulip, Mathlib already knows that fractional ideals factor: `FractionalIdeal.count` gives the exponent of a height-one prime, and `ClassGroup` is built from fractional ideals directly. This PR does not re-prove any of that — it reuses `count` and `finite_factors` verbatim. What it adds is the *additive* packaging:
* `IsDedekindDomain.Divisor R := HeightOneSpectrum R →₀ ℤ`, so a divisor is a finitely supported integer-valued function and one can write `D₁ + D₂`, `-D`, `D v`, and use the whole `Finsupp` API (`support`, `sum`, induction on the support);
* `FractionalIdeal.divisorEquiv`, an `AddEquiv` from `(FractionalIdeal R⁰ K)ˣ` to `Divisor R`, turning ideal multiplication into divisor addition.
The multiplicative view is the right one for the class group; the additive one is what divisor-theoretic arguments are written in, where one constantly forms `D - D'`, compares coefficients prime by prime, and does induction over `D.support`. Having both, related by a single `AddEquiv`, means neither side has to be re-derived.
**Downstream use.** This is the bottom layer of a formalization of Riemann–Roch for algebraic function fields (announced in `#AI authored projects > Riemann–Roch for function fields`): `L(D)`, `deg D`, and the statement `ℓ(D) = deg D + 1 - g + ℓ(W - D)` are all phrased in terms of additive divisors, and the degree map is defined by summing coefficients over `D.support`.
Happy to reshape the API — in particular whether `Divisor` should be an `abbrev` or a structure, and whether this belongs next to `Factorization` rather than in its own file.
AI usage: LLM-generated, disclosed per the AI policy.
|
t-ring-theory
new-contributor
LLM-generated
|
100/0 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Divisor.lean |
2 |
4 |
['github-actions', 'grunweg', 'vaca22'] |
alreadydone assignee:alreadydone |
13-50457 13 days ago |
115-60428 115 days ago |
117-57070 117 days |
0 |
| 42912 |
justin-palumbo author:justin-palumbo |
feat(Topology/GDelta): a completely metrizable subspace of a T6 space is Gδ |
Adds TopologicalSpace.IsCompletelyMetrizableSpace.isGδ: a completely metrizable subspace of a T6 space is Gδ
This is one direction of a foundational fact in descriptive set theory --- the Polish subspaces of a Polish space are exactly the Gδ subsets.
The proof here is modeled on the exposition in Anush Tserunyan's descriptive set theory notes https://www.math.mcgill.ca/atserunyan/Teaching_notes/dst_lectures.pdf, with one adjustment; to make the formalization easier and avoid having multiple distance metrics instantiated at the same time, instead of directly defining open `U_n` with `s = ⋂ n, U` define them such that `s = closure s ∩ ⋂ n, U n` and then appeal to the fact closed sets are Gδ in a perfectly normal space.
---
- [x] depends on: #42896 [which fixes buggy naming present in Topology/Metrizable/CompletelyMetrizable]
This can be viewed as a companion to #42693, which - under the stronger assumption of the ambient space being Polish - establishes the other direction --- a Gδ subspace of a Polish space is itself Polish.
Together, these give Alexandrov's theorem, characterizing the Polish subspaces of an ambient Polish space as exactly the Gδ ones, and (via `Metric.PiNatEmbed.exists_embedding_to_hilbert_cube`) Polish spaces as exactly the Gδ subsets of the Hilbert cube. If and when both these PRs are committed, I anticipate adding these consequences to Topology/MetricSpace/Polish.lean
LLM usage: I wrote the initial version myself, while using Google's free "AI mode" to help me find relevant lemma names in the codebase, and afterward used helped Claude Opus to review, which led to simplifying some of the arguments. I take full responsibility for the code here
|
t-topology
new-contributor
|
91/0 |
Mathlib.lean,Mathlib/Topology/GDelta/CompletelyMetrizable.lean |
2 |
8 |
['github-actions', 'justin-palumbo', 'mathlib-dependent-issues', 'plp127'] |
felixpernegger assignee:felixpernegger |
13-44094 13 days ago |
81-13471 81 days ago |
82-5735 82 days |
0 |
| 43216 |
JadAbouHawili author:JadAbouHawili |
feat(Combinatorics/SimpleGraph/Clique): independence number is zero iff the graph has no vertices |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
62/11 |
Mathlib/Combinatorics/SimpleGraph/Clique.lean |
1 |
66 |
['JadAbouHawili', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
SnirBroshi assignee:SnirBroshi |
13-22575 13 days ago |
15-31252 15 days ago |
60-56659 60 days |
0 |
| 42494 |
JadAbouHawili author:JadAbouHawili |
feat(Combinatorics/SimpleGraph/Connectivity): add edge reachability and connectivity numbers |
Define edge reachability and connectivity numbers with some basic API
Partially solves #34961
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
|
81/2 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean,Mathlib/Order/CompleteLattice/Lemmas.lean |
2 |
169 |
['JadAbouHawili', 'SnirBroshi', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] |
SnirBroshi assignee:SnirBroshi |
13-22568 13 days ago |
15-31080 15 days ago |
65-35530 65 days |
0 |
| 44885 |
3y3y3y-huaiji author:3y3y3y-huaiji |
feat(Combinatorics/Quiver/Path): monotonicity of valuations and cycle obstruction |
Define monotonicity of vertex valuations along paths in a quiver and deduce that
strict valuations rule out non-trivial cycles. As a consequence, `Reachable` is a
partial order when such a valuation exists.
---
> [!NOTE]
> **LLM Disclosure / AI Use**: This PR was prepared with the assistance of an LLM
> (`LLM-generated`). All proofs and statements have been formally verified by Lean 4
> and checked with linters. |
t-combinatorics
LLM-generated
new-contributor
|
65/2 |
Mathlib/Combinatorics/Quiver/Path.lean |
1 |
5 |
['3y3y3y-huaiji', 'github-actions', 'leanprover-radar'] |
nobody |
13-20615 13 days ago |
14-35107 14 days ago |
14-35034 14 days |
0 |
| 41241 |
intgrah author:intgrah |
feat(Order/Category): cartesian closed and distributive structure on PartOrd and Preord |
Give `PartOrd` and `Preord` `CartesianMonoidalCategory`, `MonoidalClosed`, and `IsCartesianDistributive` instances.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
maintainer-merge
|
311/0 |
Mathlib.lean,Mathlib/Order/Category/PartOrd/CartesianClosed.lean,Mathlib/Order/Category/PartOrd/Colimits.lean,Mathlib/Order/Category/PartOrd/Reflective.lean,Mathlib/Order/Category/Preord/CartesianClosed.lean,Mathlib/Order/Category/Preord/Colimits.lean,Mathlib/Order/Category/Preord/Reflective.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
8 |
27 |
['Vierkantor', 'YaelDillies', 'github-actions', 'intgrah', 'thomaskwaring'] |
nobody |
12-81973 12 days ago |
13-83851 13 days ago |
126-62066 126 days |
0 |
| 42357 |
SynBurz author:SynBurz |
feat: the Krull dimension of the product of finitely many rings is equal to the maximum of Krull dimensions of the factors |
Add `ringKrullDim_pi_eq_iSup_ringKrullDim`. Also add useful defs: `LTSeries.sigmaEquiv`, `PrimeSpectrum.sigmaToPiOrderIso`, and lemmas `PrimeSpectrum.sigmaToPiOrderIso_apply`, Pi.not_comap_evalRingHom_le_comap_of_neq`, `LTSeries.sigma_fst_eq_fst`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
93/0 |
Mathlib/Order/RelSeries.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean |
3 |
7 |
['SynBurz', 'github-actions', 'mathlib-merge-conflicts', 'tb65536', 'wwylele'] |
nobody |
12-79827 12 days ago |
32-58295 32 days ago |
61-64249 61 days |
0 |
| 45343 |
thinkthoughts author:thinkthoughts |
feat(Data/Nat/Totient): totient of a pairwise coprime product |
My PR adds a theorem for Euler's totient function over a product of natural numbers, where any two distinct factors have a greatest common divisor of 1.
It also adds a theorem for products of distinct primes, where each prime contributes its value minus one. The prime-specific result follows from the more general totient-product theorem.
Both results provide reusable statements in Mathlib using existing properties of Euler's totient function.
---
**Validation:** The revised PR passed all 12 applicable Mathlib CI checks, including build and lint checks. Two additional checks were skipped. No new imports or axioms introduced.
**Research context:** This comes from my work on the General Divisor Theorem and Lean prime-gap formalization; specifically consdering Euler's totient function and products of distinct primes.
General Divisor Theorem: https://github.com/thinkthoughts/general-divisor-theorem
Lean prime-gap formalization: https://github.com/thinkthoughts/lean-bgp212
Related (my initial) mathematical work: https://translatepi.ai/main.pdf
**AI assistance:** I used Claude to develop the Lean proofs, prepare the patch, and perform local compilation and lint checks. I used ChatGPT to review the mathematical specification and help identify a reusable Mathlib contribution. ChatGPT and DeepSeek also assisted with reviewing the sustainably optimized proof, and explaining its mathematical structure.
I read Cantor's diagonal argument in 2003 and have since directed my own work, and reviewed the results; so I'm responsible for the submitted work. And thanks for your help!
|
t-data
new-contributor
LLM-generated
|
18/0 |
Mathlib/Data/Nat/Totient.lean |
1 |
6 |
['SnirBroshi', 'github-actions', 'thinkthoughts'] |
nobody |
12-71319 12 days ago |
12-71319 12 days ago |
13-6814 13 days |
0 |
| 43539 |
abhijitaj1997 author:abhijitaj1997 |
feat(CategoryTheory/Monoidal/Cartesian/Endomorphism): add ring and semiring structures |
Given two monoidal object in a nice enough category, this show that the monoidal morphisms between then forms an additive group. This additive group is part of a larger semiring structure.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-category-theory
|
133/0 |
Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Endomorphism.lean |
2 |
41 |
['Multramate', 'abhijitaj1997', 'alreadydone', 'github-actions', 'joelriou', 'robin-carlier'] |
joelriou assignee:joelriou |
12-68285 12 days ago |
12-68285 12 days ago |
61-22650 61 days |
0 |
| 42189 |
cameronfreer author:cameronfreer |
feat(ModelTheory/Basic): add characterization of languages with countably many symbols |
Add the instance `Countable.countable_relations`, the counterpart of `Countable.countable_functions`, and relate `Countable L.Symbols` and `L.card ≤ ℵ₀` to the separate countability of function and relation symbols, which is how model-theoretic statements usually assume a countable language:
* `countable_symbols_iff : Countable L.Symbols ↔ Countable (Σ l, L.Functions l) ∧ Countable (Σ l, L.Relations l)`
* `card_le_aleph0_iff_countable : L.card ≤ ℵ₀ ↔ Countable (Σ l, L.Functions l) ∧ Countable (Σ l, L.Relations l)`
Also add a general instance `Countable.countable_sum` for `L.sum L'`, move the `constantsOn` instance from `Encoding.lean` to `LanguageMap.lean` as `Countable.countable_constantsOn`, and replace the `withConstants` instance in `Encoding.lean` with `Countable.countable_withConstants` in `LanguageMap.lean`, derived from the sum instance.
---
For example, [`Descriptive/Polish.lean#L46`](https://github.com/cameronfreer/infinitary-logic/blob/1a478e80794080a536931c029281bb65266b3171/InfinitaryLogic/Descriptive/Polish.lean#L46) in cameronfreer/infinitary-logic assumes only that the relation symbols are countable. Thanks to @NoneMore for suggesting the `Encoding.lean` cleanup.
🤖 These proofs were written with the assistance of Claude Opus 5 high and reviewed by GPT Sol 5.6 xhigh.
|
t-logic
new-contributor
LLM-generated
|
33/12 |
Mathlib/ModelTheory/Basic.lean,Mathlib/ModelTheory/Encoding.lean,Mathlib/ModelTheory/LanguageMap.lean |
3 |
5 |
['NoneMore', 'cameronfreer', 'github-actions'] |
nobody |
12-67561 12 days ago |
103-25629 103 days ago |
103-25556 103 days |
0 |
| 42758 |
cameronfreer author:cameronfreer |
feat(ModelTheory): add syntax and semantics for infinitary logic |
Add syntax and semantics for the infinitary logics L∞ω and Lω₁ω.
In `BoundedFormulaInf L ι α n`, the `iSup`/`iInf` constructors are indexed by a single type `ι`, which is used for every infinitary conjunction and disjunction in a formula. The specialization
```lean
abbrev BoundedFormulaω (α : Type u') (n : ℕ) := L.BoundedFormulaInf ℕ α n
```
lives in the same universe as the finitary `BoundedFormula`, as suggested by @plp127 in [#mathlib4 > ModelTheory: API for infinitary formulas of L_{∞,ω} @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/ModelTheory.3A.20API.20for.20infinitary.20formulas.20of.20L_.7B.E2.88.9E.2C.CF.89.7D/near/613390601).
Also add derived connectives with `alls`/`exs`, `Realize` with `simp` lemmas for each constructor and derived connective, and the embedding `BoundedFormula.toInf` with `realize_toInf`.
---
I developed this with extensive assistance from several Claude and GPT models along with [lean4-skills](https://github.com/cameronfreer/lean4-skills) and [lean-lsp-mcp](https://github.com/oOo0oOo/lean-lsp-mcp) as part of the ongoing project [cameronfreer/infinitary-logic](https://github.com/cameronfreer/infinitary-logic/).
|
t-logic
LLM-generated
new-contributor
|
446/0 |
Mathlib.lean,Mathlib/ModelTheory/Infinitary/Semantics.lean,Mathlib/ModelTheory/Infinitary/Syntax.lean,MathlibTest/InfinitarySyntax.lean |
4 |
4 |
['cameronfreer', 'github-actions'] |
nobody |
12-67551 12 days ago |
85-68633 85 days ago |
87-47522 87 days |
0 |
| 41882 |
theebayuser author:theebayuser |
feat(Data/List): decidability of HasPeriod and periods of repeated lists |
Hello, this PR extends `Mathlib/Data/List/PeriodicityLemma.lean` with:
* a `Decidable (List.HasPeriod w p)` instance (it is a prefix test), and
* two directions that relate periods to repetition:
* `hasPeriod_flatten_replicate` — `(replicate n l).flatten` has period `l.length`
* `eq_flatten_replicate_of_hasPeriod` — a word with period `p` and length `r * p` is the `r`-fold repetition of its length-`p` prefix.
This characterizes `r`-th powers of words by a period plus a length constraint, which a future follow-up PR that I plan to work on will use.
AI disclosure: This code was mostly generated by Claude Fable 5 and Opus 4.8 as part of my larger project on combinatorics on words, which I then reviewed and revised to contribute to mathlib.
|
t-data
LLM-generated
new-contributor
|
56/1 |
Mathlib/Data/List/PeriodicityLemma.lean |
1 |
8 |
['SnirBroshi', 'github-actions', 'theebayuser'] |
TwoFX assignee:TwoFX |
12-50441 12 days ago |
30-34898 30 days ago |
114-24520 114 days |
0 |
| 42353 |
sankalpsthakur author:sankalpsthakur |
feat(RingTheory): add nilpotence lemmas for zero sums |
In a semiring, adds:
- `sq_eq_sq_of_add_eq_zero`: if `x + y = 0` then `x^2 = y^2`
- `IsNilpotent.of_add_eq_zero_left`: if `x + y = 0` and `y` is nilpotent, so is `x`
- `isNilpotent_iff_of_add_eq_zero`: under `x + y = 0`, `x` is nilpotent iff `y` is
Motivated by #10539.
---
### Validation
Built locally: `lake build Mathlib.RingTheory.Nilpotent.Basic` succeeds.
### AI/LLM disclosure
AI coding tools were used to help draft this change and PR description. I reviewed the complete change, understand the reasoning, and verified the build locally before submitting. |
t-ring-theory
new-contributor
LLM-generated
|
49/0 |
Mathlib/RingTheory/Nilpotent/Basic.lean |
1 |
29 |
['github-actions', 'sankalpsthakur', 'tb65536'] |
mattrobball assignee:mattrobball |
12-48362 12 days ago |
74-12097 74 days ago |
80-5224 80 days |
0 |
| 45404 |
davidiach author:davidiach |
feat(InformationTheory/KullbackLeibler): add restriction lemmas |
Restricting two finite measures to the same set decreases their KL divergence. This PR adds the integral identity that explains why, and the inequality that follows from it.
Neither lemma requires the set to be measurable. Both concern restrictions without normalization and build on the existing `klFun` API.
Verified against current mathlib on Lean 4.36.0-rc2, including builds, linters, and axiom checks.
AI assistance: Astra Pro identified the contribution; Codex extracted and refined the proofs, checked for duplicates, and ran verification.
|
t-measure-probability
LLM-generated
new-contributor
|
32/0 |
Mathlib/InformationTheory/KullbackLeibler/Basic.lean |
1 |
3 |
['davidiach', 'github-actions'] |
nobody |
12-21725 12 days ago |
12-21792 12 days ago |
12-21719 12 days |
0 |
| 45409 |
JackFeliks author:JackFeliks |
feat(Analysis/SpecificLimits): bound alternating series error from convergence |
Our change allows the same error bound to be used in more cases, for example when calculating π/4 using the Leibniz series. Existing uses continue to work.
---
I came up with this contribution while testing my own experimental stack of algorithms.
Codex prepared the code and tests, and Argon reviewed the proposal. |
t-analysis
LLM-generated
new-contributor
|
81/27 |
Mathlib/Analysis/Real/Pi/Leibniz.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,MathlibTest/AlternatingSeries.lean |
3 |
3 |
['JackFeliks', 'github-actions'] |
nobody |
12-9169 12 days ago |
12-11499 12 days ago |
12-11426 12 days |
0 |
| 45441 |
janbernloehr author:janbernloehr |
feat(Analysis/Normed/Operator/Compact): preserve compact remainders under one-sided inverses |
Add `IsCompactOperator.sub_id_of_rightInverse` and `IsCompactOperator.sub_id_of_leftInverse`: if `f - id` is compact and `g` is a continuous linear right or left inverse of `f`, then `g - id` is compact.
Work over an arbitrary ring and a module whose underlying additive group is a topological group. The proofs use compactness under composition and negation, through the identities `(f - id) ∘L g = id - g` and `g ∘L (f - id) = id - g`.
These lemmas are used in my thesis formalization to show that compact derivative remainders are preserved under inverse coordinate changes. They package an elementary consequence of compactness being preserved under composition with continuous linear maps and negation.
---
Local validation passed with Lean `v4.36.0-rc2`: the affected-module build, style lint, axiom checks, standalone usage examples, and `git diff --check`. There are no PR dependencies.
AI assistance: OpenAI Codex was used when writing the Lean proofs.
Related background: #35048 (the existing Fredholm alternative), #39274 (broader Fredholm infrastructure), and #43906 (a closed, unmerged compact-perturbation development).
|
t-analysis
new-contributor
LLM-generated
|
37/0 |
Mathlib/Analysis/Normed/Operator/Compact/Basic.lean |
1 |
2 |
['github-actions'] |
nobody |
11-57511 11 days ago |
11-60253 11 days ago |
11-60180 11 days |
0 |
| 45444 |
janbernloehr author:janbernloehr |
feat(Analysis): characterize weighted summability by geometric tails |
Add `ENNReal.tsum_rpow_mul_lt_top_iff_geometric_tails`: for $f:I\to[0,\infty]$, a size map $\nu:I\to\mathbb N$, a real base $b>1$, a positive integer cutoff $M$, and real $t>0$, set
$$
\begin{aligned}
S&:=\sum_i f_i,
& W_t&:=\sum_i(1+\nu(i))^t f_i,\\
T_k&:=\sum_{\nu(i)\ge b^kM}f_i,
& G_t&:=\sum_{k=0}^{\infty}b^{kt}T_k.
\end{aligned}
$$
Prove the quantitative ENNReal estimates
$$
W_t\le(1+bM)^t(S+G_t),
\qquad
G_t\le\frac{b^t}{b^t-1}\,W_t,
$$
and hence the equivalence
$$
W_t<\infty
\quad\Longleftrightarrow\quad
S<\infty\;\land\;G_t<\infty.
$$
The estimates allow infinite coefficients and divergent sums; the first also holds at order zero. Use nonnegative double-sum interchange and finite geometric-series estimates, then derive the real-valued summability criteria as corollaries. No monotonicity of the coefficients or finiteness of the size-map fibers is required.
This criterion is used in the formalisation of my dissertation, in a weighted-regularity argument.
---
Local validation passed with Lean `v4.36.0-rc2`: the affected-module build, style lint, 15 linters, axiom checks, standalone usage examples (including the nonintegral base $b=3/2$ and natural-base specialisations), and `git diff --check`. There are no PR dependencies.
AI assistance: OpenAI Codex was used to adapt and generalize the proofs for the ENNReal formulation.
|
t-analysis
new-contributor
LLM-generated
|
274/0 |
Mathlib.lean,Mathlib/Analysis/SummableGeometricTails.lean |
2 |
2 |
['github-actions'] |
nobody |
11-57506 11 days ago |
11-57956 11 days ago |
11-57883 11 days |
0 |
| 45445 |
janbernloehr author:janbernloehr |
feat(Analysis/Normed/Lp): detect PiLp norms by conjugate pairings |
Add norm-attaining conjugate test vectors for finite real or complex `PiLp` spaces, and deduce a criterion for bounding the norm from all conjugate-unit-ball pairings. Include the corresponding Hölder bound, both endpoint pairs `(1, ∞)` and `(∞, 1)`, and empty index types.
Use the bilinear pairing `∑ i, a i * b i`, with conjugation incorporated into the test vector, so the results support holomorphic interpolation. Reuse `NNReal.isGreatest_Lp` for finite exponents and handle the endpoints explicitly.
These lemmas are used in the formalization of my dissertation to recover ℓp norm bounds from finite test-pairing estimates in the discrete Hilbert-transform argument.
---
## Dependencies and merge order
No prerequisite PRs. Merge this before #45447, which is stacked on this change. The coordinate-restriction contribution is independent.
## Validation
Checked using Lean `v4.36.0-rc2`:
- Module build, style linter and declaration linters.
- Real/complex examples, p=2, both conjugate endpoint pairs and an empty index type.
- Generated import and diff/whitespace checks.
- Axiom inspection: only `propext`, `Classical.choice`, `Quot.sound`.
## AI assistance
OpenAI Codex has been used in the writing of the Lean implementation.
|
t-analysis
LLM-generated
new-contributor
|
167/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Lp/PiLpDual.lean |
2 |
2 |
['github-actions'] |
nobody |
11-57501 11 days ago |
11-57698 11 days ago |
11-57625 11 days |
0 |
| 45447 |
janbernloehr author:janbernloehr |
feat(Analysis/Normed/Lp): interpolate finite matrix bounds |
Add `Matrix.norm_sum_mulVec_interpolate` and `Matrix.norm_mulVec_interpolate`, giving sharp interpolation of finite complex matrix bounds. If `A` has nonnegative bounds `B₀` from `ℓp₀` to `ℓq₀` and `B₁` from `ℓp₁` to `ℓq₁`, conclude for `0 ≤ t ≤ 1`
$$
\|Ax\|_s \le B_0^{1-t} B_1^t \|x\|_r,
\qquad
\frac1r = \frac{1-t}{p_0}+\frac{t}{p_1},\quad
\frac1s = \frac{1-t}{q_0}+\frac{t}{q_1}.
$$
Use entire power families and Hadamard's three-lines theorem for the bilinear estimate, then conjugate norm detection for the operator bound. Endpoint input exponents are positive and finite, with `1 ≤ r < ∞`; output exponents are strictly greater than one and may be infinite.
This result is used in the formalization of my dissertation to interpolate finite matrix estimates for the discrete Hilbert transform. The dimension-independent constant keeps the bounds uniform as finite truncations grow.
---
## Dependencies and merge order
Depends on #45445 **merge that PR first, then this one**.
## Validation
Checked using Lean `v4.36.0-rc2`:
- Module build, style linter and declaration linters.
- Interpolation from 2 and 4 to 8/3, and from `1 → ∞` and `2 → 2` to `4/3 → 4`.
- Zero bounds, t=0 and t=1, empty index types, generated import and diff/whitespace checks.
- Axiom inspection: only `propext`, `Classical.choice`, `Quot.sound`.
## AI assistance
OpenAI Codex has been used to write the Lean implementation based on my dissertation proofs. |
t-analysis
LLM-generated
new-contributor
|
472/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Lp/PiLpDual.lean,Mathlib/Analysis/Normed/Lp/PiLpInterpolation.lean |
3 |
2 |
['github-actions'] |
nobody |
11-57495 11 days ago |
11-57564 11 days ago |
11-57491 11 days |
0 |
| 42142 |
philipp-svinger author:philipp-svinger |
feat(Analysis/ODE): peano existence theorem, Tonelli approximation 1 |
Add Tonelli approximation method for ODEs.
Implement the structure IsPeano similar to IsPicardLindelof. Construct a sequence of approximations using Tonelli technique.
First step towards Peano existence
Co-authored-by: Florian Grube <fgrube@math.uni-bielefeld.de>
Co-authored-by: Paul Niessner <pniessner@math.uni-bielefeld.de>
Co-authored-by: Julian Rolfes <jrolfes@math.uni-bielefeld.de>
Co-authored-by: Luke Schleef <lschleef@math.uni-bielefeld.de>
Co-authored-by: Philipp Svinger <psvinger@math.uni-bielefeld.de>
---
We want to add the proof of the Peano existence theorem for ODEs, using Tonelli approximations.
This will be a series of PRs working towards this goal. In this first PR, we
implement the structure IsPeano similar to IsPicardLindelof and construct a sequence of approximations using Tonelli technique. See our further PRs for more information, last: #42148
---
The statements, definitions and proofs were written without AI.
AI was used afterwards to help us to adapt our code to the style and naming conventions.
We also used it in the process of writing a documentation.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis
new-contributor
|
207/0 |
Mathlib.lean,Mathlib/Analysis/ODE/Peano.lean |
2 |
24 |
['github-actions', 'mcdoll', 'philipp-svinger', 'sgouezel'] |
urkud assignee:urkud |
11-50458 11 days ago |
44-68893 44 days ago |
101-30028 101 days |
5 |
| 41466 |
EzequielS2 author:EzequielS2 |
feat(Algebra/Order): stronger sublist product inequality via diff |
## Summary
Add `Sublist.prod_le_prod'_of_mem_diff` and `Sublist.sum_le_sum_of_mem_diff`.
## Test plan
- [x] `lake build` and `lake exe runLinter` on `Mathlib.Algebra.Order.BigOperators.Group.List`
|
t-algebra
new-contributor
label:t-algebra$ |
12/4 |
Mathlib/Algebra/Order/BigOperators/Group/List.lean |
1 |
8 |
['EzequielS2', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen', 'wwylele'] |
nobody |
11-41137 11 days ago |
11-40105 11 days ago |
52-49101 52 days |
0 |
| 41449 |
EzequielS2 author:EzequielS2 |
feat(Topology/ContinuousMap): domMulAct action on C(X, Y) |
## Summary
- Define the action of `Mᵈᵐᵃ` on `C(α, β)` when `M` acts continuously on `α`.
- Add `SMul`, `MulAction`, `SMulCommClass`, and `ContinuousSMul` instances.
- Closes #5379.
## Test plan
- [x] `lake build Mathlib.Topology.ContinuousMap.DomAct`
- [x] `lake exe runLinter Mathlib.Topology.ContinuousMap.DomAct`
|
t-topology
new-contributor
|
105/0 |
Mathlib.lean,Mathlib/Topology/ContinuousMap/DomAct.lean |
2 |
7 |
['EzequielS2', 'github-actions', 'j-loreaux'] |
nobody |
11-38931 11 days ago |
11-39043 11 days ago |
32-69613 32 days |
1 |
| 45483 |
chenle02 author:chenle02 |
feat(MeasureTheory/Function/ConvergenceInDistribution): the Billingsley approximation theorem |
## Statement
`tendstoInDistribution_of_approx` (Billingsley, *Convergence of Probability Measures*, 2nd ed.,
Theorem 3.2). Let `E` be a separable pseudometric space with its Borel σ-algebra, `l` a countably
generated filter on `ι` and `l'` a nontrivial filter on `κ`. Let `U i, X k i : Ω i → E` (on the
probability spaces `(Ω i, μ i)`), `Y k : Ωκ k → E` (on `(Ωκ k, ν k)`) and `Z : Ω' → E`. If
* `X k i` converges in distribution to `Y k` along `l`, for each `k`,
* `Y k` converges in distribution to `Z` along `l'`,
* `U i` is a.e.-measurable for each `i`, and
* for every `δ > 0`, `limsup_{i → l} μ i {ω | δ ≤ dist (U i ω) (X k i ω)}` tends to `0` along `l'`,
then `U i` converges in distribution to `Z` along `l`.
```lean
theorem tendstoInDistribution_of_approx {κ : Type*} {Ωκ : κ → Type*}
{mκ : ∀ k, MeasurableSpace (Ωκ k)} {ν : (k : κ) → Measure (Ωκ k)}
[∀ k, IsProbabilityMeasure (ν k)] {l' : Filter κ} [l'.NeBot] [l.IsCountablyGenerated]
{X : κ → (i : ι) → Ω i → E} {Y : (k : κ) → Ωκ k → E} {U : (i : ι) → Ω i → E}
(hX : ∀ k, TendstoInDistribution (X k) l (Y k) μ (ν k))
(hY : TendstoInDistribution Y l' Z ν μ') (hU : ∀ i, AEMeasurable (U i) (μ i))
(h_approx : ∀ δ > 0, Tendsto
(fun k ↦ limsup (fun i ↦ μ i {ω | δ ≤ dist (U i ω) (X k i ω)}) l) l' (𝓝 0)) :
TendstoInDistribution U l Z μ μ'
```
Two auxiliary results are added:
* `tendstoInDistribution_iff_forall_lipschitz_integral_tendsto`: the `TendstoInDistribution`
version of `tendsto_iff_forall_lipschitz_integral_tendsto` (bounded Lipschitz test functions),
analogous to the existing `tendstoInDistribution_iff_forall_integral_rclike_tendsto`.
* `abs_integral_sub_integral_le_of_lipschitzWith`: for `F` `L`-Lipschitz with oscillation at most
`M`, `|∫ F ∘ A ∂μ - ∫ F ∘ B ∂μ| ≤ L * δ + M * μ.real {δ ≤ dist A B}` (`δ ≥ 0`). This estimate
was previously inlined in the proof of `tendstoInDistribution_of_tendstoInMeasure_sub`; that
proof now calls the lemma (about 45 lines removed there), with no change to its statement.
## Proof idea
Test against a bounded `L`-Lipschitz `F` (oscillation `≤ M`). For any `k`, `δ`,
`|E F(U i) - E F(Z)| ≤ L δ + M P(δ ≤ dist (U i) (X k i)) + |E F(X k i) - E F(Y k)| + |E F(Y k) - E F(Z)|`.
Given `η > 0`, choose `δ` with `L δ < η/4`, then (using `l'.NeBot`) a single `k` for which the
last term is `< η/4` and `limsup_i P(δ ≤ dist (U i) (X k i)) < ε` with `M ε ≤ η/4`; for this `k`,
eventually in `i` the probability is `< ε` and the third term is `< η/4`.
## Relation to existing results
* Slutsky-type lemma `tendstoInDistribution_of_tendstoInMeasure_sub` is the special case
`X k = X`, `Y k = Z` (one prelimit space). The new theorem is more general in three ways: the
prelimit spaces `Ω i` may depend on `i` (matching the definition of `TendstoInDistribution`), the
approximating limits `Y k` live on their own spaces `Ωκ k`, and `E` only needs to be a separable
pseudometric space rather than a seminormed group. The statement and proof of the Slutsky lemma
are left as they are apart from extracting the comparison estimate; if reviewers prefer, it
could instead be derived from the new theorem (with `κ = Unit`, `l' = ⊤`).
* #37279 (multivariate CLT) also edits this file: it adds `:= by fun_prop` to
`forall_aemeasurable`, switches the `tendsto` field to `Measure.toProbabilityMeasure`, adds
`TendstoInDistribution.const_const`, removes some `set_option`s and adapts the proofs of
`congr`, `continuous_comp` and `tendstoInDistribution_of_ae_tendsto`. It contains nothing like the
approximation theorem. Its hunks are all above `TendstoInMeasure.tendstoInDistribution`, while
this PR inserts below it and edits the body of `tendstoInDistribution_of_tendstoInMeasure_sub`.
`git apply --check` of the #37279 hunks for this file on top of this branch succeeds (offset
only). The new proofs reach the `ProbabilityMeasure` coercion only through `simpa` and the
existing `tendstoInDistribution_iff_forall_integral_rclike_tendsto`, so they should not depend
on the representation that #37279 changes; this has not been compiled against #37279.
## Reference
P. Billingsley, *Convergence of Probability Measures*, 2nd ed., Wiley, 1999, Theorem 3.2.
AI tools (Claude and Codex) were used to port and adapt this proof to Mathlib; the author reviewed it.
|
t-measure-probability
new-contributor
LLM-generated
|
152/49 |
Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean |
1 |
4 |
['github-actions', 'lua-vr'] |
nobody |
10-56500 10 days ago |
10-59740 10 days ago |
10-59667 10 days |
0 |
| 45482 |
chenle02 author:chenle02 |
feat(Analysis/Distribution/SchwartzSpace): the Schwartz space on a finite-dimensional space is separable |
## What is proved
In `Mathlib/Analysis/Distribution/SchwartzSpace/Separable.lean`:
```lean
instance SchwartzMap.instSecondCountableTopology
{E F : Type*} [NormedAddCommGroup E] [NormedSpace ℝ E] [NormedAddCommGroup F]
[NormedSpace ℝ F] [FiniteDimensional ℝ E] [SecondCountableTopology F] :
SecondCountableTopology 𝓢(E, F)
```
so `SeparableSpace 𝓢(E, F)` is found by instance search, for example for
`𝓢(EuclideanSpace ℝ (Fin d), ℂ)`, and in particular for `𝓢(ℝ, ℝ)`.
There are two supporting instances, both stated in general form:
```lean
-- Mathlib/Topology/Compactification/OnePoint/Basic.lean
instance OnePoint.instSecondCountableTopology [WeaklyLocallyCompactSpace X] [R1Space X]
[SecondCountableTopology X] : SecondCountableTopology (OnePoint X)
-- Mathlib/Analysis/Distribution/SchwartzSpace/Separable.lean
instance ContinuousMultilinearMap.instSecondCountableTopologyFin [FiniteDimensional 𝕜 E]
[SecondCountableTopology F] (n : ℕ) : SecondCountableTopology (E [×n]→L[𝕜] F)
```
## Proof idea
* For `f : 𝓢(E, F)`, the function `x ↦ ‖x‖ ^ k • iteratedFDeriv ℝ n f x` tends to `0` along
`cocompact E`, because it is bounded by `‖x‖⁻¹ * seminorm (k + 1) n f`. It therefore extends
by `0` to a continuous function on `OnePoint E`, and the sup norm of that extension is exactly
`SchwartzMap.seminorm ℝ k n f`.
* The resulting map `𝓢(E, F) →L[ℝ] Π (k, n), C(OnePoint E, E [×n]→L[ℝ] F)` is inducing,
because each Schwartz seminorm is the norm of one coordinate.
* Its target is second countable. `OnePoint E` is compact and second countable (new instance),
`E [×n]→L[ℝ] F` is second countable (new instance, proved by induction via currying from the
existing `E →L[𝕜] F` instance), and `ContinuousMap.instSecondCountableTopology` gives the rest.
## History of this PR
The first version of this PR proved only the case `E = ℝ`, by bounding each Schwartz seminorm
by the `L¹` norm of a derivative (`norm_le_integral_norm_deriv`, `derivCLM_pow_apply`). The
general argument above covers `E = ℝ`, so that `L¹` proof and its two auxiliary lemmas have
been removed. The file now depends only on `SchwartzSpace.Basic`, not on `SchwartzSpace.Deriv`
and the integration library.
## Follow-ups
* `ContinuousMultilinearMap.instSecondCountableTopologyFin` could be moved next to the
`E →L[𝕜] F` instance in `Mathlib/Analysis/Normed/Module/FiniteDimension.lean`, possibly in a
more general form (a `Fintype` index with finite-dimensional factors). It sits in this file for
now so that the PR does not trigger a rebuild of most of the analysis library.
* Consequences that need separability, for example for tempered distributions.
AI tools (Claude and Codex) were used to port and adapt this proof to Mathlib; the author reviewed it.
|
t-analysis
new-contributor
LLM-generated
|
177/0 |
Mathlib.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Separable.lean,Mathlib/Topology/Compactification/OnePoint/Basic.lean |
3 |
3 |
['github-actions', 'lua-vr'] |
nobody |
10-56406 10 days ago |
10-61978 10 days ago |
10-62636 10 days |
0 |
| 44906 |
yudukikun5120 author:yudukikun5120 |
feat(Archive): formalize negation in vector logic |
This adds a formalization of negation in Mizraji's two-valued vector logic to `Archive/VectorLogic.lean`, using mathlib's matrix and real-number APIs.
For two orthonormal real vectors `s` and `n` in an arbitrary finite-dimensional coordinate space, define `N = nsᵀ + snᵀ` and the logical identity `I₂ = ssᵀ + nnᵀ`. Prove that negation exchanges the truth vectors, exchanges the coefficients of their linear combinations, and satisfies `N * N = I₂`. Double negation fixes every linear combination of the truth vectors. The formalization also shows that negation annihilates vectors orthogonal to both, so it does not assert that `N²` is the ambient identity in higher dimension.
The definitions follow Eduardo Mizraji's *Vector logics: The matrix-vector representation of logical calculus* (1992), as reproduced in §4.2, equations (15)–(16), of his 2016 paper: https://doi.org/10.1387/theoria.13959.
---
This is a draft for feedback on whether this paper-specific formalization is suitable for `Archive`; its placement has not been agreed with maintainers.
Validation on macOS arm64 with Lean 4.35.0:
- `lake build Archive.VectorLogic`
- `lake exe lint-style Archive.VectorLogic`
- `lake exe mk_all --lib Archive --check`
- Separate local checks with a three-dimensional truth pair, including a counterexample to the ambient identity assertion.
AI disclosure: OpenAI Codex generated the implementation, proofs, and this PR description, and ran the local validation. The changes are marked as LLM-generated. This description does not claim completion of independent human review.
|
LLM-generated
new-contributor
t-data
|
102/0 |
Archive.lean,Archive/VectorLogic.lean |
2 |
3 |
['github-actions', 'yudukikun5120'] |
nobody |
10-50919 10 days ago |
25-308 25 days ago |
25-235 25 days |
0 |
| 45470 |
benpigchu author:benpigchu |
feat(Data): theorem about `List.splitBy` of `List.append` when `getLast` of the first list and `head` of the second list are related |
This PR add a theorem describing the behaviour of `List.splitBy` of `List.append` when the `ha` assumption in `List.splitBy_append` does not hold.
---
This theorem came from https://github.com/dwrensha/compfiles/blob/1745e6ced3e671bd74417548494b034eb2c87da8/Compfiles/Imo2022P1.lean#L148
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-data
new-contributor
|
59/0 |
Mathlib/Data/List/SplitBy.lean |
1 |
2 |
['github-actions'] |
nobody |
10-43292 10 days ago |
10-83944 10 days ago |
10-83871 10 days |
0 |
| 45497 |
chenle02 author:chenle02 |
feat(MeasureTheory): tightness in separable Hilbert spaces |
This PR adds a tightness criterion for measures on a Hilbert space, stated with a Hilbert basis. It also adds the "tight + unique cluster point ⇒ convergence" step that usually follows Prokhorov's theorem.
**(A) Tightness in a Hilbert space.** New file `Mathlib/MeasureTheory/Measure/TightHilbert.lean`. Here `b : HilbertBasis ι ℝ E` and `S : Set (Measure E)`.
* `HilbertBasis.isCompact_closedBall_inter_iInter`: if `ε m → 0`, then
`closedBall 0 r ∩ ⋂ m, {x | ‖x - ∑ i ∈ s m, ⟪b i, x⟫ • b i‖ ≤ ε m}` is compact.
* `HilbertBasis.isTightMeasureSet_of_tendsto_measure`: `S` is tight if both of these hold:
- the norms are bounded in probability uniformly over `S`:
`Tendsto (fun r ↦ ⨆ μ ∈ S, μ {x | r < ‖x‖}) atTop (𝓝 0)`;
- for every `ε > 0`,
`Tendsto (fun s : Finset ι ↦ ⨆ μ ∈ S, μ {x | ε < ‖x - ∑ i ∈ s, ⟪b i, x⟫ • b i‖}) atTop (𝓝 0)`.
This needs no measurability assumption.
* `HilbertBasis.isTightMeasureSet_of_lintegral`: the second-moment version. It assumes
`⨆ μ ∈ S, ∫⁻ x, ‖x‖ₑ ^ 2 ∂μ ≠ ∞` and that the tails `⨆ μ ∈ S, ∫⁻ x, ‖x - ∑ i ∈ s, ⟪b i, x⟫ • b i‖ₑ ^ 2 ∂μ` tend to `0`.
* `HilbertBasis.isTightMeasureSet_of_lintegral_inner_sq_le`: for `[Countable ι]`, assume `∫⁻ x, ‖⟪b i, x⟫‖ₑ ^ 2 ∂μ ≤ c i` for all `μ ∈ S` and all `i`, with `∑' i, c i ≠ ∞`. Then `S` is tight.
* Supporting lemmas:
- `HilbertBasis.hasSum_inner_sq` (Parseval);
- `HilbertBasis.hasSum_indicator_inner_sq` and `HilbertBasis.tsum_indicator_enorm_inner_sq` (the tail outside `s` is `‖x - ∑ i ∈ s, ⟪b i, x⟫ • b i‖ ^ 2`);
- `HilbertBasis.completeSpace`;
- `HilbertBasis.countable` and `Orthonormal.countable` (in a separable space).
**(B) Tight + unique cluster point ⇒ convergence.**
* In `Prokhorov.lean`, for `E` T2 with its Borel σ-algebra:
- `ProbabilityMeasure.tendsto_of_isTightMeasureSet_of_forall_mapClusterPt`: if `{μ i | i}` is tight and every cluster point of `μ` along `l` equals `ν`, then `Tendsto μ l (𝓝 ν)`;
- `ProbabilityMeasure.exists_tendsto_of_isTightMeasureSet`: if `l` is `NeBot`, the family is tight and any two cluster points are equal, then the family converges.
* In `LevyConvergence.lean`:
- `TendstoInDistribution.of_isTightMeasureSet_of_forall_mapClusterPt`;
- `ProbabilityMeasure.tendsto_of_isTightMeasureSet_of_tendsto_charFunDual` (separable Banach space): a tight family whose `charFunDual` converge pointwise to that of `ν₀` converges to `ν₀`. This is the infinite-dimensional form of Lévy's theorem, where tightness has to be assumed;
- `ProbabilityMeasure.tendsto_of_isTightMeasureSet_of_tendsto_charFun` (complete separable inner product space; the same statement with `charFun`);
- `TendstoInDistribution.of_isTightMeasureSet_of_tendsto_charFunDual`.
**Proof idea.**
* (A): Fix `ε`.
- Pick `r` with `μ {r < ‖x‖} ≤ ε / 2` for all `μ ∈ S`.
- For each `m`, pick `s m` with `μ {1/(m+1) < dist(x, span (b '' s m))} ≤ δ m`, where `∑ δ m < ε / 2`.
- The resulting set `K` is closed. It is totally bounded: its points are within `δ / 2` of a bounded subset of a finite-dimensional subspace. Since `E` is complete, `K` is compact, and the union bound gives `μ Kᶜ ≤ ε`.
- The moment versions follow by Markov's inequality, Parseval and `lintegral_tsum`.
* (B): By Prokhorov (`isCompact_closure_of_isTightMeasureSet`), the closure of the family is compact. `IsCompact.tendsto_nhds_of_unique_mapClusterPt` then gives convergence. For the characteristic-functional corollaries, a cluster point has the limiting `charFunDual`, because `P ↦ ∫ probCharDual L ∂P` is continuous. `Measure.ext_of_charFunDual` then identifies the cluster point.
**Relation to existing Mathlib and open PRs.**
* `TightNormed.lean` treats proper and finite-dimensional spaces: tightness from norms, or from inner products against an orthonormal basis. In infinite dimensions closed balls are not compact, so those criteria do not apply; (A) is the infinite-dimensional analogue. I put it in a new file to keep `TightNormed.lean` (and its importers) free of the `l2Space` import.
* `ProbabilityMeasure.tendsto_of_tight_of_separatesPoints` (`LevyConvergence.lean`) is close to (B) but uses a separating subalgebra and a Polish space. (B) is the purely topological step: it needs only T2 and a Borel σ-algebra, works along any filter, and takes the cluster-point identification as a hypothesis.
* #45375 (refactor of the proof of Prokhorov's theorem) only changes the interior of `Prokhorov.lean`, up to the end of the `Forward` section. It contains neither (A) nor (B). The new lemmas here are appended after the `Backward` section, plus one docstring bullet. `git merge-tree` against the PR head reports a clean merge.
* #37279 (multivariate CLT) changes `TendstoInDistribution` to use `Measure.toProbabilityMeasure` and edits one line of `LevyConvergence.lean`. It contains neither (A) nor (B). The additions here are at the end of `LevyConvergence.lean` and already state the cluster-point hypothesis with `toProbabilityMeasure`; `git merge-tree` reports a clean merge.
* A search of open PRs found nothing else with a Hilbert-space tightness criterion or a "tight + unique cluster point" lemma.
**References.**
* Yu. V. Prokhorov, *Convergence of random processes and limit theorems in probability theory*, Theory Probab. Appl. 1 (1956).
* K. R. Parthasarathy, *Probability measures on metric spaces*, Academic Press (1967), Chapter VI (Probability measures in a Hilbert space).
* V. I. Bogachev, *Measure theory, Vol. II*, Springer (2007): Definition 8.6.1 (uniform tightness, p. 202); Theorem 8.6.2 (Prokhorov's theorem, p. 202); Example 8.6.5(i) (tightness from a uniform moment bound, p. 205); Theorem 8.6.7 (a uniformly bounded, uniformly tight family has compact closure in the weak topology, p. 206). This is the `[bogachev2007]` key cited in `TightHilbert.lean`.
AI tools (Claude and Codex) were used to port and adapt this proof to Mathlib; the author reviewed it.
|
t-measure-probability
new-contributor
LLM-generated
|
375/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/LevyConvergence.lean,Mathlib/MeasureTheory/Measure/Prokhorov.lean,Mathlib/MeasureTheory/Measure/TightHilbert.lean |
4 |
2 |
['github-actions'] |
nobody |
10-8649 10 days ago |
10-56110 10 days ago |
10-56037 10 days |
0 |
| 45494 |
chenle02 author:chenle02 |
feat(MeasureTheory): the cylinder σ-algebra on the weak dual |
This PR adds `Mathlib/MeasureTheory/Constructions/WeakDual.lean`, which defines the cylinder σ-algebra on `WeakDual 𝕜 E` (the σ-algebra generated by the evaluations `T ↦ T x`) and proves that a finite measure for it is determined by its finite-dimensional marginals.
## Statements
The setting is the general one of `WeakDual`: `𝕜` a commutative topological semiring with `[MeasurableSpace 𝕜]`, and `E` a topological `𝕜`-module.
* `WeakDual.cylinderMeasurableSpace 𝕜 E : MeasurableSpace (WeakDual 𝕜 E)`, defined as `MeasurableSpace.comap (fun T x ↦ T x) MeasurableSpace.pi`. This mirrors the definition of the weak-* topology as an induced topology.
* `cylinderMeasurableSpace_eq_iSup`: it equals `⨆ x, MeasurableSpace.comap (fun T ↦ T x) ‹_›`.
* `measurable_cylinder_iff`: a map `f : α → WeakDual 𝕜 E` is measurable iff `fun a ↦ f a x` is measurable for every `x`. Also `measurable_eval_cylinder` and `measurable_coeFn_cylinder`.
* `cylinderMeasurableSpace_le_borel` (needs `[BorelSpace 𝕜]`): it is contained in `borel (WeakDual 𝕜 E)`. `cylinderMeasurableSpace_le` gives the same for any `OpensMeasurableSpace` structure.
* `ext_of_forall_finset_map_eq`: two measures `μ ν`, with `μ` finite, are equal if `μ.map (fun T (x : I) ↦ T x) = ν.map (fun T (x : I) ↦ T x)` for every `I : Finset E`.
* `map_eq_iff_forall_finset_map_eq`: two a.e.-measurable random elements `X : Ω → WeakDual 𝕜 E` and `Y : Ω' → WeakDual 𝕜 E` (under a finite `P` and `P'`) have the same law iff they have the same finite-dimensional laws. This is the analogue of `ProbabilityTheory.map_eq_iff_forall_finset_map_restrict_eq` for processes.
* `cylinderMeasurableSpace_eq_comap_of_denseRange` (needs `[FrechetUrysohnSpace E] [PseudoMetrizableSpace 𝕜] [BorelSpace 𝕜]`): for any `d : ι → E` with `DenseRange d`, the σ-algebra is `comap (fun T i ↦ T (d i)) pi`.
* `ext_of_forall_finset_map_eq_of_denseRange`: under the same hypotheses, it is enough to compare finite-dimensional marginals along `d`.
* `countablyGenerated_cylinderMeasurableSpace`: if in addition `E` is separable and `𝕜` is countably generated, then the cylinder σ-algebra is countably generated.
## Design: a `def`, not an instance
The measurable structure of a topological type in Mathlib is normally its Borel σ-algebra, and lemmas such as `Continuous.measurable` rely on `OpensMeasurableSpace`. On `WeakDual 𝕜 E` the cylinder σ-algebra is contained in the Borel σ-algebra, but the two are different in general. Equality needs extra hypotheses, for instance E separable Fréchet/nuclear, and that is not proved here. A global instance would therefore close off the Borel choice for every user of `WeakDual`. So the σ-algebra is a `def` marked `@[instance_reducible]`, in the same way as `borel` and `cylinderEvents`, and users enable it with `attribute [local instance] WeakDual.cylinderMeasurableSpace`.
This adds no global instance and creates no diamond. `WeakDual` is a non-reducible `def`, so the norm-Borel instance `ContinuousLinearMap.instMeasurableSpace` on `E →L[𝕜] F` (for normed `E`) does not apply to it. I checked that `MeasurableSpace (WeakDual ℝ ℝ)` still fails to synthesize after importing that file. A downstream project that wants an instance can set `instance : MeasurableSpace (WeakDual 𝕜 E) := WeakDual.cylinderMeasurableSpace 𝕜 E` on its own type synonym. Projects that do this all get the same σ-algebra.
## Proof idea
The coercion `F : T ↦ (x ↦ T x)` generates the σ-algebra by definition. Hence `μ.map F` and `ν.map F` are both projective limits of the same family of finite-dimensional laws, and `IsProjectiveLimit.unique` makes them equal. Every measurable set has the form `F ⁻¹' t`, so `μ = ν` follows. For the dense-range version, `T x` is the limit of `T (d (j n))` along a sequence (Fréchet–Urysohn, and each `T` is continuous), so `measurable_of_tendsto_metrizable` shows that the evaluations along `d` already generate the σ-algebra.
## Prior art
* Two projects outside Mathlib already define this σ-algebra, each as a global instance:
* mrdouglasny/gaussian-field defines `instMeasurableSpaceConfiguration` on `Configuration E := WeakDual ℝ E` as `comap (fun ω f ↦ ω f) pi`. It proves `configuration_measurable_of_eval_measurable` and, for Gaussian measures, `pushforward_eq_of_eval_eq`.
* mrdouglasny/bochner (`Minlos/NuclearSpace.lean`) defines an instance on `WeakDual ℝ E` as `⨆ f, (borel ℝ).comap (· f)`.
These two definitions are not defeq, so importing both projects fails to synthesize instances; gaussian-field's notes record this. A shared definition in Mathlib avoids that diamond. No code was taken from either project.
* Mathlib has `cylinderEvents` and `measurableCylinders` on product types, and `ProbabilityTheory.map_eq_iff_forall_finset_map_restrict_eq` for processes. Neither covers `WeakDual`, and Mathlib has no `MeasurableSpace` on `WeakDual`, `WeakBilin` or `WeakSpace`.
* Open PRs: a search for WeakDual measurable, cylinder, Minlos, nuclear, "random distribution" and "measure on dual" found no overlapping PR. #42278 (nuclear spaces) touches no measurable structure on duals, but it would be a natural input to a later Minlos theorem. #44909 (Kolmogorov extension) covers existence on product spaces, so it complements the uniqueness result here.
* Zulip could only be searched through the public web archive, which showed no prior thread.
## Follow-ups
* The Bochner–Minlos theorem on duals of nuclear spaces, stated for this σ-algebra.
* Borel = cylinder on `WeakDual 𝕜 E` under suitable separability hypotheses (e.g. separable Fréchet `E`). This would allow a `BorelSpace` statement for the cylinder σ-algebra.
* Tempered distributions: once the `SeparableSpace 𝓢(ℝ, ℝ)` instance (#45482) lands, `countablyGenerated_cylinderMeasurableSpace` and `ext_of_forall_finset_map_eq_of_denseRange` apply directly to `WeakDual ℝ 𝓢(ℝ, ℝ)`. `SchwartzMap` is already first-countable on master.
AI tools (Claude and Codex) were used to port and adapt this proof to Mathlib; the author reviewed it.
|
t-measure-probability
new-contributor
LLM-generated
|
245/0 |
Mathlib.lean,Mathlib/MeasureTheory/Constructions/WeakDual.lean |
2 |
2 |
['github-actions'] |
nobody |
10-8628 10 days ago |
10-58082 10 days ago |
10-58009 10 days |
0 |
| 45487 |
chenle02 author:chenle02 |
feat(Probability/Distributions/Poisson): higher moments of the Poisson distribution |
This PR adds a new file `Mathlib/Probability/Distributions/Poisson/Moments.lean` with the
moments of the Poisson distribution `poissonMeasure r`, `r : ℝ≥0`.
Main statements (namespace `ProbabilityTheory`):
* `hasSum_mul_descFactorial_poissonMeasure` and `integral_descFactorial_poissonMeasure`:
the factorial moments, `∫ n, (n.descFactorial k : ℝ) ∂Po(r) = r ^ k`.
* `integrable_exp_mul_map_cast_poissonMeasure`, `integrableExpSet_id_map_cast_poissonMeasure`:
`x ↦ exp (t * x)` is integrable for every `t`, so `integrableExpSet id Po(ℝ, r) = univ`.
* `memLp_id_map_cast_poissonMeasure (p : ℝ≥0) : MemLp id p Po(ℝ, r)` and
`integrable_pow_map_cast_poissonMeasure : Integrable (fun x ↦ x ^ k) Po(ℝ, r)`.
* `hasSum_mul_pow_poissonMeasure` and `integral_pow_map_cast_poissonMeasure`: the raw moments are
the Touchard polynomials, `∫ x, x ^ k ∂Po(ℝ, r) = ∑ j ∈ range (k + 1), S(k, j) * r ^ j` with
`S(k, j) = Nat.stirlingSecond k j`.
* `integral_id_map_cast_poissonMeasure : ∫ x, x ∂Po(ℝ, r) = r`
* `integral_pow_two_map_cast_poissonMeasure : ∫ x, x ^ 2 ∂Po(ℝ, r) = r ^ 2 + r`
* `integral_pow_three_map_cast_poissonMeasure : ∫ x, x ^ 3 ∂Po(ℝ, r) = r ^ 3 + 3 * r ^ 2 + r`
* `integral_pow_four_map_cast_poissonMeasure :
∫ x, x ^ 4 ∂Po(ℝ, r) = r ^ 4 + 6 * r ^ 3 + 7 * r ^ 2 + r`
* `variance_id_map_cast_poissonMeasure : Var[id; Po(ℝ, r)] = r`
* `centralMoment_three_map_cast_poissonMeasure : centralMoment id 3 Po(ℝ, r) = r`
* `centralMoment_four_map_cast_poissonMeasure : centralMoment id 4 Po(ℝ, r) = 3 * r ^ 2 + r`
Proof idea: the factorial moment sum is reindexed by `n ↦ n + k` (the first `k` terms vanish)
and becomes `r ^ k` times the total mass of `Po(r)`. Writing `n ^ k` in terms of falling factorials
with `Nat.pow_eq_sum_stirlingSecond_mul_descFactorial` gives the general raw moment; the moments
of order 1 to 4 are its special cases. The central moments follow by expanding `(x - r) ^ j` into
raw moments, adding the corresponding `HasSum` statements and `ring`. Integrability comes from finiteness
of the moment generating function via `memLp_of_mem_interior_integrableExpSet`.
---
Relation to #33688: that PR adds `HasSum`/`tsum` expectation lemmas for the old `poissonPMF` /
`poissonPMFReal` API in `Mathlib/Probability/Distributions/Poisson.lean`. Those declarations
and that file are no longer on master (the distribution is now `poissonMeasure` in
`Poisson/Basic.lean`), and #33688 is labelled `merge-conflict` / `awaiting-author`. This PR
states the mean at the level of `poissonMeasure` in the same style as `integral_id_binomial`
and `integral_id_gaussianReal`; it does not depend on #33688 and touches different files.
AI tools (Claude and Codex) were used to port and adapt this proof to Mathlib; the author reviewed it.
|
t-measure-probability
new-contributor
LLM-generated
|
187/0 |
Mathlib.lean,Mathlib/Probability/Distributions/Poisson/Moments.lean |
2 |
2 |
['github-actions'] |
nobody |
10-8620 10 days ago |
10-56038 10 days ago |
10-58695 10 days |
0 |
| 44613 |
keithadler author:keithadler |
feat(RepresentationTheory): irreducible representations are bounded by conjugacy classes |
For a finite group `G` and an algebraically closed field `k` in which `|G|` is invertible, `Representation.char_orthonormal` gives orthogonality of irreducible characters. This PR adds the consequence that is used in practice:
* `Representation.classFunction ρ : ConjClasses G → k`, the character as a class function;
* `Representation.linearIndependent_classFunction`: the class functions of a family of pairwise non-isomorphic irreducible representations are linearly independent;
* `Representation.card_le_card_conjClasses`: such a family has at most `Nat.card (ConjClasses G)` members.
This is the upper-bound half of "the number of irreducible representations equals the number of conjugacy classes" (the other half, that characters span the class functions, is not yet in Mathlib). The bound is exactly what is needed to show that an explicit list of `Nat.card (ConjClasses G)` pairwise non-isomorphic irreducibles is complete; e.g. with the companion PR on conjugacy classes of `Perm α`, that the Specht modules exhaust the irreducible representations of `S_n` (used downstream in https://github.com/keithadler/saxl-lean).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---
|
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
118/0 |
Mathlib.lean,Mathlib/RepresentationTheory/CharacterCount.lean |
2 |
3 |
['artie2000', 'github-actions'] |
nobody |
9-77198 9 days ago |
32-68337 32 days ago |
32-68264 32 days |
0 |
| 45420 |
PSchwahn author:PSchwahn |
feat(Algebra): define sets of finite products in a magma |
This PR adds a file `Algebra/Products.lean` containing declarations about products of tuples of elements in a magma, together with some basic API. We plan to expand on this later. Ultimately we plan to use these to prove results about [Leibniz algebras](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Leibniz.20algebras/with/598438796).
We note that `Fin.prod` (from `Batteries.Data.Fin.Basic`) provides a similar functionality as our declaration `OrderedLeftProduct`. However `Fin.prod` requires a multiplicative unit on the magma and it associates the products to the right, whereas `OrderedLeftProduct` is associated to the left and works for any magma. This will become important because we work with non-associative operations and in the future would like to align with the literature (e.g. on Leibniz algebras).
Co-authored by: Viviana del Barco, Gustavo Infanti, Artem Lopatin, Exequiel Rivas
---
|
t-algebra
new-contributor
label:t-algebra$ |
162/0 |
Mathlib.lean,Mathlib/Algebra/Products.lean |
2 |
2 |
['github-actions'] |
nobody |
9-67698 9 days ago |
11-70327 11 days ago |
11-70254 11 days |
0 |
| 45514 |
PSchwahn author:PSchwahn |
feat(Logic/Equiv/Fin/Basic): extension/deletion operations on permutations on `Fin n` |
Add basic operations on permutations on `Fin n`:
- `Fin.Perm.castSucc`: extend a permutation on `Fin n` to one on `Fin (n + 1)` in the obvious way.
- `Fin.Perm.removeNth`: removes a given position in a permutation on `Fin (n + 1)`, and collapses the domain and range to `Fin n`. Useful in conjunction with `Fin.succAbove`.
Along this, add some API theorems:
- `removeNth_of_castSucc_lt₁`, `removeNth_of_castSucc_lt₂`, `removeNth_of_le_castSucc₁` and `removeNth_of_le_castSucc₂` are analogous to [Fin.succAbove_of_castSucc_lt](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Fin/SuccPred.html#Fin.succAbove_of_castSucc_lt) resp. [Fin.succAbove_of_le_castSucc](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Fin/SuccPred.html#Fin.succAbove_of_le_castSucc).
- `succAbove_removeNth` shows how `Fin.Perm.removeNth` interacts with [Fin.succAbove](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Fin/SuccPred.html#Fin.succAbove).
- `castSucc_zero` and `castSucc_succ` are simp lemmas for `Fin.Perm.castSucc`.
--- |
new-contributor
t-logic
|
130/0 |
Mathlib/Logic/Equiv/Fin/Basic.lean |
1 |
3 |
['github-actions'] |
nobody |
9-61687 9 days ago |
9-61746 9 days ago |
9-61673 9 days |
0 |
| 43104 |
elazarg author:elazarg |
feat(InformationTheory/KullbackLeibler): finite Kullback-Leibler divergence |
Add finite-sum formulas for `InformationTheory.klDiv` on finite measurable spaces, including equal-mass and probability-measure specializations and formulas for sums of weighted Dirac measures. Provide both `ℝ≥0∞`-valued and `toReal` versions.
Supporting API includes a formula for the Radon–Nikodym derivative at points of nonzero reference-measure mass, a finite-sum formula for the integral of the log-likelihood ratio, and singleton-mass and absolute-continuity lemmas for sums of weighted Dirac measures.
---
Continuing #42584, another part of https://github.com/elazarg/kraft.
Following review, this uses the existing `klDiv` instead of introducing `klDivFin`. The `toReal` formulas connect it to real-valued sums in downstream code.
For measures of unequal mass, the formulas retain the correction term `ν.real univ - μ.real univ`.
The KL formulas are in `KullbackLeibler/Basic.lean`; the supporting lemmas are in the corresponding measure-theory modules.
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
new-contributor
LLM-generated
|
100/1 |
Mathlib/InformationTheory/KullbackLeibler/Basic.lean,Mathlib/MeasureTheory/Measure/Decomposition/RadonNikodym.lean,Mathlib/MeasureTheory/Measure/Dirac/Basic.lean,Mathlib/MeasureTheory/Measure/LogLikelihoodRatio.lean |
4 |
9 |
['EtienneC30', 'elazarg', 'github-actions', 'vlad902'] |
urkud assignee:urkud |
9-50455 9 days ago |
56-69844 56 days ago |
65-50452 65 days |
0 |
| 44955 |
user202729 author:user202729 |
chore: change all occurrences of equational lemma to equation lemma |
Change all occurrences of "equational lemma" to "equation lemma". Also add a missing apostrophe.
---
As far as I can tell, both are grammatical: the "equation" in "equation lemma" is a noun adjunct, while "equational" is an adjective. It feels like noun adjunct is "more advanced English" though.
Before this pull request: ("equation lemma" is more popular than "equational lemma")
```
[mathlib4]$ rg 'equational lemma'|wc -l
10
[mathlib4]$ rg 'equation lemma'|wc -l
31
[mathlib4]$ rg 'equational theorem'|wc -l
6
[mathlib4]$ rg 'equation theorem'|wc -l
2
```
and in Lean: (same, but only slightly)
```
[lean4]$ rg 'equational lemma'|wc -l
16
[lean4]$ rg 'equation lemma'|wc -l
20
[lean4]$ rg 'equational theorem'|wc -l
85
[lean4]$ rg 'equation theorem'|wc -l
38
```
Not sure if it's worth unifying the theorem case (probably yes. But in this case, apparently "equational theorem" is more popular than "equation theorem".), and/or unify lemma and theorem (probably not, mathlib distinguishes lemmas and theorems).
|
new-contributor |
10/10 |
Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/MappingCone.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Sites/CoversTop/Basic.lean,Mathlib/CategoryTheory/Sites/Hypercover/One.lean,Mathlib/Data/Nat/Fib/Zeckendorf.lean,Mathlib/Tactic/Eqns.lean,Mathlib/Tactic/Translate/ToAdditive.lean,docs/Conv/Guide.lean |
9 |
4 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
9-14920 9 days ago |
9-14969 9 days ago |
18-60460 18 days |
0 |
| 41426 |
gmcninch-prof author:gmcninch-prof |
feat: add symmetric multilinear maps |
Define `SymmetricMap R M N ι`, the type of symmetric `R`-multilinear maps
from `ι → M` to `N` (i.e. multilinear maps invariant under permutation of
their arguments).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
The code is adapted from Kenny Lau's work
[here](https://github.com/kckennylau/EllipticCurve/blob/master/EllipticCurve/ProjectiveSpace/TensorProduct/SymmetricMap.lean)
-- see [`SymmetricMap`](https://github.com/gmcninch-prof/mathlib4/blob/symmetric-power-lift/Mathlib/LinearAlgebra/TensorProduct/SymmetricMap.lean).
This PR previously also contained the universal property / `lift` for
`SymmetricPower` (relating linear maps out of `Sym[R]^n M` to symmetric
multilinear maps), but per reviewer feedback on Zulip that work has been
split into a separate PR that depends on this one.
Zulip discussion [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/SymmetricPower.20universal.20property/near/608532652)
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
397/0 |
Mathlib.lean,Mathlib/LinearAlgebra/TensorProduct/SymmetricMap.lean |
2 |
10 |
['github-actions', 'gmcninch-prof', 'jcommelin'] |
riccardobrasca assignee:riccardobrasca |
8-50462 8 days ago |
119-68307 119 days ago |
121-36536 121 days |
1 |
| 44822 |
William7743 author:William7743 |
feat(Geometry/Euclidean/Inversion): affine limits and filter identities |
Adds filter-level limit and continuity lemmas for `EuclideanGeometry.inversion` in
`Geometry/Euclidean/Inversion/Basic.lean`:
* `not_continuousAt_inversion_center_of_neBot` — nonzero-radius inversion is
discontinuous at a non-isolated center (`[NeBot (𝓝[≠] c)]`).
* `continuousAt_inversion_iff` — inversion is continuous at `x` iff `x ≠ c ∨ R = 0`.
* `tendsto_inversion_cobounded_nhds_center` /
`tendsto_inversion_cobounded_nhdsNE_center` — as the argument tends to infinity,
inversion tends to the center, resp. its punctured neighborhood for nonzero radius.
* `map_inversion_cobounded` / `map_inversion_nhdsNE_center` — for nonzero radius,
inversion pushes the cobounded filter exactly to `𝓝[≠] c` and back, via its
involutivity.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-euclidean-geometry
LLM-generated
new-contributor
|
53/0 |
Mathlib/Geometry/Euclidean/Inversion/Basic.lean |
1 |
6 |
['SnirBroshi', 'William7743', 'github-actions'] |
jsm28 assignee:jsm28 |
8-50458 8 days ago |
9-33101 9 days ago |
9-35060 9 days |
0 |
| 42630 |
will1491 author:will1491 |
feat(Analysis/Complex): define Wirtinger derivatives |
Define the Wirtinger derivatives `Complex.wirtingerDeriv` and `Complex.wirtingerDerivBar` from `fderiv ℝ`, and prove: the Cauchy-Riemann characterization of complex differentiability (pointwise and on open sets), agreement of `wirtingerDeriv` with `deriv` for holomorphic functions, additivity, Leibniz product rules, conjugation identities, both Wirtinger chain rules, and the Wirtinger decomposition of a real-linear map `ℂ →L[ℝ] ℂ`.
Extracted from https://github.com/will1491/RiemannDynamics, where it underlies the Beltrami-equation and Cauchy/Beurling-transform theory used in the proof of the measurable Riemann mapping theorem.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis
new-contributor
|
253/0 |
Mathlib.lean,Mathlib/Analysis/Complex/Wirtinger.lean |
2 |
6 |
['Maldooor', 'github-actions', 'mathlib-merge-conflicts', 'will1491'] |
felixpernegger assignee:felixpernegger |
8-29393 8 days ago |
59-64037 59 days ago |
90-39086 90 days |
0 |
| 44632 |
skwh54 author:skwh54 |
feat(RingTheory): prove semiprimary rings are closed under opposites |
This PR proves that a ring is semiprimary if and only if its opposite ring is semiprimary, resolving the three proof_wanted declarations in Wanted/RingTheory/SimpleModule/WedderburnArtin.lean.
It adds the required Jacobson radical symmetry and quotient-ring equivalence, and includes the Artinian/Noetherian consequence as an example in MathlibTest.
The Jacobson radical symmetry proof is adapted from [Haruhisa Enomoto's Lean 3 formalization](https://github.com/haruhisa-enomoto/lean-noncommutative-ring/blob/master/src/nc_jacobson_ideal.lean).
This PR was created with assistance from Codex. |
file-removed
t-ring-theory
new-contributor
LLM-generated
|
174/21 |
Mathlib.lean,Mathlib/Algebra/Ring/Units.lean,Mathlib/RingTheory/Jacobson/Opposite.lean,Mathlib/RingTheory/SimpleModule/WedderburnArtin.lean,MathlibTest/JacobsonOpposite.lean,Wanted.lean,Wanted/RingTheory/SimpleModule/WedderburnArtin.lean |
7 |
6 |
['github-actions', 'skwh54', 'tb65536'] |
nobody |
8-20745 8 days ago |
16-79381 16 days ago |
32-14446 32 days |
0 |
| 43280 |
idontgetoutmuch author:idontgetoutmuch |
feat(Topology/VectorBundle): coordinate lemmas for the bundle of bilinear forms |
Coordinate lemmas for bundles of continuous linear maps.
Bundle.Trivialization.continuousLinearMap_symm_apply, hom_trivializationAt_symm_apply: the inverse of the trivialization of the bundle fun x ↦ E₁ x →SL[σ] E₂ x sends a model map L to v ↦ e₂⁻¹ (L (e₁ v)).
inCoordinates_apply_eq₂_of_trivial: inCoordinates_apply_eq₂ when the target bundle is trivial.
trivializationAt_symm_apply_bilin: the same for bilinear maps into a fixed space, deduced from hom_trivializationAt_symm_apply.
Motivation: in #33714 (existence of a Riemannian metric), the local metric is defined as the inverse trivialization applied to the inner product on the model fibre, and trivializationAt_symm_apply_bilin rewrites it as ⟪e u, e v⟫, from which symmetry and positivity follow. This PR is the first piece split out of #33714, which will be rebased on it. |
t-topology
new-contributor
|
68/20 |
Mathlib/Topology/VectorBundle/Hom.lean,Mathlib/Topology/VectorBundle/Riemannian.lean |
2 |
29 |
['github-actions', 'grunweg', 'idontgetoutmuch'] |
grunweg assignee:grunweg |
8-16827 8 days ago |
8-16872 8 days ago |
65-39031 65 days |
0 |
| 43758 |
joelcanary author:joelcanary |
feat(NumberTheory/ArithmeticFunction): the Redheffer determinant equals the Mertens function |
This PR adds the zeta (divisibility) matrix, the Redheffer matrix and the Mertens function, and proves **Redheffer's theorem** (1977): the determinant of the `(n+1) × (n+1)` Redheffer matrix equals the Mertens function `M(n+1) = ∑_{k ≤ n+1} μ(k)`.
In `Mathlib/NumberTheory/ArithmeticFunction/Moebius.lean`:
- `ArithmeticFunction.sum_divisors_moebius (k) : ∑ d ∈ k.divisors, μ d = if k = 1 then 1 else 0`, the pointwise form of `moebius_mul_coe_zeta`.
New file `Mathlib/NumberTheory/ArithmeticFunction/Redheffer.lean`:
- `ArithmeticFunction.mertens : ArithmeticFunction ℤ`, the summatory function of `μ`, with `mertens_apply : mertens n = ∑ k ∈ Icc 1 n, μ k`, `mertens_one`, `mertens_add_one` and `mertens_eq_sum_fin` (the `0`-based form `∑ i : Fin n, μ (i + 1)` used on the matrix side);
- `Matrix.zetaMatrix R n : Matrix (Fin n) (Fin n) R` for any `R` with `0` and `1` (entry `1` iff `i + 1 ∣ j + 1`), with `zetaMatrix_apply` (simp), `zetaMatrix_isUpperTriangular` and, for `CommRing R`, `det_zetaMatrix : det = 1` and `det_zetaMatrix_updateCol : det (updateCol 0 u) = ∑ j, μ (j + 1) * u j` (the first row of the inverse is `(μ 1, …, μ n)`);
- `Matrix.redheffer R n` (the zeta matrix with its first column set to ones), with `redheffer_apply` (simp) and `redheffer_eq_updateCol`;
- `Matrix.det_redheffer (n) : (redheffer R (n + 1)).det = mertens (n + 1)` for any `CommRing R` (with `mertens` cast into `R`).
The remaining declarations (the row vector `(μ 1, …, μ n)`, the reindexing of a `Fin n`-sum over divisibility as a sum over `m.divisors`, and three intermediate steps) are `private`: they are proof scaffolding, not API.
Proof sketch: by linearity of `det` in the first column, `det (redheffer R (n+1)) = det (zetaMatrix R (n+1)) + det (zetaMatrix with first column (0,1,…,1))`. The first term is `1`; by Cramer's rule (`det_smul_inv_mulVec_eq_cramer`) the second is the first row of the inverse of the zeta matrix dotted with `(0,1,…,1)`, and that row is `(μ 1, …, μ (n+1))` because `μ * ζ = 1` (`moebius_mul_coe_zeta`, via `sum_divisors_moebius`). The remaining sum `μ 2 + ⋯ + μ (n+1)` is `mertens (n+1) - 1`.
The ring `R` is an explicit argument of `zetaMatrix` and `redheffer` since nothing else determines it. Neither the Mertens function nor the Redheffer matrix currently appear in Mathlib. The new file imports only `LinearAlgebra.Matrix.Block` and `NumberTheory.ArithmeticFunction.Moebius`. References added to `docs/references.bib`: `redheffer1977` (the theorem) and `odlyzko1985` (cited in the module docstring for the disproof of the Mertens conjecture).
AI use: the Lean code and this description were written with an AI agent (Claude) under my direction, from a proof in my own project; I reviewed every declaration, and the branch was checked locally with `lake build`, `lake exe lint-style` and `lake exe runLinter` before each push.
|
t-number-theory
new-contributor
LLM-generated
|
238/0 |
Mathlib.lean,Mathlib/NumberTheory/ArithmeticFunction/Moebius.lean,Mathlib/NumberTheory/ArithmeticFunction/Redheffer.lean,docs/references.bib |
4 |
17 |
['MichaelStollBayreuth', 'Parcly-Taxel', 'github-actions', 'joelcanary', 'mathlib-merge-conflicts', 'wwylele'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
8-6234 8 days ago |
8-6289 8 days ago |
57-16043 57 days |
2 |
| 45583 |
ouboub author:ouboub |
feat(Analysis/ODE): Grönwall's inequality with a variable coefficient |
Title:
feat(Analysis/ODE): Grönwall's inequality with a variable coefficient- #45583
Description:
I believe I have successfully implemented and tested the differential form of Grönwall's inequality with variable coefficients.
Details can be found in
https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/Gronwall.27s.20inequality.3A.20differential.20form.2C.20variable.20coeff/with/636639527
which includes two PDFs with a more detailed description.
- Here is a short description:
Add Grönwall's inequality in differential form with a variable coefficient `K` and a
variable inhomogeneous term `ε`, both continuous and of arbitrary sign, for a function
with right derivatives: if `f` is continuous on `[a, b]`, `f' t ≤ K t * f t + ε t` on
`[a, b)` and `f a ≤ δ`, then on `[a, b]`
`f t ≤ (δ + ∫ s in a..t, ε s / exp (∫ r in a..s, K r)) * exp (∫ s in a..t, K s)`.
This addresses (for differentiable `f`) the TODO in `Mathlib/Analysis/ODE/Gronwall.lean`
asking for a variable coefficient `K x` of any sign.
The main results found in the new file `Mathlib/Analysis/ODE/GronwallVariableCoeff.lean` are
* `gronwallBoundVar`: the bound above;
* `le_gronwallBoundVar_of_deriv_right_le`: the inequality;
* `gronwallBoundVar_const`: for constant `K` and `ε`, `gronwallBoundVar` agrees with
the existing `gronwallBound`;
* `le_mul_exp_integral_of_deriv_right_le_mul`: the homogeneous case `ε = 0`.
The proof uses the integrating factor `exp (∫ s in a..t, K s)` and the comparison lemma
`image_le_of_deriv_right_le_deriv_boundary`.
- Some open problems:
1. The two auxiliary lemmas `continuousOn_primitive_of_continuousOn` and
`hasDerivWithinAt_Ici_primitive` (one-sided FTC) are stated here; I did not find them
in Mathlib. Should they move to `Mathlib/MeasureTheory/Integral/IntervalIntegral/`,
or into the `intervalIntegral` namespace?
2. I did not dare to put my results into `Mathlib/Analysis/ODE/Gronwall.lean` itself,
3. There might be another TODO in the module docstring: the energy form of Bahouri–Chemin–Danchin, Lemma 3.3.
At some point, I asked Claude for advice on the main lemma, but I didn't include syntax I don't understand or haven't tested. The code might be clumsy.
regards
Uwe Brauer
|
t-analysis
new-contributor
|
270/0 |
Mathlib.lean,Mathlib/Analysis/ODE/GronwallVariableCoeff.lean |
2 |
4 |
['github-actions', 'ouboub'] |
nobody |
7-3219 7 days ago |
7-14413 7 days ago |
7-14340 7 days |
0 |
| 45282 |
3y3y3y-huaiji author:3y3y3y-huaiji |
feat(Topology/Order): add zero-crossing for odd maps on antipodal paths |
Add `exists_zero_of_antipodal_path`: a continuous odd map (`f (τ x) = -f x`) along a path connecting antipodal points (`γ b = τ (γ a)`) must have a zero.
This provides a direct path-lifting bridge over `intermediate_value_Icc` for spaces with domain involutions.
* `exists_zero_of_antipodal_path`: main existence theorem.
* `IsOddMap`: anti-invariance predicate `f (τ x) = -f x`.
---
> [!NOTE]
> **LLM Disclosure / AI Use**: This PR was prepared with the assistance of an LLM (`LLM-generated`). All proofs and statements have been formally verified by Lean 4 and checked with linters. |
t-topology
LLM-generated
new-contributor
|
71/0 |
Mathlib.lean,Mathlib/Topology/Order/Antipodal.lean |
2 |
5 |
['3y3y3y-huaiji', 'github-actions', 'leanprover-radar'] |
nobody |
6-73279 6 days ago |
6-73337 6 days ago |
14-37524 14 days |
0 |
| 42995 |
jacob-greenfield author:jacob-greenfield |
feat: add `List.Pairwise.orderedInsert'`, `List.sortedLE_orderedInsert_lt`, and `List.sortedGE_orderedInsert_gt` |
Introduce a generalized `Pairwise.orderedInsert'` lemma to prove that `Pairwise r l` is maintained after performing an `orderedInsert` using a relation stronger than `r` under certain conditions. Prove `sortedLE_orderedInsert_lt`, showing that `l.orderedInsert (· < ·) a` preserves `SortedLE` for decidable total preorders (analogously for `sortedGE_orderedInsert_gt`). This is useful for inserting an element into a sorted list *behind* any other elements which compare equal.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
I was hoping to avoid `omit`, but that would require moving all of `Pairwise.orderedInsert'`, `Pairwise.orderedInsert`, `pairwise_insertionSort`, `sublist_insertionSort'`, `pair_sublist_insertionSort'`, and `mergeSort_eq_insertionSort` after `end sort` on line 365 and reintroducing all the section variables. I also considered moving `Pairwise.orderedInsert'` somewhere _before_ `variable {α β : Type*} (r : α → α → Prop) (s : β → β → Prop)` on line 30, but that would place it before `orderedInsert` is defined. "Omit" seemed like the least invasive approach.
[](https://gitpod.io/from-referrer/)
|
t-data
new-contributor
|
27/11 |
Mathlib/Data/List/Sort.lean |
1 |
8 |
['github-actions', 'jacob-greenfield', 'theebayuser'] |
TwoFX assignee:TwoFX |
6-50452 6 days ago |
42-9781 42 days ago |
80-35425 80 days |
0 |
| 40479 |
thefundamentaltheor3m author:thefundamentaltheor3m |
feat(LinearAlgebra/AffineSpace/Simplex/Standard): Define the standard $n$-simplex as an `Affine.Simplex` |
In this PR, we define a basis-dependent construction of an affine simplex, using which we define the standard $n$-simplex in `Fin n → k` in terms of `Pi.basisFun`.
The main constructions are `Affine.Simplex.mkOfAffineBasis` and `Affine.Simplex.mkOfBasis`. The former constructs a simplex from any affine basis of an affine space and the latter constructs an affine simplex in a vector space viewed as an affine space. We then relate the construction to `stdSimplex`, defined in `Analysis.Convex.StdSimplex`.
I wrote the definitions myself and used LLM help to develop API.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
LLM-generated
new-contributor
t-algebra
label:t-algebra$ |
153/0 |
Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/Basis.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Standard.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
4 |
19 |
['github-actions', 'mathlib-splicebot', 'thefundamentaltheor3m', 'wwylele'] |
ocfnash assignee:ocfnash |
6-32552 6 days ago |
6-32614 6 days ago |
93-2332 93 days |
0 |
| 45608 |
vdelbarc author:vdelbarc |
feat(Algebra/Algebra): add ideals and quotients for non-unital non-associative algebras |
Introduce `NonUnitalNonAssocAlgebra.TwoSidedIdeal R A` as an `R`-submodule closed under multiplication by arbitrary elements of `A` on either side. This provides scalar-closed ideals for quotient constructions in non-unital, non-associative algebras.
Add basic lemmas, together with a forgetful map to the existing ring-theoretic `TwoSidedIdeal A`.
Construct the quotient `A ⧸ I` using the underlying submodule quotient. Equip it with non-unital, non-associative ring and module structures, and provide the quotient map as a non-unital algebra homomorphism, computation lemmas, and an induction principle.
Show that `SMulCommClass R A A` and `IsScalarTower R A A`, when available, descend to the quotient.
Co-Authors: Gustavo Infanti, Exequiel Rivas, Paul Schwahn
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
new-contributor
label:t-algebra$ |
262/0 |
Mathlib.lean,Mathlib/Algebra/Algebra/NonUnitalIdeal.lean |
2 |
2 |
['github-actions'] |
nobody |
6-14730 6 days ago |
6-14780 6 days ago |
6-16177 6 days |
0 |
| 45540 |
arsmagic author:arsmagic |
feat(RingTheory/ZMod): odd-unit square criterion in ZMod (2^n) |
For an odd integer a, a is a square in ZMod (2^n) iff a ≡ 1 (mod 2^min(n,3)): case forms isSquare_two_pow_iff_of_odd_three_le (n≥3, mod 8) and isSquare_two_pow_iff_of_odd_le_three (n≤3, mod 2^n), plus the uniform form.
Discussed on Zulip (#Is there code for X? > Squares in ZMod (2^n) for odd units).
(https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Squares.20in.20ZMod.20.282.5En.29.20for.20odd.20units) (Xavier Roblot confirmed #45509 will not cover squares; split into two case forms per Snir Broshi's suggestion.)
Adds the characterization of squares among odd (unit) residues modulo a power of two.
For an odd integer a:
ZMod.isSquare_two_pow_iff_of_odd_three_le — for 3 ≤ n, IsSquare (a : ZMod (2^n)) ↔ a ≡ 1 [ZMOD 8].
ZMod.isSquare_two_pow_iff_of_odd_le_three — for n ≤ 3, ↔ a ≡ 1 [ZMOD 2^n].
ZMod.isSquare_two_pow_iff_of_odd — uniform form via min n 3.
Sufficiency is derived from `ZMod.isComplement'_zpowers_unitFive_neg_one` (#45509), and the custom Hensel lifting has been removed.
AI-tools used during preparation.
|
LLM-generated
t-data
new-contributor
|
128/0 |
Mathlib.lean,Mathlib/RingTheory/ZMod/IsSquare.lean |
2 |
21 |
['SnirBroshi', 'arsmagic', 'felixpernegger', 'github-actions', 'wwylele'] |
nobody |
6-547 6 days ago |
8-75476 8 days ago |
8-75796 8 days |
0 |
| 45584 |
leomayer1 author:leomayer1 |
refactor(CategoryTheory): change `HasShift` monoid argument to `outParam` |
In current master, `HasShift` has type signature
```
CategoryTheory.HasShift.{v, u, u_2} (C : Type u) (A : Type u_2) [Category.{v, u} C] [AddMonoid A]
```
and the TriangulatedCategory library is full of expressions like `X⟦(1: ℤ)⟧`. The more natural expression `X⟦1⟧` raises an error when an instance of `HasShift C ℕ` cannot be inferred.
This PR changes the type signature of `HasShift` to
```
CategoryTheory.HasShift.{v, u, u_2} (C : Type u) (A : outParam (Type u_2)) [Category.{v, u} C] [AddMonoid A]
```
so that now from the expression `X⟦1⟧` Lean can find the instance `HasShift C ℤ` and infer that `1` should have type `ℤ`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
new-contributor
t-category-theory
|
236/230 |
Mathlib/CategoryTheory/DifferentialObject.lean,Mathlib/CategoryTheory/Localization/Triangulated.lean,Mathlib/CategoryTheory/ObjectProperty/Shift.lean,Mathlib/CategoryTheory/Shift/Basic.lean,Mathlib/CategoryTheory/Shift/CommShift.lean,Mathlib/CategoryTheory/Shift/Localization.lean,Mathlib/CategoryTheory/Shift/ShiftSequence.lean,Mathlib/CategoryTheory/Shift/ShiftedHomOpposite.lean,Mathlib/CategoryTheory/Shift/Twist.lean,Mathlib/CategoryTheory/Triangulated/Adjunction.lean,Mathlib/CategoryTheory/Triangulated/Basic.lean,Mathlib/CategoryTheory/Triangulated/Functor.lean,Mathlib/CategoryTheory/Triangulated/LocalizingSubcategory.lean,Mathlib/CategoryTheory/Triangulated/Opposite/Basic.lean,Mathlib/CategoryTheory/Triangulated/Opposite/Pretriangulated.lean,Mathlib/CategoryTheory/Triangulated/Opposite/Triangle.lean,Mathlib/CategoryTheory/Triangulated/Pretriangulated.lean,Mathlib/CategoryTheory/Triangulated/Rotate.lean,Mathlib/CategoryTheory/Triangulated/SpectralObject.lean,Mathlib/CategoryTheory/Triangulated/Subcategory.lean,Mathlib/CategoryTheory/Triangulated/TStructure/AbelianSubcategory.lean,Mathlib/CategoryTheory/Triangulated/TStructure/Basic.lean,Mathlib/CategoryTheory/Triangulated/TStructure/ETrunc.lean,Mathlib/CategoryTheory/Triangulated/TStructure/Induced.lean,Mathlib/CategoryTheory/Triangulated/TStructure/SpectralObject.lean,Mathlib/CategoryTheory/Triangulated/TStructure/TruncLEGT.lean,Mathlib/CategoryTheory/Triangulated/TStructure/TruncLTGE.lean,Mathlib/CategoryTheory/Triangulated/TriangleShift.lean,Mathlib/CategoryTheory/Triangulated/Triangulated.lean,Mathlib/CategoryTheory/Triangulated/Yoneda.lean |
30 |
8 |
['github-actions', 'joelriou', 'leanprover-radar', 'leomayer1', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
5-79247 5 days ago |
7-3453 7 days ago |
7-3380 7 days |
0 |
| 26462 |
PSchwahn author:PSchwahn |
feat(LinearAlgebra/Projection): add results about inverse of `Submodule.prodEquivOfIsCompl` |
Add two theorems `Submodule.prodEquivOfIsCompl_symm_apply` and `Submodule.prodEquivOfIsCompl_symm_add`, which are API for `Submodule.prodEquivOfIsCompl`.
We believe these theorems are useful; for example, we have used their statements in a [classification formalization project](https://github.com/LieLean/LowDimSolvClassification).
Co-authored by:
- [Viviana del Barco](https://github.com/vdelbarc)
- [Gustavo Infanti](https://github.com/GuQOliveira)
- [Exequiel Rivas](https://github.com/erivas)
---
I am not sure whether the `prodEquivOfIsCompl_symm_apply` theorem should be tagged with `@[simp]`; this might lead to confluence issues. Opinions are welcome!
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
To indicate co-authors, include lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
10/0 |
Mathlib/LinearAlgebra/Projection.lean |
1 |
8 |
['PSchwahn', 'github-actions', 'joelriou', 'kckennylau'] |
joelriou assignee:joelriou |
5-3330 5 days ago |
7-13806 7 days ago |
80-51952 80 days |
0 |
| 45513 |
PSchwahn author:PSchwahn |
feat(Data/Fin/Tuple): add Fin.cons_cons_swap |
`Fin.cons_cons_swap` shows that composing `cons x (cons y q)` with the transposition swapping 0 and 1 yields `cons y (cons x q)`.
--- |
t-data
new-contributor
|
13/0 |
Mathlib/Data/Fin/Tuple/Basic.lean |
1 |
4 |
['PSchwahn', 'github-actions', 'themathqueen'] |
nobody |
4-74255 4 days ago |
4-74366 4 days ago |
9-61780 9 days |
0 |
| 45668 |
sun123zxy author:sun123zxy |
feat(Algebra/Module/Projective): projectivity is transitive along scalar towers |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Split from #44636 |
t-algebra
new-contributor
label:t-algebra$ |
15/0 |
Mathlib/Algebra/Module/Projective.lean |
1 |
2 |
['github-actions'] |
nobody |
4-73518 4 days ago |
4-73589 4 days ago |
4-75795 4 days |
1 |
| 41111 |
erdkocak author:erdkocak |
feat(ModelTheory): add cardinal-generated substructure API |
This is the first PR in a sequence splitting #40561.
It adds a `CardinalLTGenerated` predicate for substructures, basic closure and map lemmas, and the finitely generated specialization.
Co-authored-by: Yağız Kaan Aydoğdu <y.kaan.aydogdu@gmail.com>
Co-authored-by: Yusuf Demir <yusufdemir12610@gmail.com>
Advised-by: Ayhan Günaydın <ayhan.gunaydin@bogazici.edu.tr>
Advised-by: Metin Ersin Arıcan <metin.arican@bogazici.edu.tr>
Please note that we utilized agentic AI tools (Claude Opus, ChatGPT Codex) during the development of this PR. Most of the proofs of the major theorems are direct translations from human-language source material (see the diff in `references.bib`) into Lean proofs using the mentioned AI tools. However, all design and formalization decisions were made by us. |
t-logic
new-contributor
LLM-generated
|
38/0 |
Mathlib/ModelTheory/FinitelyGenerated.lean,Mathlib/ModelTheory/Substructures.lean |
2 |
23 |
['NoahW314', 'erdkocak', 'felixpernegger', 'github-actions', 'iosephusferrum', 'mathlib-merge-conflicts', 'staroperator'] |
nobody |
4-70079 4 days ago |
5-29030 5 days ago |
108-33736 108 days |
5 |
| 42808 |
rshlyakh author:rshlyakh |
feat(Algebra/MonoidAlgebra/Grading): add decomposition lemma |
Adds a `simp` lemma about the decomposition of the `AddMonoidAlgebra R M` grading.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
8/0 |
Mathlib/Algebra/MonoidAlgebra/Grading.lean |
1 |
8 |
['github-actions', 'rshlyakh', 'themathqueen', 'wwylele'] |
nobody |
4-67536 4 days ago |
4-67536 4 days ago |
48-44266 48 days |
0 |
| 40050 |
ReemMelamed author:ReemMelamed |
feat(Algebra/Group/GreensRelations): add definitions for Green's relations |
This PR introduces the foundational definitions for Green's relations (L, R, H, D, and J) on semigroups.
This is the first in a series of PRs aimed at formalizing Green's relations for semigroups.
[Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Formalization.20of.20Green.27s.20Relations.20for.20semigroups/with/598557876)
---
- [x] depends on: #40843
|
t-algebra
new-contributor
label:t-algebra$ |
505/0 |
Mathlib.lean,Mathlib/Algebra/Group/GreensRelations/Basic.lean |
2 |
33 |
['ReemMelamed', 'YaelDillies', 'YanYablonovskiy', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues'] |
mattrobball assignee:mattrobball |
4-50462 4 days ago |
59-13769 59 days ago |
78-75024 78 days |
1 |
| 42226 |
espottesmith author:espottesmith |
feat(Combinatorics/Hypergraph): add restriction `x ≠ y` to hypergraph vertex and edge adjacency |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
This introduces a small change to the definitions of adjacency and edge-adjacency for undirected hypergraphs, based on a conversation with @Jun2M and @b-mehta in [#28613](https://github.com/leanprover-community/mathlib4/pull/28613).
Previously, any two vertices (edges) `x` and `y` could be adjacent, provided that there was an edge in the edge set containing both of them (there was a vertex contained in both of them). Now, we add the restriction that `x` is not equal to `y`.
This should allow `SimpleGraph` to be a clean specialization of `Hypergraph` and to ease the eventual implementation of walks.
This PR has no dependencies, but see also [42164](https://github.com/leanprover-community/mathlib4/pull/42162), @Jun2M's implementation of `HyperGraphLike` and formalization that `Hypergraph`s are `HyperGraphLike`, which includes this restriction on `Adj`.
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
4/4 |
Mathlib/Combinatorics/Hypergraph/Basic.lean |
1 |
3 |
['github-actions'] |
b-mehta assignee:b-mehta |
4-50460 4 days ago |
103-22771 103 days ago |
103-22698 103 days |
0 |
| 42820 |
tolgadgrmnc27 author:tolgadgrmnc27 |
feat(Data/Nat/Choose): elementary Chernoff bound for tail sums of binomial coefficients |
Adds an elementary, purely combinatorial Chernoff-type bound on tail sums of
binomial coefficients:
```lean
theorem Nat.sum_Ico_choose_le_div (n m : ℕ) {x : α} (hx : 1 ≤ x) :
∑ j ∈ Ico m (n + 1), (n.choose j : α) ≤ (1 + x) ^ n / x ^ m
```
together with the specialization at `x = 2`:
```lean
theorem Nat.sum_Ico_choose_le_three_pow_div (n m : ℕ) :
∑ j ∈ Ico m (n + 1), (n.choose j : α) ≤ 3 ^ n / 2 ^ m
```
The proof is the classical exponential moment trick done combinatorially: for
`m ≤ j` and `1 ≤ x` we have `x ^ m ≤ x ^ j`, so the tail sum is bounded by
`x ^ (-m) * ∑ j, n.choose j * x ^ j = x ^ (-m) * (1 + x) ^ n` by the binomial
theorem. A helper `Nat.sum_range_choose_mul_pow` states the binomial theorem in
the convenient form `∑ j ≤ n, n.choose j * x ^ j = (1 + x) ^ n`.
### Why this is not already in Mathlib
* `Nat.sum_range_choose` gives the *total* sum `∑ j ≤ n, n.choose j = 2 ^ n`.
* `Mathlib/Data/Nat/Choose/Bounds.lean` bounds a *single* coefficient
(`choose_le_pow`, `choose_le_two_pow`, `choose_le_pow_div`, …).
* `Mathlib/Probability/Moments/SubGaussian.lean` has Chernoff/Hoeffding, but
measure-theoretically: using it for a counting argument requires setting up a
probability space with independent Bernoulli variables and translating back
to cardinalities.
I could not find a statement bounding a *partial* sum of binomial
coefficients. The version here needs no probability space and applies directly
to counting arguments (its original use was bounding the number of `n < 2 ^ k`
whose first `k` binary digits contain at least `m` ones).
### Notes
* Stated over a general `[Semifield α] [LinearOrder α] [IsStrictOrderedRing α]`,
matching the typeclass style of `Mathlib/Data/Nat/Choose/Bounds.lean`.
* `Ico m (n + 1)` rather than a `filter (m ≤ ·)` form, as is idiomatic in
Mathlib; the two are equal by `Finset.filter_le_eq_Ico`-style reasoning.
* Names are of course open to bikeshedding.
---
- [x] depends on: nothing
|
t-data
new-contributor
|
84/0 |
Mathlib.lean,Mathlib/Data/Nat/Choose/Tail.lean |
2 |
3 |
['github-actions'] |
eric-wieser assignee:eric-wieser |
4-50459 4 days ago |
85-10921 85 days ago |
85-10848 85 days |
0 |
| 39347 |
Sfgangloff author:Sfgangloff |
feat(SymbolicDynamics): refactor of Pattern and shift-invariance of shape languages for subshifts |
## Summary
This PR refactors Pattern.mulShift in Mathlib/Dynamics/SymbolicDynamics/Basic.lean and uses the cleaner definition to prove shift-invariance of the language of a subshift on a finite shape.
## Changes
Pattern.mulShift now returns a Pattern instead of a configuration (more natural).
- Old type: Pattern.mulShift : Pattern A G → G → (G → A)
- New type: Pattern.mulShift : Pattern A G → G → Pattern A G
- The result carries its support (p.support.image (v * ·)) and the
default-outside-support proof, so callers don't have to re-derive them.
The [IsLeftCancelMul G] hypothesis is moved to the lemmas that actually use it.
- The definition Pattern.mulShift itself no longer needs left-cancellation (it only
chooses a preimage noncomputably).
- The hypothesis is now stated on mulShift_config_apply_mul_left_of_mem and
mulOccursInAt_eq_cylinder directly, instead of being a section-level variable.
Renames following the type change.
- mulShift_apply_mul_left_of_mem → mulShift_config_apply_mul_left_of_mem (because we
now write (p.mulShift v).config instead of p.mulShift v).
New @[simp] and @[ext] lemmas for Pattern.
- Pattern.ext: two patterns are equal iff their supports agree and their
configurations agree on the support.
- Pattern.mulShift_support: the support of p.mulShift v is p.support.image (v * ·).
- Pattern.fromConfig_support: the support of fromConfig x U is U.
- Pattern.fromConfig_config_of_mem: on its support, fromConfig x U agrees with x.
New lemma Pattern.fromConfig_mulShift.
For a left inverse g' * g = 1, shifting the pattern fromConfig x U by g equals
fromConfig (mulShift g' x) (U.image (g * ·)).
New theorem MulSubshift.languageOn_image_mulShift.
For a subshift Y and elements g, g' with g * g' = 1 and g' * g = 1:
(fun p => p.mulShift g) '' Y.languageOn U = Y.languageOn (U.image (g * ·))
i.e. the language on the translated shape is exactly the image of the language on U
under the pattern-shift map. This gives a bijection between Y.languageOn U and
Y.languageOn (U.image (g * ·)), with inverse p ↦ p.mulShift g'. Stated for
left-cancellative monoids with an invertible element.
Updated docstrings for Pattern.mulShift and the renamed lemma to reflect the
bundled-Pattern return type and clarify which results need [IsLeftCancelMul G]. |
t-dynamics
new-contributor
|
144/47 |
Mathlib/Dynamics/SymbolicDynamics/Basic.lean |
1 |
13 |
['Sfgangloff', 'github-actions', 'mathlib-merge-conflicts', 'sgouezel'] |
nobody |
4-49556 4 days ago |
26-26644 26 days ago |
86-62907 86 days |
0 |
| 45610 |
vdelbarc author:vdelbarc |
feat(Algebra/Algebra/Leibniz): introduce Leibniz rings and algebras |
Introduce the basic theory of right Leibniz rings and algebras.
Define `IsLeibniz` by the identity `(x * y) * z = (x * z) * y + x * (y * z)`, and establish its basic consequences.
Design choices were briefly discussed in https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Leibniz.20algebras/near/611073252
Define `IsSkew` for multiplication satisfying `x * x = 0`. Construct Lie ring and Lie algebra structures on Leibniz rings and algebras satisfying this condition. Conversely, show that every Lie ring satisfies the right Leibniz identity when its bracket is used as multiplication.
More on two-sided ideals and quotients of Leibniz algebras to come after PR#45608 is merged, from which this PR is independent now.
Co-Authors: Gustavo Infanti, Exequiel Rivas, Paul Schwahn
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
new-contributor
label:t-algebra$ |
218/0 |
Mathlib.lean,Mathlib/Algebra/Algebra/Leibniz/Basic.lean |
2 |
7 |
['Julian-Kuelshammer', 'github-actions'] |
nobody |
4-26646 4 days ago |
4-26696 4 days ago |
6-13698 6 days |
0 |
| 45598 |
JunkaiWang-TheoPhy author:JunkaiWang-TheoPhy |
feat(Analysis/Fourier): translate frequency under character modulation |
## Summary
This PR adds the frequency-shift identity dual to the existing translation-to-phase identity for Fourier integrals. Modulating a function by an additive character translates its Fourier transform in frequency.
## Changes
- Add the general `VectorFourier.fourierIntegral_smul_addChar` identity.
- Add the scalar `Fourier.fourierIntegral_smul_addChar` specialization.
- Add the real inner-product-space theorem `Real.fourier_smul_fourierChar`.
- Add the corresponding inverse-transform identity `Real.fourierInv_smul_fourierChar`.
The general theorem is proved by pointwise equality of the integration kernels. It does not require integrability, continuity, Haar invariance, finite dimensionality, or a nondegenerate pairing beyond the assumptions already present in the Fourier integral definition. With the convention `𝓕 f w = ∫ e (-L v w) • f v`, the forward shift is `w - w₀`; the inverse-transform identity consequently uses `w + w₀`.
The change is confined to `Mathlib/Analysis/Fourier/FourierTransform.lean`. It adds no definitions, imports, instances, simp attributes, or dependencies.
## Validation
- `lake build Mathlib.Analysis.Fourier.FourierTransform Mathlib.Analysis.SpecialFunctions.Gaussian.FourierTransform Mathlib.Analysis.Fourier.FourierTransformDeriv` — passed (`Build completed successfully (6312 jobs)`).
- `lake exe batteries/runLinter --no-build Mathlib.Analysis.Fourier.FourierTransform` — passed.
- Standalone local examples covering zero modulation, degenerate pairings, non-Haar measures, non-integrable total-function cases, the inverse sign, and a modulated Gaussian derivation — passed with the repository Lean options.
- `#print axioms` for the four new declarations reports only `propext`, `Classical.choice`, and `Quot.sound`.
- Full `MathlibTest` and hosted CI have not been run locally; hosted CI should provide the final repository-level check.
## AI disclosure
Codex (gpt-6.1-sol) assisted with candidate discovery, Lean implementation, and local verification. I have reviewed the declarations and proofs, and I am responsible for understanding and explaining the mathematical design and sign conventions.
|
t-analysis
new-contributor
LLM-generated
|
35/2 |
Mathlib/Analysis/Fourier/FourierTransform.lean |
1 |
3 |
['JunkaiWang-TheoPhy', 'github-actions'] |
nobody |
4-9026 4 days ago |
6-68156 6 days ago |
6-68083 6 days |
0 |
| 45670 |
user202729 author:user202729 |
chore(AlgebraicGeometry/EllipticCurve/Projective): remove `erw` in `Formula.lean` |
Reducing tech debt.
The main reason why `erw` was needed in this file instead of `rw` is the following.
- Background: Each point is represented by a function `P : Fin 3 → R`, and there's local notation `x` being `(0 : Fin 3)`, similar for `y` and `z`. So `P x` is the first coordinate of `P`. For a curve `W'` and a point `P`, `W'.dblXYZ P` is another point, its double i.e. `2 • P`.
- There are functions to compute various operations on elliptic curves, for example, `W.dblY P` computes the `Y`-coordinate of `2 • P`. Of course, this can be equivalently written as `W.dblXYZ P y`.
- The two forms `W.dblY P` and `W.dblXYZ P y` are not definitionally equal at the default transparency level. Depends on which lemma we want to apply, we need to convert the goal to use one form or the other.
---
Personally, I think it's a better idea to normalize on the `W.dblXYZ P y` form, and keep the `W.dblY P` form as strictly an implementation detail if needed. In this case, the `XYZ` suffix wouldn't be needed either, and the main definitions would be:
```
* `WeierstrassCurve.Projective.neg`: The negation `-P` of a point `P`.
* `WeierstrassCurve.Projective.dbl`: The double `2 • P` of a point `P`.
* `WeierstrassCurve.Projective.negDbl`: The negated double `-(2 • P)` of a point `P`.
```
etc. Thoughts? Note that `W.dbl P y` is only 1 character longer than `W.dblY P`.
Most lemmas that we want to apply are already stated in term of the point (except that many use `W.negY P` instead of `W.neg P y`, though currently `W.neg` doesn't exist).
Also, there are (very) long `rw` chains. ([#mathlib4 > Is long `rw` chain bad?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Is.20long.20.60rw.60.20chain.20bad.3F/with/637217759)) Ideas?
Another idea: have a `array_index` tactic that evaluates `![a, b, c, d] 2` to `c` when the index is a known constant, for example. Currently there is `simp only [fin3_def_ext]` which obviously only works on length-3 arrays.
|
new-contributor
t-algebraic-geometry
tech debt
|
59/24 |
Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Formula.lean |
1 |
2 |
['github-actions'] |
nobody |
4-765 4 days ago |
4-77367 4 days ago |
4-77294 4 days |
0 |
| 45566 |
PeaBrane author:PeaBrane |
feat(Analysis/Convex): limits and sums of convex functions |
Add pointwise-limit and summation lemmas for convex and concave functions.
* `convexOn_of_frequently_convexOn_of_tendsto`, `concaveOn_of_frequently_concaveOn_of_tendsto`:
if `F i` is frequently convex (concave) on `s` along a filter and `F i x → f x` for every
`x ∈ s`, then `f` is convex (concave) on `s`.
* `convexOn_finsetSum`, `concaveOn_finsetSum`: a finite sum of convex (concave) functions is convex
(concave).
* `convexOn_tsum`, `concaveOn_tsum`: a pointwise summable series of convex (concave) functions is
convex (concave).
These complement `isClosed_setOfPred_convexOn` from #37352. Closedness of the set of convex
functions covers limits in the product topology, which needs convergence at every point of the
domain. The new limit lemmas need convergence only on `s`, and only frequently along the filter,
following `monotoneOn_of_frequently_monotoneOn_of_tendsto`. Finite sums and series of convex
functions were not stated before; only `ConvexOn.add` existed. I needed the series version to show
that a periodic kernel defined by an image sum is convex.
`FunctionTopology.lean` now imports `Mathlib.Topology.Algebra.InfiniteSum.Defs` for `tsum`.
AI disclosure: the statements, the proofs, and a draft of this description were written with
Claude Code. I checked them against existing Mathlib conventions and built the changed files
locally.
---
|
t-analysis
LLM-generated
new-contributor
|
69/1 |
Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Convex/FunctionTopology.lean |
2 |
6 |
['PeaBrane', 'github-actions', 'wwylele'] |
nobody |
3-81411 3 days ago |
4-69785 4 days ago |
7-65037 7 days |
0 |
| 45716 |
jesusvilela author:jesusvilela |
feat(SimpleGraph): add signed graph Laplacian matrices |
### **Summary**
Adds signed adjacency and Laplacian matrices for finite simple graphs, as a reusable Mathlib API.
It uses SimpleGraph.EdgeLabeling Bool to carry edge signs, false to possitive and true to negative edges.
Consider a signed Laplacian as Lσ = D − Aσ, D an ordinary degree matrix, Aσ a signed adjacency matrix.
### **Main changes:**
Add Mathlib/Combinatorics/SimpleGraph/SignedLapMatrix.lean with two definitions and 19 theorems:
1. Signed adjacency is symmetric, while the signed Laplacian is both symmetric and Hermitian.
2. Ordinary Laplacian is recovered for all positive signs, and the signless Laplacian for all negative signs.
3. Squared signed edge identities produce the quadratic energy identity.
4. Arbitrary Boolean edge signings are positive semidefinite, for arbitrary Boolean edge signings.
5. By edgewise compatibility, the kernel is characterized as: equal vertex values across the positive edges and opposite values across negative edges.
There is a double counting of undirected edges in a factor of 1/2, wich is accounted for in the quadratic energy formula.
It has been implemented using existing Mathlib graph and matrix interfaces, restricted to real-valued and Boolean signs.
### **Files changed:**
Mathlib/Combinatorics/SimpleGraph/SignedLapMatrix.lean — new module.
Mathlib.lean — import of the new module.
### **Verification:**
Commit a84939a using Lean v4.36.0-rc2
Verification run [[41879159967](https://github.com/jesusvilela/mathlib4/actions/runs/41879159967)] passed:
- Successful compilation and Mathlib linting.
- lake exe mk all --check
- Transitive axiom audit of 19 public theorems.
- Proof term checks (Lean default, Lean paranoid, lean4lean, nanoda, con-leche and con-ron)
Only axioms propext, Classical.choice and Quot.sound reported.
### **AI Assistance:**
Implemented with substantial usage for Lean, proof construction, migration and verification infraestructure. Models include GPT-family 5.6 to 6.1 Sol and Claude Opus 4.5 to 5.
LLM-generated label is therefore warranted.
Review considerations:
Constructive feedback welcome on the API, naming, generality and pertinent module placement. Wether definitions and associated theorems must be split into smaller contributions or should remain together.
|
t-combinatorics
new-contributor
|
361/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/SignedLapMatrix.lean |
2 |
2 |
['github-actions'] |
nobody |
3-73778 3 days ago |
3-73829 3 days ago |
3-73756 3 days |
0 |
| 44836 |
cmhsu2012 author:cmhsu2012 |
feat(NumberTheory/Legendre/Basic): the legendre symbol for p-adics |
Co-authored-by: María Inés de Frutos-Fernández 88536493+mariainesdff@users.noreply.github.com
and Nirvana Coppola 58878663+NirvanaC93@users.noreply.github.com
In the ongoing formalization of the Hasse-Minkowski Theorem on quadratic forms, we need the Legendre symbol for the p-adics. The following declarations were added to the basic.lean file:
```def compMonoidHom``` an auxiliary definition: the composition between multiplicative characters and a local homomorphism
```def legendreSym``` the definition of the Legendre symbol for Z_p: composition of the reduction from Z_p to Z mod p and the usual Legendre symbol
```def hom``` The Legendre symbol is a homomorphism
The remaining lemmas are the API:
```lemma intCast```
```theorem eq_pow```
```theorem eq_on_or_neg_one```
```eq_neg_one_iff_not_one```
```theorem eq_zero_iff```
```theorem sq_one```
```theorem sq_one'```
```theorem eq_one_iff```
```theorem eq_neg_one_iff```
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-number-theory
new-contributor
|
124/2 |
Mathlib.lean,Mathlib/Algebra/Ring/Int/Units.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/NumberTheory/Padics/LegendreSymbol.lean |
4 |
45 |
['JX-Mo', 'NirvanaC93', 'cmhsu2012', 'github-actions', 'loefflerd', 'mariainesdff', 'tb65536'] |
loefflerd assignee:loefflerd |
3-71179 3 days ago |
3-71224 3 days ago |
12-40643 12 days |
0 |
| 42093 |
DrDMT-VR author:DrDMT-VR |
feat(Topology/Algebra/Ring): topological closure of a two-sided ideal |
Defines `TwoSidedIdeal.closure`, the topological closure of a two-sided ideal in a
topological ring, together with its basic API. This mirrors the existing one-sided
`Ideal.closure` (`Mathlib/Topology/Algebra/Ring/Ideal.lean`), but is stated in the
generality of non-unital non-associative topological rings (`IsTopologicalRing` over
`NonUnitalNonAssocRing`), where one-sided ideals are unavailable.
New declarations (namespace `TwoSidedIdeal`): `closure`, `coe_closure`,
`mem_closure_iff`, `le_closure`, `closure_mono`, `closure_minimal`, `isClosed_closure`,
`closure_eq_of_isClosed`, `closure_closure`, `closure_top`, and `closure_ne_top` (in a
unital ring whose units are open, e.g. a Banach algebra via `Units.isOpen`, the closure of
a proper two-sided ideal is proper).
Mathlib has no topological-closure API for `TwoSidedIdeal`. Closed two-sided ideals are
the basic objects of C*-algebra ideal theory, and `closure_ne_top` is the standard first
step toward "maximal two-sided ideals are closed".
------
- should the definition be called `topologicalClosure` instead? (The current name matches `Ideal.closure`.)
- Claude was utilized throughout the project. It helped with coding, syntax and running repetitive testing.
|
t-topology
new-contributor
LLM-generated
|
127/0 |
Mathlib.lean,Mathlib/Topology/Algebra/Ring/TwoSidedIdeal.lean |
2 |
16 |
['DrDMT-VR', 'FractalDevTeam', 'github-actions', 'grunweg', 'j-loreaux'] |
j-loreaux assignee:j-loreaux |
3-59086 3 days ago |
3-59162 3 days ago |
50-53553 50 days |
0 |
| 42095 |
DrDMT-VR author:DrDMT-VR |
feat(Analysis/CStarAlgebra): the non-unital CFC maps into closed two-sided ideals |
## What
For a non-unital C*-algebra `A`, a closed two-sided ideal `I`, an element `a ∈ I`, and any
`f : ℝ → ℝ`, this proves `cfcₙ f a ∈ I`. No hypotheses on `f` are needed: whenever `cfcₙ`
would take its junk value (`f` not continuous on the quasispectrum, `f 0 ≠ 0`, or `a` not
selfadjoint) that value is `0 ∈ I`.
New declarations (namespace `TwoSidedIdeal`):
- `smul_mem_of_isClosed` — a closed two-sided ideal in a non-unital C*-algebra is closed
under the scalar action (proved via the canonical approximate unit `CStarAlgebra.approximateUnit`).
- `cfcₙHom_mem_of_isClosed` — for selfadjoint `a ∈ I`, every value of the underlying
homomorphism `cfcₙHom` lies in `I` (Weierstrass induction on `C(σₙ ℝ a, ℝ)₀`).
- `cfcₙ_mem_of_isClosed` — the main result.
## Why
Closed two-sided ideals of a C*-algebra are hereditary under the continuous functional
calculus; this is a basic tool for spectral-projection and ideal-membership arguments, and
complements the existing "cfc commutes with *-homomorphisms" results. `smul_mem_of_isClosed`
is of independent interest (a closed two-sided ideal is a submodule).
## Notes
This is my second contribution (see #42093). I checked the referenced cfc / approximate-unit
API against current master at the source level; CI is the first full build and I will fix
anything it flags. Suggested location `Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Ideal.lean`;
happy to relocate if preferred.
Parts of this contribution were developed with AI assistance (Claude). All statements are machine-checked by the Lean kernel; `#print axioms` on the new declarations reports only `[propext, Classical.choice, Quot.sound]`.
|
t-analysis
new-contributor
LLM-generated
|
92/0 |
Mathlib.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Ideal.lean |
2 |
5 |
['DrDMT-VR', 'github-actions', 'grunweg'] |
nobody |
3-59018 3 days ago |
3-59075 3 days ago |
14-24036 14 days |
1 |
| 42363 |
ghseeli author:ghseeli |
feat(Combinatorics): card_le_card_biUnion_of_card_le_card |
This PR contributes a lemma to combinatorics, `card_le_card_biUnion_of_card_le_card`. this is a set theoretic corollary of a double counting result proved for bipartite graphs (`Finset.sum_card_bipartiteAbove_eq_sum_card_bipartiteBelow`). This result was needed for our Latin Square PR https://github.com/leanprover-community/mathlib4/pull/36698. This result was proved in less general terms in that PR, but is independent of Latin Square considerations and so we have generalized and moved it into this file.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
38/0 |
Mathlib/Combinatorics/Enumerative/DoubleCounting.lean |
1 |
16 |
['cjrl', 'github-actions', 'vlad902', 'wwylele'] |
b-mehta assignee:b-mehta |
3-50458 3 days ago |
56-60622 56 days ago |
99-30637 99 days |
1 |
| 42971 |
ashebson author:ashebson |
fix(ProfiniteGrp): simplify explicit limit projections |
The naturality proof for `ProfiniteCompletion.lift` previously needed a brittle pointwise `change`. The underlying problem was that simplification crossed several semireducible diagram/forgetful-functor boundaries at once, producing terms that are definitionally equal but no longer type-correct at implicit transparency.
This PR:
- makes the two finite-quotient diagram composites reducible abbreviations;
- states `quotientMap` using the diagram object types and maps it through the existing `FiniteGrp ⥤ ProfiniteGrp` forgetful functor;
- adds a pointwise rewrite lemma for an explicit limit projection followed by a mapped finite-group morphism (with its additive counterpart); and
- rewrites `ProfiniteCompletion.lift` naturality through that API while keeping the limit point bundled, removing the problematic pointwise `change`.
--------
## AI disclosure
AI (OpenAI Codex) was used extensively for this PR. It was used to:
- investigate the original TODO and reproduce why `dsimp` failed;
- explore and discard several possible fixes;
- identify the semireducible diagram/forgetful-functor boundaries involved;
- design and implement the final `ProfiniteGrp` API simplification and `ProfiniteCompletion.lift` proof changes;
- run the relevant Lean builds and direct compilation checks; and
- draft the commit message and PR description.
The final changes were reviewed through the resulting diff and verified locally.
|
t-topology
new-contributor
LLM-generated
|
29/12 |
Mathlib/Topology/Algebra/Category/ProfiniteGrp/Basic.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Completion.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Limits.lean |
3 |
9 |
['ashebson', 'github-actions', 'grunweg', 'mathlib-bors', 'mathlib-merge-conflicts'] |
j-loreaux assignee:j-loreaux |
3-50457 3 days ago |
50-26924 50 days ago |
63-66082 63 days |
0 |
| 43087 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add Hecke/Basic.lean |
This file defines `HeckeModule` of a representation `ρ` as `Hom_G(k[G ⧸ H], ρ)` and identifies it with the space of `H`-invariants.
We deliberately choose the intertwining model over the invariant model as the main API, for it has good defeq property when we define the mixed level Hecke action of Hecke operators which is just the composition of intertwining maps. This has significant technical advantage because it avoids proving associativity and compatibility combinarically which is nasty using the invariant model.
It is an `abbrev` for maximally reusing API from `ofMulAction` and `IntertwiningMap`. We remark that the abstract boundary will be cut out at `HeckeAlgera` which will be a `def` instead and we will provide an instance `Module HeckeAlgebra HeckeModule`. Before that, we need to develop representation theoretic lemmas about `HeckeModule` and `HeckeBimodule` first so `HeckeModule` should stay transparent. |
new-contributor
t-algebra
label:t-algebra$ |
84/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Hecke/Basic.lean |
2 |
8 |
['JX-Mo', 'Whysoserioushah', 'github-actions'] |
riccardobrasca assignee:riccardobrasca |
3-50452 3 days ago |
18-39026 18 days ago |
77-731 77 days |
1 |
| 45723 |
alexei-kopylov author:alexei-kopylov |
chore(LinearAlgebra/ExteriorPower/BilinForm): make bilinForm_ιMulti_ιMulti public |
`bilinForm_ιMulti_ιMulti` is currently invisible outside its own module, although `LinearMap.BilinForm.exteriorPower` and
`bijective_exteriorPower` are public, so no importer of this file can use the formula. The lemma is already marked `@[simp]`, but that marking has no effect for importers while the lemma itself is not public. I believe that this is an oversight, not intentional.
Making the lemma public exposes the evaluation formula, with no other change.
This restores the visibility the lemma had in #42889: it was made `public` in 93bf495 at a reviewer's request (mark `public` the declarations intended for export), then lost `public` in a829f41, a doc-comment cleanup whose diff bundles the drop with the deletion of the lemma's own docstring — no discussion in #42889 asks for the removal.
cc @kirill-kondrashov (author of #42889) |
t-algebra
new-contributor
label:t-algebra$ |
1/1 |
Mathlib/LinearAlgebra/ExteriorPower/BilinForm.lean |
1 |
4 |
['github-actions', 'kirill-kondrashov'] |
nobody |
3-24915 3 days ago |
3-51560 3 days ago |
3-51487 3 days |
0 |
| 44786 |
ZRTMRH author:ZRTMRH |
feat(Lean/Quote): restore `Quote` instances for `Int` and `Rat` |
Add `Quote Int` and `Quote Rat` instances, analogous to core's `Quote Nat`.
They turn a number into numeral syntax without a type ascription (e.g. `quote (-7 / 2 : ℚ)` is `-7 / 2`), so the result elaborates at the expected type. These could later be upstreamed to Lean core.
These instances were added in #942 as part of `polyrith`, fixed in #24470, and removed together with the implementation of `polyrith` in #29547. This PR restores them unchanged (apart from naming) in their own file. Tests provided.
Motivated from the project of `maximize` / `minimize` tactics (PR to follow) which print a computed rational bound in a "Try this" suggestion such as `have : 4 * x + y ≤ 7 / 2 := by linarith`. Discussed on Zulip: [maximize / minimize tactic for linear optimization](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/maximize.20.2F.20minimize.20tactic.20for.20linear.20optimization).
The test file is refined with AI assistance (Claude) and has been reviewed by the author.
Co-authored-by: Mario Carneiro <di.gama@gmail.com>
Co-authored-by: Aaron Liu <aaronliu2008@outlook.com>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-meta
LLM-generated
new-contributor
maintainer-merge
|
164/0 |
Mathlib.lean,Mathlib/Lean/Quote.lean,MathlibTest/Quote.lean |
3 |
6 |
['ZRTMRH', 'github-actions', 'joneugster'] |
joneugster assignee:joneugster |
3-8833 3 days ago |
28-46775 28 days ago |
28-46702 28 days |
0 |
| 45727 |
pleich author:pleich |
feat(Order/WellFoundedSet): PWO iff well-founded with finite antichains |
Add `Set.partiallyWellOrderedOn_iff_wellFoundedOn_and_finite_antichains`: For preorder `r`, a set is partially well-ordered iff the strict part of `r` is well-founded on it and all antichains are finite. This removes the open TODO in the module docstring.
Additionally, prove theorem `IsAntichain.finite_of_partiallyWellOrderedOn` by reusing the analog theorem (`IsAntichain.finite_of_wellQuasiOrdered `) for well-quasi orders and remove the corresponding TODO.
This commit has been assisted by Claude Code with Opus 5.5.
---
This is my first PR to the mathlib project, and I am welcome for any feedback. If these TODOs are already assigned to others, feel free to close the PR.
Claude has been used to create this PR, in particular to help me understand the relevant definitions, make the proofs more concise, adhering to the mathlib style and to review my proposed changes afterwards.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-order
new-contributor
|
19/6 |
Mathlib/Order/WellFoundedSet.lean |
1 |
3 |
['SnirBroshi', 'github-actions'] |
nobody |
3-3493 3 days ago |
3-3544 3 days ago |
3-9819 3 days |
0 |
| 45069 |
korbonits author:korbonits |
feat(Geometry/Manifold): the Riemann curvature of a covariant derivative |
Define the Riemann curvature `R(X, Y) Z = ∇_X ∇_Y Z - ∇_Y ∇_X Z - ∇_[X,Y] Z` of a covariant derivative on the tangent bundle, as an operator on vector fields, in a new file `CovariantDerivative/Curvature.lean` (alongside `Torsion.lean`).
Main results:
- `CovariantDerivative.curvature_swap`: antisymmetry in the first two arguments.
- `curvature_smul_left/snd`, `curvature_add_left/snd`: function-linearity in the first two arguments, with explicit differentiability hypotheses.
- `tensorialAt_curvature_fst/snd`: for a `C¹` covariant derivative and a `C²` field `Z`, the curvature is `TensorialAt` in each of its first two arguments.
- `CovariantDerivative.mdifferentiableAt_apply`: for a `C¹` covariant derivative, `∇_X σ` is differentiable at `x` when `σ` is `C²` and `X` is differentiable at `x`.
Most of the code I'm planning to upstream into mathlib4 is already proved in https://github.com/korbonits/ricci-flow-blueprint
---
AI disclosure
- level: Level 5 / Level 6 in [the link shared](https://www.visidata.org/blog/2026/ai/#self-assessed-ai-level-for-contributions) I feel confident about the math but I am still learning Lean itself
- code: most of the Lean in this PR was drafted by Claude Code (statements, proofs, docstrings).
- direction and review: I chose the contribution, made the decisions, reviewed every line, and wrote all GitHub/Zulip comments.
|
new-contributor
t-differential-geometry
LLM-generated
|
167/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Curvature.lean |
2 |
3 |
['github-actions', 'korbonits'] |
ocfnash assignee:ocfnash |
2-50451 2 days ago |
20-35301 20 days ago |
20-35477 20 days |
0 |
| 43886 |
gabriel-turinici author:gabriel-turinici |
feat(Analysis/Asymptotics): add Filter.Tendsto.weighted_cesaro_smul |
Adds `Filter.Tendsto.weighted_cesaro_smul`, a weighted (Toeplitz-type) generalization of `Filter.Tendsto.cesaro_smul`: if `S k → L` and `w k ≥ 0` has divergent partial sums, the weighted running average of `S` w.r.t. `w` also tends to `L`. Recovers `cesaro_smul` as the `w ≡ 1` case. Also adds `weighted_cesaro`, the real-valued convenience wrapper mirroring `cesaro`.
This is a small building block toward a planned follow-up PR formalizing Kronecker's lemma, at its turn needed in some stochastic analysis setting.
---
**AI disclosure**: this proof was developed using formatting assistance, library search and code corrections from Claude Code (Claude Sonnet 5) and a personal LLM automation. Alternative, shorter, proofs can be obtained with `IsLittleO`-style but that style seems too recent for me now.
[](https://gitpod.io/from-referrer/) |
t-analysis
new-contributor
LLM-generated
|
81/0 |
Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean |
1 |
2 |
['github-actions'] |
nobody |
2-49557 2 days ago |
53-60145 53 days ago |
53-60072 53 days |
0 |
| 45619 |
Zetetic-Dhruv author:Zetetic-Dhruv |
chore: rename `inter_eq_left` and `inter_eq_right` to `inter_eq_left_iff` and `inter_eq_right_iff` |
- `Set.inter_eq_left`, `Set.inter_eq_right`, `Finset.inter_eq_left` and `Finset.inter_eq_right` are renamed to `inter_eq_left_iff` and `inter_eq_right_iff`, with deprecated aliases.
|
new-contributor |
141/126 |
Archive/Imo/Imo2021Q1.lean,Archive/Wiedijk100Theorems/BallotProblem.lean,Mathlib/Algebra/Algebra/Spectrum/Quasispectrum.lean,Mathlib/Algebra/Order/Antidiag/FinsuppEquiv.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicTopology/SimplicialSet/Degenerate.lean,Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/Normed/Group/AddCircle.lean,Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean,Mathlib/Analysis/SpecialFunctions/Gamma/BohrMollerup.lean,Mathlib/Combinatorics/Additive/AP/Three/Defs.lean,Mathlib/Combinatorics/Additive/ETransform.lean,Mathlib/Combinatorics/Additive/VerySmallDoubling.lean,Mathlib/Combinatorics/Graph/Connected/EdgeCut.lean,Mathlib/Combinatorics/Matroid/Closure.lean,Mathlib/Combinatorics/Matroid/Minor/Delete.lean,Mathlib/Combinatorics/SetFamily/FourFunctions.lean,Mathlib/Combinatorics/SetFamily/Shatter.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Data/Finset/Lattice/Basic.lean,Mathlib/Data/Finset/Sups.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Set/Subset.lean,Mathlib/Dynamics/TopologicalEntropy/Semiconj.lean,Mathlib/Geometry/Euclidean/Altitude.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/LocalInvariantProperties.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/LinearAlgebra/LinearIndependent/Defs.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Order.lean,Mathlib/MeasureTheory/Function/LocallyIntegrable.lean,Mathlib/MeasureTheory/Function/UnifTight.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Periodic.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Map.lean,Mathlib/MeasureTheory/Integral/PeakFunction.lean,Mathlib/MeasureTheory/Integral/RieszMarkovKakutani/Real.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Measure/Haar/Unique.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/MeasureTheory/VectorMeasure/Operations.lean,Mathlib/MeasureTheory/VectorMeasure/Order.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Defs.lean,Mathlib/NumberTheory/LSeries/AbstractFuncEq.lean,Mathlib/NumberTheory/SumPrimeReciprocals.lean,Mathlib/Order/Interval/Set/Fin.lean,Mathlib/Order/Interval/Set/Image.lean,Mathlib/Order/Interval/Set/OrdConnected.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Probability/Distributions/SetBernoulli.lean,Mathlib/Probability/Process/HittingTime.lean,Mathlib/RingTheory/Lasker.lean,Mathlib/Topology/Algebra/InfiniteSum/Defs.lean,Mathlib/Topology/Baire/LocallyCompactRegular.lean,Mathlib/Topology/CWComplex/Classical/Basic.lean,Mathlib/Topology/CWComplex/Classical/Finite.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Compactness/SigmaCompact.lean,Mathlib/Topology/Connected/Basic.lean,Mathlib/Topology/Connected/Clopen.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Connected/TotallyDisconnected.lean,Mathlib/Topology/Constructible.lean,Mathlib/Topology/Covering/Basic.lean,Mathlib/Topology/FiberBundle/Trivialization.lean,Mathlib/Topology/Irreducible.lean,Mathlib/Topology/LocallyClosed.lean,Mathlib/Topology/MetricSpace/Pseudo/Pi.lean,Mathlib/Topology/MetricSpace/Thickening.lean,Mathlib/Topology/NoetherianSpace.lean,Mathlib/Topology/OpenPartialHomeomorph/IsImage.lean,Mathlib/Topology/QuasiSeparated.lean,Mathlib/Topology/Separation/SeparatedNhds.lean,Mathlib/Topology/Sets/VietorisTopology.lean,Mathlib/Topology/UniformSpace/CompactConvergence.lean |
80 |
6 |
['Zetetic-Dhruv', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
2-42851 2 days ago |
2-58359 2 days ago |
4-31362 4 days |
0 |
| 44598 |
kirill-kondrashov author:kirill-kondrashov |
feat(LinearAlgebra/ExteriorPower): add API for HodgeStar |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
This is a follow-up of the https://github.com/leanprover-community/mathlib4/pull/43140 which stated a few TODO points.
This PR implements the first TODO point
* Add API to obviate the need to supply the volume element in the presence of `Module.Oriented`.
GPT 6 Luna Max was used for initial brainstorming (as well as Mathlib API investigation on the existing relevant constructions), mainly overwritten and refactored manually. |
t-algebra
LLM-generated
new-contributor
label:t-algebra$ |
98/10 |
Mathlib.lean,Mathlib/LinearAlgebra/ExteriorPower/HodgeStar.lean,Mathlib/LinearAlgebra/ExteriorPower/Orientation.lean,Mathlib/LinearAlgebra/Orientation.lean |
4 |
21 |
['github-actions', 'kirill-kondrashov', 'ocfnash', 'themathqueen'] |
nobody |
2-23982 2 days ago |
2-23990 2 days ago |
30-67274 30 days |
0 |
| 45766 |
user202729 author:user202729 |
chore: change many dependent if-then-else to independent |
Search for `if _` in the codebase and drop the `_ :` when applicable.
This doesn't affect proofs, but for definitions, dependent and independent if-then-else are not definitionally equal.
---
Thoughts?
I learnt that the difference between `if _ : … then … else …` and `if … then … else …` is the former is a dependent if-then-else (`dite`) and the latter is `ite`. Not all `_ : ` can be dropped this way because sometimes the hypothesis is not named explicitly, yet still used by typeclass synthesis… so we cannot apply a blanket linter rule, but perhaps “lint if independent version works” is a reasonable (but not necessarily cheap) option. “Lint if the variable is unused” seem pretty reasonable (we already have an unused-variable linter).
The one that use the most unnecessary dependent if-then-else is `Mathlib/CategoryTheory/Limits/Shapes/SequentialProduct.lean`. In this case, a lot of `dite_eq_ite` simp lemmas was removed as well, cleaning up the proof.
In case of `Mathlib/Algebra/EuclideanDomain/Defs.lean`, the `hr` hypothesis turns out to be used (in the `else` branch), so the appropriate use case appears to be to rename it to `hr`. (Linter proposal: if an underscore-prefixed variable is used, suggest to make it no longer underscore-prefixed.)
|
new-contributor |
32/35 |
Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/CategoryTheory/Limits/Shapes/SequentialProduct.lean,Mathlib/GroupTheory/Perm/Sign.lean |
4 |
2 |
['github-actions'] |
nobody |
2-1131 2 days ago |
2-3047 2 days ago |
2-2974 2 days |
0 |
| 45770 |
timbrigham author:timbrigham |
fix(Tactic/DeriveFintype): make deriving Fintype work again for enum types |
I have a project that makes use of the enum type, and recently upgraded from version 4.30 to 4.35.
That broke my project's compilation, due to the behavior ticket #44243 ([link](https://github.com/leanprover-community/mathlib4/issues/44243), reported by @marcopist). The fix was suggested by Paul Reichert in the Zulip thread [Fintype Derive broken](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Fintype.20Derive.20broken/with/613313718).
The fix handles how constructors are handled with no arguments The most notable of which is making sure that the argument type is properly cast
Fixes #44243
---
For the record, I used AI, strictly Claude, in the creation of this pull request, both finding the existing bug report as well as the remediation process.
I'm learning lean in the process, and my larger drive is finding ways of making AI generated code safer and more robust.
|
tech debt
t-meta
new-contributor
|
3/5 |
Mathlib/Tactic/DeriveFintype.lean,MathlibTest/DeriveFintype.lean |
2 |
2 |
['github-actions'] |
nobody |
1-82482 1 day ago |
1-82584 1 day ago |
1-82511 1 day |
0 |
| 45617 |
Zetetic-Dhruv author:Zetetic-Dhruv |
feat(Data/Set/Card): `ncard` of `image2`, and sets of a given `ncard` |
- `Set.ncard_image2_le : (image2 f s t).ncard ≤ s.ncard * t.ncard` for finite `s` and `t`.
- `Set.Infinite.exists_superset_ncard_eq` now also says that the superset is finite; new `Set.exists_subset_ncard_eq`, and `Set.exists_superset_ncard_eq` and `Set.exists_ncard_eq` in an infinite type.
- `Set.ncard_eq_zero_iff : s.ncard = 0 ↔ s = ∅ ∨ s.Infinite`, as a `simp` lemma.
- `Data/Set/Card.lean` gets `set_option linter.style.longFile 1700`.
|
t-data
new-contributor
maintainer-merge
|
27/2 |
Mathlib/Data/Set/Card.lean |
1 |
10 |
['YaelDillies', 'Zetetic-Dhruv', 'github-actions'] |
nobody |
1-78743 1 day ago |
2-58238 2 days ago |
4-52605 4 days |
0 |
| 45761 |
VascoSch92 author:VascoSch92 |
fix(Data/ENat/Defs): derive `Repr` for `ℕ∞` |
Small fix.
`ENat` is a `def` for `WithTop ℕ`, so `WithTop.instRepr` is not found and `repr (5 : ℕ∞)` fails to elaborate.
Fixes #45740.
---
AI use: OpenHands (Claude Opus 5.5) located the cause, and propsed the solution. I verified by hand that the proposed solution was correct.
|
t-data
new-contributor
LLM-generated
maintainer-merge
|
1/1 |
Mathlib/Data/ENat/Defs.lean |
1 |
4 |
['github-actions', 'grunweg'] |
nobody |
1-78575 1 day ago |
2-11390 2 days ago |
2-11317 2 days |
0 |
| 45771 |
darkhipo author:darkhipo |
feat(MeasureTheory): bochner product integral over Measure.infinitePi |
# PR — Bochner product integral over `Measure.infinitePi`
The proof is a single new file, `Mathlib/MeasureTheory/Integral/InfinitePiProduct.lean`, carrying
the Mathlib module header (`module` / `public import` / `public section`), the Apache 2.0 licence
line with `Copyright (c) 2026 darkhipo`, and `namespace MeasureTheory`.
---
## Proposed title
`feat(MeasureTheory): Bochner product integral over Measure.infinitePi`
## Proposed file placement
`Mathlib/MeasureTheory/Integral/InfinitePiProduct.lean`
Imports (verified sufficient — the module compiles with exactly these, under
`set_option autoImplicit false`, in the modern `module`/`public import` form):
```lean
public import Mathlib.Analysis.SpecialFunctions.Log.Summable
public import Mathlib.MeasureTheory.Integral.DominatedConvergence
public import Mathlib.MeasureTheory.Integral.Lebesgue.Map
public import Mathlib.MeasureTheory.Integral.Pi
public import Mathlib.Probability.ProductMeasure
```
Rationale for placement: it is the infinite-index companion of
`MeasureTheory.integral_fintype_prod_eq_prod` (`Mathlib/MeasureTheory/Integral/Pi.lean`), and it
integrates over `Measure.infinitePi` (`Mathlib/Probability/ProductMeasure.lean`).
## Main results
```lean
theorem MeasureTheory.integral_finset_prod_infinitePi
(hf : ∀ i, AEStronglyMeasurable (f i) (μ i)) (s : Finset ι) :
∫ x, ∏ i ∈ s, f i (x i) ∂(Measure.infinitePi μ) = ∏ i ∈ s, ∫ x, f i x ∂(μ i)
theorem MeasureTheory.ae_summable_norm_sub_one_infinitePi
(hf : ∀ i, AEStronglyMeasurable (f i) (μ i))
(hsum : ∑' i, ∫⁻ x, (‖f i x - 1‖₊ : ℝ≥0∞) ∂(μ i) ≠ ∞) :
∀ᵐ x ∂(Measure.infinitePi μ), Summable fun i => ‖f i (x i) - 1‖
-- the general form: a norm bound family instead of a flat 1
theorem MeasureTheory.hasProd_integral_tprod_infinitePi_of_norm_le
(hf : ∀ i, AEStronglyMeasurable (f i) (μ i))
(hC0 : ∀ i, 0 ≤ C i)
(hb : ∀ i, ∀ᵐ x ∂(μ i), ‖f i x‖ ≤ C i)
(hC : Summable fun i => ‖C i - 1‖)
(hsum : ∑' i, ∫⁻ x, (‖f i x - 1‖₊ : ℝ≥0∞) ∂(μ i) ≠ ∞) :
HasProd (fun i => ∫ x, f i x ∂(μ i)) (∫ x, ∏' i, f i (x i) ∂(Measure.infinitePi μ))
-- the ≤ 1 case, kept as a corollary (this is the form the campaign consumes)
theorem MeasureTheory.hasProd_integral_tprod_infinitePi
(hf) (hb : ∀ i, ∀ᵐ x ∂(μ i), ‖f i x‖ ≤ 1) (hsum) : HasProd …
theorem MeasureTheory.integral_tprod_infinitePi (hf) (hb) (hsum) :
∫ x, ∏' i, f i (x i) ∂(Measure.infinitePi μ) = ∏' i, ∫ x, f i x ∂(μ i)
```
(`ι` countable, `[∀ i, MeasurableSpace (X i)]`, `μ : (i : ι) → Measure (X i)` with
`[∀ i, IsProbabilityMeasure (μ i)]`, `f : (i : ι) → X i → ℂ`, `C : ι → ℝ`.)
## Why it is not already there
* finite index, product-measure form: `MeasureTheory.integral_fintype_prod_eq_prod`;
* finite index, independence form: `ProbabilityTheory.iIndepFun.integral_prod_eq_prod_integral`
(and the more general `iIndepFun.integral_fun_prod_comp` for functions of independent random
variables), in `Mathlib/Probability/Independence/Integration.lean` — this is the closest existing
relative of the present file, and it already contains the reduction of independence to the pi
product measure (`iIndepFun.map_fun_eq_pi_map`) that the infinite-index statement takes as its
starting point;
* nonnegative integrands, infinite index: derivable from `lintegral_tsum` (monotone convergence);
* Bochner/`ℂ` integrands, infinite index: **absent** — and monotone convergence does not apply,
because the products are not nonnegative. The proof needs an honest convergence argument.
## Relation to `iIndepFun.integral_prod_eq_prod_integral`
That theorem and its neighbors state the **finite-index** identity `μ[∏ i, X i] = ∏ i, μ[X i]` for
a family of **mutually independent random variables** `X : (i : ι) → Ω → 𝓧 i` on a common
probability space (`[Fintype ι]`, `iIndepFun X μ`, measurability only — at finite index no
convergence content is even statable). The present file is the **countable-index, infinite-product,
bare-product-measure** analogue, and the delta is exactly what finiteness hid:
* **index**: `[Fintype ι]` there vs `[Countable ι]` with genuinely infinite `∏'` here — the
conclusion is a `HasProd` convergence statement, so a.e. summability of `∑ i, ‖f i (x i) - 1‖`
(Tonelli) and `multipliable_one_add_of_summable` enter, neither of which has a finite-index
counterpart;
* **framing**: there, hypotheses on a common probability space plus `iIndepFun`; here, no
random-variable layer at all — the statement is directly about `Measure.infinitePi μ`, the
product-measure form their `iIndepFun.map_fun_eq_pi_map` reduces independence to;
* **bounds**: there, none needed; here, the `‖f i x‖ ≤ C i` bound family with
`∑ i, ‖C i - 1‖` summable is what makes dominated convergence along `Finset ι` work ("Why the
bound family is `∑ ‖C i - 1‖`" below).
Conversely, neither statement subsumes the other: the independence file cannot state an infinite
product, and this file does not require (or produce) the `iIndepFun` common-space packaging.
## Proof sketch (for the review)
1. **Finite subsets.** `(Measure.infinitePi μ).map (Finset.restrict s) = Measure.pi (μ|_s)`
(`Measure.infinitePi_map_restrict`), then `integral_fintype_prod_eq_prod` and
`measurePreserving_eval_infinitePi` for the single coordinates.
2. **A.e. summability of the deviations.** Tonelli: `∫⁻ x, ∑' i, ‖f i (x i) - 1‖` equals
`∑' i, ∫⁻ x, ‖f i x - 1‖` (`lintegral_tsum` + `lintegral_map'`), finite by hypothesis, hence
`∑ i, ‖f i (x i) - 1‖` is summable for a.e. `x`.
3. **A.e. multipliability.** `multipliable_one_add_of_summable` applied to `f i (x i) - 1`.
4. **Domination.** `‖∏ i ∈ s, f i (x i)‖ = ∏ i ∈ s, ‖f i (x i)‖ ≤ ∏ i ∈ s, C i`, and
`C i ≤ exp (C i - 1)` for `C i ≥ 0` gives
`∏ i ∈ s, C i ≤ exp (∑ i ∈ s, (C i - 1)) ≤ exp (∑' i, ‖C i - 1‖)` — a constant independent of `s`.
5. **Limit.** `tendsto_integral_filter_of_dominated_convergence` along `atTop : Filter (Finset ι)`,
dominated by that constant, pointwise convergence from step 3; the finite-subset integrals are
rewritten by step 1. `HasProd.tprod_eq` turns the convergence form into the equation form.
## Why the bound family is `∑ ‖C i - 1‖` and not `∑ C i`
A product of bounds is not additive in them: a factor `C i < 1` scales the bound *down*, a factor
`> 1` scales it *up*, so summability of `C` alone does not bound `∏ i ∈ s, C i` uniformly. The
log-scale hypothesis `Summable fun i => ‖C i - 1‖` is exactly the statement that the family `C` is
multipliable, made explicit; `exp (∑' i, ‖C i - 1‖)` is then the dominator. The flat case is
`C ≡ 1` (where `∑ ‖C i - 1‖ = 0` and the dominator is `1`), which is the corollary above.
## Review-risk notes (honest)
* The `𝕜`-generalization (any `RCLike 𝕜` / `NormedField` instead of `ℂ`) is **open**; `ℂ` is what
the use case needs. The proofs use only the normed-field structure plus completeness of `ℂ`, so
the generalization is plausible but not attempted here.
* The summability hypothesis `∑' i, ∫⁻ x, ‖f i x - 1‖₊ ≠ ∞` is chosen because
`multipliable_one_add_of_summable` consumes the real-valued `Summable fun i => ‖f i (x i) - 1‖`
and `ENNReal.tsum_coe_ne_top_iff_summable` converts between them. A reviewer may prefer a
hypothesis phrased through `Summable` on `ℝ≥0`-norms directly; the two are equivalent.
* The bound family is not required to be *sharp* or to converge to `1`; `C i` may be any
nonnegative family with `∑ ‖C i - 1‖` summable, including `C i < 1` for every `i`.
* No `sorry`, no `native_decide`, no new axioms: every declaration reports
`[propext, Classical.choice, Quot.sound]`, including the generalized theorem (receipt:
`receipt/axcheck_infinitepiproduct.txt`, regenerated by `receipt/axcheck_infinitepiproduct.lean`).
## AI usage disclosure (Mathlib requires one)
This contribution was produced by an AI agent (a large language model driven by the `opencode`
harness) inside a human-directed formalization campaign; the human, darkhipo, reviewed and is
submitting it. Every statement was checked by the Lean kernel; the proofs are machine-generated
and human-readable but not human-written. The docstrings and this description were written by the
agent.
## Checklist (Mathlib's)
- [x] depends on no new axioms / `sorry`-free (kernel-verified, `#print axioms` receipt attached
for all five declarations)
- [x] builds with the narrowest import set that works (five `public import`s, each exercised)
- [x] `set_option autoImplicit false` clean
- [x] no linter warnings in this file (rebuilt clean: `lake build Pg182D2` reports no warning or
error for `Pg182D2/InfinitePiProduct.lean`)
- [x] docstrings on every declaration, module docstring present, `## Main results` section
- [x] naming matches Mathlib conventions (`integral_*_prod_*`, `ae_*`, `hasProd_*`, `_of_norm_le`)
- [x] Mathlib module form (`module`, `public import`, `public section`)
- [x] licence header complete: `Copyright (c) 2026 darkhipo. All rights reserved.`,
Apache 2.0, `Authors: darkhipo`
- [ ] reviewed by a human Lean expert — **not done**. Nothing in this file has been read by a
human with Lean expertise; the human submitting it has reviewed the *statement* and the
campaign's use of it, not the proof scripts.
- [ ] argued as `Mathlib`-worthy by a maintainer — that is the reviewers' call, not ours.
## Verification against upstream `master` at PR time
Copied into `Mathlib/MeasureTheory/Integral/InfinitePiProduct.lean` on branch `infinite-pi-product`,
based on `master` @ `71441a1480` (`chore: update Mathlib dependencies 2026-11-07`),
toolchain `leanprover/lean4:v4.36.0-rc2`.
* `lake exe cache get` + `lake build Mathlib.MeasureTheory.Integral.InfinitePiProduct`
→ `Build completed successfully`, **no warnings** (the build runs Mathlib's standard linter set,
including `linter.style.longLine`, the header linter and `unusedSectionVars`).
* `lake exe lint-style Mathlib.MeasureTheory.Integral.InfinitePiProduct` → exit code 0.
* `lake exe mk_all` → the generated `Mathlib.lean` import line is byte-identical to the committed one.
* `#print axioms` on the upstream copy: all five declarations depend only on
`[propext, Classical.choice, Quot.sound]`, i.e. no `sorry` and no new axioms.
Adaptations required by upstream `master` (the proof itself is unchanged from the version that
compiled against the pin used during the campaign):
1. removed `set_option autoImplicit false` — `autoImplicit` is `false` globally in `lakefile.lean`;
2. `AEMeasurable.nnnorm` → `AEMeasurable.nnNorm` (two sites) and `coe_nnnorm` → `coe_nnNorm`,
which are deprecated at `master`;
3. two lines reflowed to satisfy the 100-character `linter.style.longLine`;
4. added the import to `Mathlib.lean`.
|
t-measure-probability
new-contributor
|
224/0 |
Mathlib.lean,Mathlib/MeasureTheory/Integral/InfinitePiProduct.lean |
2 |
3 |
['github-actions'] |
nobody |
1-75480 1 day ago |
1-79436 1 day ago |
1-79363 1 day |
0 |
| 45498 |
ShirinShafaie author:ShirinShafaie |
feat(LinearAlgebra): identify Sp₂(R) with SL₂(R) |
This PR resolves the TODO in `Mathlib.LinearAlgebra.SymplecticGroup`:
> For `n = 1` the symplectic group coincides with the special linear group.
I formalised this as an explicit group isomorphism between the two-dimensional symplectic group and `SL₂(R)`, over any commutative ring.
The proof is developed in five steps:
1. **Determinant formula.** I first established the two-by-two determinant formula for matrices indexed by `ι ⊕ ι`, where `[Unique ι]`. This gives the reusable public theorem `Matrix.det_unique_sum_unique`, with `Matrix.det_fin_one_sum_fin_one` as its specialisation to `Fin 1`.
2. **Symplectic characterisation.** Using this formula and the existing block-matrix characterisation of symplectic matrices, I proved that a matrix with these indices is symplectic if and only if its determinant is one. This gives `SymplecticGroup.mem_unique_iff_det_eq_one` and its `Fin 1` specialisation, `mem_fin_one_iff_det_eq_one`.
3. **Group equivalence.** The determinant-one characterisation then gives `finOneEquivSpecialLinear`, a group equivalence between the symplectic group and the special linear group on the same indices, `Fin 1 ⊕ Fin 1`, without changing the underlying matrices.
4. **Reindexing to `Fin 2`.** The symplectic matrices are indexed by `Fin 1 ⊕ Fin 1`, while the usual `SL₂(R)` is indexed by `Fin 2`. I initially implemented the required general reindexing equivalence for special linear groups in [PR 45495](https://github.com/leanprover-community/mathlib4/pull/45495). It was then pointed out that [PR 44094](https://github.com/leanprover-community/mathlib4/pull/44094) was already developing a more general `Matrix.SpecialLinearGroup.reindex` API, so PR 45495 was closed in favour of that work. Now that PR 44094 has merged, this PR uses the resulting `SpecialLinearGroup.reindex` equivalence directly. Composing it with `finOneEquivSpecialLinear` gives `finOneEquivSL2`, closing the original TODO.
5. **Supporting lemmas and integration.** I added simp lemmas describing the forward and inverse equivalences, replaced the original TODO with a pointer to the new result, and included the new module in `Mathlib.lean`.
An additional result of this approach is that the determinant formula and symplectic characterisation are now available as public theorems for arbitrary singleton index types, rather than being restricted to `Fin 1`.
I came across this TODO while taking the Shared Graduate Course, *Elements of Mathematical Formalization and Auto-Formalization with Lean*, at the Fields Institute. I started working on it as a project alongside the course exercises, and discussed an earlier version in a private review. That feedback led me to investigate several alternatives, including the generalisation to singleton index types.
Throughout the project, I worked with OpenAI Codex and GPT-6 to explore proof approaches, work through Lean implementation details and test alternative formulations. I evaluated these against the mathematics and the existing mathlib definitions, made the final choices about the theorem statements, proof structure and supporting lemmas, and personally ran the builds and verification in VS Code. I take responsibility for the final formalisation and the code submitted here.
**Checks:** `lake build Mathlib.LinearAlgebra.SymplecticGroup.SpecialLinearGroup`, `lake exe mk_all --check`, and `lake exe lint-style` all passed.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #44094 |
LLM-generated
t-algebra
new-contributor
label:t-algebra$ |
149/2 |
Mathlib.lean,Mathlib/LinearAlgebra/SymplecticGroup.lean,Mathlib/LinearAlgebra/SymplecticGroup/SpecialLinearGroup.lean |
3 |
5 |
['ShirinShafaie', 'github-actions', 'mathlib-dependent-issues', 'themathqueen'] |
nobody |
1-73317 1 day ago |
1-74644 1 day ago |
7-14571 7 days |
0 |
| 45785 |
JonasReif author:JonasReif |
chore(Order/BooleanAlgebra/Set): derive `disjoint_sdiff_inter` from the Boolean algebra lemma |
`Set.disjoint_sdiff_inter` carried a TODO asking for a proof via a Boolean algebra lemma. The general lemma `disjoint_inf_sdiff` already exists, so the set version is now its `symm`. The statement is unchanged.
---
Created with Claude Opus 5.5 in Claude Code.
|
t-order
new-contributor
|
1/3 |
Mathlib/Order/BooleanAlgebra/Set.lean |
1 |
2 |
['github-actions'] |
nobody |
1-57564 1 day ago |
1-57612 1 day ago |
1-57539 1 day |
0 |
| 42046 |
LegaSage author:LegaSage |
feat(Polynomial): add Wronskian linear dependence lemmas |
This extends the polynomial Wronskian API of Baek and Lee from the existing coprime case to arbitrary polynomials over a characteristic-zero field.
It adds:
* an explicit nontrivial scalar relation for any pair with zero Wronskian, including zero-polynomial edge cases;
* scalar-multiple corollaries when either polynomial is nonzero;
* the weighted derivative corollary that solutions of `a * f' - n * a' * f = 0` are scalar multiples of `a ^ n` when `a ≠ 0`.
The proof factors out the polynomial gcd and applies the existing `IsCoprime.wronskian_eq_zero_iff` theorem. This PR makes no novelty claim; it packages standard consequences of the existing Baek–Lee coprime Wronskian API.
-------
The implementation was prepared with assistance from OpenAI Codex and reviewed and submitted by LegaSage.
|
t-ring-theory
new-contributor
large-import
LLM-generated
|
96/1 |
Mathlib/RingTheory/Polynomial/Wronskian.lean |
1 |
2 |
['github-actions'] |
alreadydone assignee:alreadydone |
1-50458 1 day ago |
108-47695 108 days ago |
108-47622 108 days |
0 |
| 44269 |
ROTARTSI82 author:ROTARTSI82 |
feat(Dynamics): periodic orbits must jump up and down |
If x is a periodic point and not a fixed point, there exists some b in its periodic orbit such that b < f b, and some b' such that f b' < b'.
---
This change was motivated by the following proof, a special case of Sharkovskii's theorem:
```lean
theorem exists_isFixedPt_of_continuous_of_mem_periodicPts' {α : Type*}
[ConditionallyCompleteLinearOrder α] [TopologicalSpace α] [OrderTopology α] [DenselyOrdered α]
{f : α → α} {x₀ : α} (hx₀ : x₀ ∈ periodicPts f)
(hf : Continuous f) :
∃(c : α), IsFixedPt f c := by
by_cases hfixed : IsFixedPt f x₀
· exact ⟨x₀, hfixed⟩
obtain ⟨a, _, ha⟩ := exists_lt_map_of_mem_periodicPts hx₀ hfixed
obtain ⟨b, _, hb⟩ := exists_map_lt_of_mem_periodicPts hx₀ hfixed
obtain ⟨c, _, hc⟩ := exists_mem_uIcc_isFixedPt hf.continuousOn ha.le hb.le
exact ⟨c, hc⟩
```
Would this theorem itself or something similar be wanted in mathlib?
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
new-contributor
t-dynamics
|
39/0 |
Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/Order/Monotone/Basic.lean |
2 |
3 |
['ROTARTSI82', 'github-actions'] |
sgouezel assignee:sgouezel |
1-50453 1 day ago |
41-53615 41 days ago |
42-27912 42 days |
0 |
| 45437 |
zblore author:zblore |
feat(Analysis/Normed/Module): projective space is Hausdorff and compact |
This shows `ℙ K V` is Hausdorff when continuous linear forms separate the points of `V`. Here `K` is Hausdorff with continuous multiplication and each unit of `K` acts continuously on `V`. It also shows `ℙ K V` is compact when `V` is a finite-dimensional topological vector space over a locally compact nontrivially normed field like ℝ, ℂ or the p-adics.
Hausdorff uses the open quotient map from #44117. Two nonzero vectors span the same line exactly when `f v * g w = f w * g v` for all continuous linear forms `f` and `g`. The same-line relation is an intersection of closed sets. Compactness goes through the compact shell in a proper normed space and then a basis.
It also adds an instance that continuous linear forms separate points in a finite-dimensional Hausdorff topological vector space over a complete nontrivially normed field. Mathlib's existing instances need ℝ or ℂ. With it `ℙ K V` is compact and Hausdorff for every finite-dimensional Hausdorff topological vector space `V` over a complete locally compact nontrivially normed field.
The Hausdorff part is adapted from the Tau Ceti project's [projective space file](https://github.com/TauCetiProject/TauCeti/blob/06c598245d42977f79bf09aafd3154dd215c23cd/TauCeti/Topology/Algebra/Projectivization.lean). The compactness proof and the separating dual instance are new.
This covers the compactness and Hausdorff instances for real projective space in #25999 but not its main result.
This is the next step towards the Fubini-Study metric and measure. I asked on Zulip whether this file is in the right place: https://leanprover.zulipchat.com/#narrow/id/634983707
---
I used Claude to draft the Lean against the existing Mathlib API. I used Codex and Claude to review it. I've reworked and checked every line myself and can explain all of it.
|
t-topology
t-analysis
LLM-generated
new-contributor
|
151/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Module/Projectivization.lean |
2 |
3 |
['github-actions', 'zblore'] |
ADedecker assignee:ADedecker |
1-50448 1 day ago |
11-67436 11 days ago |
11-67363 11 days |
0 |
| 45520 |
EzequielS2 author:EzequielS2 |
feat: add growth of finitely generated groups |
Add word-ball growth, domination, and independence of the generating set |
t-geometric-group-theory
new-contributor
|
184/0 |
Mathlib.lean,Mathlib/Geometry/Group/Growth/Basic.lean |
2 |
4 |
['EzequielS2', 'github-actions', 'tb65536'] |
ADedecker assignee:ADedecker |
1-50447 1 day ago |
1-72292 1 day ago |
6-40301 6 days |
3 |
| 45550 |
user202729 author:user202729 |
refactor(AlgebraicGeometry/EllipticCurve): make baseChange transparent notation |
- Make `baseChange` an `abbrev`, so the user doesn't need to explicitly unfold `baseChange`.
- Explicitly document that `W⁄A` is equivalent to `W.map <| algebraMap R A`, so users seeing a `map` lemma applied on `W⁄S` at a use site can see why.
- Rename `S` to `A` for consistency.
---
As discussed in https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Expose.20public.20section.20bad.3F/with/635418753 , `W⁄A` is meant to be transparent, so I think this change is appropriate.
This explicitly changes the meaning of `baseChange`, making code that previously name `baseChange` explicitly backwards incompatible, but I think this is fine.
The affected proofs are fixed. I think the impact is rather minimal.
The four copies of the notation in fact return the same thing, but for example `Affine R` is defined to be an `abbrev` of `WeierstrassCurve R`, so if one writes `(W⁄S).map`, the method `map` is looked up in namespace `Affine`. Without the notation in namespace `Affine`, it would implicitly convert `W` to `WeierstrassCurve`, then lookup the method `map` in namespace `WeierstrassCurve`.
The `name` is added to the notation that needs linking from `baseChangeAux` to make the link in the HTML page works. (Similar to https://github.com/leanprover-community/mathlib4/pull/45129)
|
t-algebraic-geometry
new-contributor
|
29/41 |
Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/LFunction.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Reduction.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Weierstrass.lean |
6 |
7 |
['JX-Mo', 'github-actions', 'user202729'] |
kim-em assignee:kim-em |
1-50446 1 day ago |
8-37888 8 days ago |
8-37815 8 days |
0 |
| 44853 |
dkaysin author:dkaysin |
feat(Geometry/Group): relate the word metric to the Cayley graph distance |
This PR constructs the Cayley graph (realized as a `SimpleGraph`) for a group `G` with respect to a generating family `P : Group.Generators G ι`, implements the link between walks in the Cayley graph and words, and establishes equivalence of the word metric and the distance on the Cayley graph.
---
Resolves TODO from [#43118](https://github.com/leanprover-community/mathlib4/pull/43118).
Implementation details:
* `SimpleGraph` was chosen vs `Quiver/Schreier` because it has a more comprehensive API at the moment. More context: [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Relate.20the.20word.20metric.20to.20the.20distance.20in.20the.20Cayley.20graph/with/631376709).
* To accommodate possible future implementation for `Quiver/Schreier`, I've included "Simple" in the names of definitions and theorems (e.g., `cayleySimpleGraph`).
* Because simple graph has no loops, in several places we have to check that a letter/generator is not trivial.
Use of AI: I used Claude Opus 5.5 to help me with gathering context, designing API and implementation of several proofs.
* I used AI to brainstorm and compare API design ideas based on the context from previous Zulip threads and existing repo code.
* I used AI for suggesting parts of the proofs for `exists_walk_of_word` and `exists_word_of_walk` lemmas.
* I used AI for checking docstrings for consistency.
All AI-generated content was reviewed and edited by me.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #45359 [additivization of dependencies] |
t-geometric-group-theory
new-contributor
LLM-generated
|
161/3 |
Mathlib.lean,Mathlib/Geometry/Group/CayleySimpleGraph.lean,Mathlib/Geometry/Group/README.md,Mathlib/Geometry/Group/WordMetric.lean |
4 |
16 |
['dkaysin', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536', 'vlad902'] |
nobody |
1-49561 1 day ago |
11-71899 11 days ago |
25-7162 25 days |
0 |
| 45786 |
matt-w-horn author:matt-w-horn |
feat(Probability/Distributions): head and tail mass of the geometric distribution |
For `p ≠ 0` the geometric distribution gives `Iio m` mass `1 - (1 - p) ^ m` and `Ici m` mass `(1 - p) ^ m`. Split out of #42381.
---
Assisted-by: Claude Fable 5.1 (code), Gemini Argon (review); used in https://github.com/matt-w-horn/overload
|
t-measure-probability
LLM-generated
new-contributor
|
23/0 |
Mathlib/Probability/Distributions/Geometric.lean |
1 |
3 |
['github-actions', 'matt-w-horn'] |
nobody |
1-45146 1 day ago |
1-45209 1 day ago |
1-45136 1 day |
1 |
| 41957 |
YijunYuan author:YijunYuan |
feat(NumberTheory/Padics/Complex): add densely normed field and separable space instances |
Equip the field `ℂ_[p]` of `p`-adic complex numbers and its dense subfield
`PadicAlgCl p` (the algebraic closure of `ℚ_[p]`) with two further standard
typeclass instances.
Main additions:
* `DenselyNormedField (PadicAlgCl p)`: the norm takes values dense in the
positive reals. The witness between two given bounds `a < b` is built from an
`n`-th root `z` of `p` (which exists since `PadicAlgCl p` is algebraically
closed): choosing `n` so that `(a / b) ^ n < ‖p‖` gives `a / b < ‖z‖ < 1`, and
some integer power `z ^ m` then has norm strictly between `a` and `b`.
* `SeparableSpace (PadicAlgCl p)`: the elements algebraic over `ℚ` form a
countable dense subset. Density follows from continuity of roots — `α` is a
root of its minimal polynomial `f` over `ℚ_[p]`, and approximating the
coefficients of `f` by a polynomial `g` over the dense subfield `ℚ` yields a
root `β` of `g` (hence algebraic over `ℚ`) arbitrarily close to `α`.
* The corresponding instances `DenselyNormedField ℂ_[p]` and
`SeparableSpace ℂ_[p]` are then inferred, `ℂ_[p]` being the completion of
`PadicAlgCl p`.
Supporting general instance:
* `DenselyNormedField (UniformSpace.Completion A)` for a densely normed field
`A` with `CompletableTopField A`, since the norm on the completion extends the
norm on `A`.
The existing `NontriviallyNormedField` instances on `PadicAlgCl p` and `ℂ_[p]`
are simplified to `inferInstance`, as they now follow from the new
`DenselyNormedField` instances. |
new-contributor
t-number-theory
t-algebra
label:t-algebra$ |
123/19 |
Mathlib/Analysis/Normed/Field/Dense.lean,Mathlib/Analysis/Normed/Module/Completion.lean,Mathlib/NumberTheory/Padics/Complex.lean |
3 |
12 |
['YijunYuan', 'github-actions', 'mathlib-merge-conflicts', 'pechersky', 'riccardobrasca'] |
jjdishere assignee:jjdishere |
1-26933 1 day ago |
1-26989 1 day ago |
102-12341 102 days |
0 |
| 45480 |
RFT-SIRM author:RFT-SIRM |
feat(Matrix): add ordered trace expansion for powers of sums |
## Summary
This PR adds a reusable ordered-word expansion for traces of powers of a sum of square matrices.
- `Matrix.orderedWordExpansion A B p` lists products obtained by choosing either `A` or `B` at each of the `p` positions.
- `Matrix.sum_orderedWordExpansion` proves that the list sums to `(A + B)^p`.
- `Matrix.trace_orderedWordExpansion` gives the corresponding trace identity.
The construction preserves the exact order of factors and retains repeated words with their full multiplicity. It does not assume that `A` and `B` commute or identify cyclically equivalent trace terms.
## Motivation
For higher-moment trace identities, expanding `(A + B)^p` requires precise bookkeeping of ordered words before cyclic trace rotations and structural vanishing arguments can be applied. This generic expansion is useful for `p = 6` and for subsequent `p = 8, 10` developments without hard-coding a particular matrix model.
This PR contains only general matrix-algebra lemmas. It does not include application-specific graph operators or claim to prove a particular moment recurrence.
## Verification
The proofs use induction on `p`, right distributivity, and the existing `Matrix.trace_list_sum` theorem. Please run the full Mathlib build and style checks on this PR. |
t-algebra
new-contributor
label:t-algebra$ |
40/0 |
Mathlib/LinearAlgebra/Matrix/Trace.lean |
1 |
2 |
['github-actions'] |
nobody |
1-2151 1 day ago |
1-2455 1 day ago |
10-61608 10 days |
0 |
| 41308 |
sergantche author:sergantche |
feat: add `List.insertIdx_eraseIdx_getElem_perm` |
Adds `List.insertIdx_eraseIdx_getElem_perm`, showing that erasing an element by index and inserting it at any valid position gives a permutation of the original list.
This packages the existing lemmas `List.perm_insertIdx` and `List.getElem_cons_eraseIdx_perm` into a direct API lemma.
AI assistance was used in preparing this PR; I reviewed the statement and proof.
[](https://gitpod.io/from-referrer/) |
t-data
new-contributor
LLM-generated
maintainer-merge
|
5/0 |
Mathlib/Data/List/Perm/Basic.lean |
1 |
6 |
['YaelDillies', 'github-actions', 'sergantche', 'vlad902'] |
nobody |
1-540 1 day ago |
119-57547 119 days ago |
123-54344 123 days |
0 |
| 45794 |
ambrose-tang author:ambrose-tang |
feat(LinearAlgebra/Matrix/Cartan/Basic): submatrices and bonds of finite Cartan matrices |
This PR adds basic API for `Matrix.IsFiniteCartan`:
* principal submatrices and relabellings of finite Cartan matrices are finite Cartan matrices
(`IsFiniteCartan.submatrix`, `IsFiniteCartan.reindex`, `IsFiniteCartan.submatrix_equiv_iff`);
* `IsFiniteCartan.exists_symmetrizer`: `dᵢ Mᵢⱼ = dⱼ Mⱼᵢ` for the weights `d`;
* `IsFiniteCartan.mul_lt_four`: `Mᵢⱼ Mⱼᵢ < 4` for `i ≠ j`;
* `CartanMatrix.IsBond` and `IsFiniteCartan.apply_cases`: the five possible pairs `(Mᵢⱼ, Mⱼᵢ)`
of non-zero off-diagonal entries;
* the symmetries `CartanMatrix.A_submatrix_revPerm` and `CartanMatrix.D_submatrix_swap`.
This is part 1 of 7 of the classification of finite Cartan matrices (`Matrix.IsFiniteCartan.exists_A_or_B_or_C_or_D_or_E_or_F_or_G`, see `Wanted/LinearAlgebra/Matrix/Cartan/Basic.lean`).
|
t-algebra
new-contributor
label:t-algebra$ |
123/1 |
Mathlib/LinearAlgebra/Matrix/Cartan/Basic.lean |
1 |
4 |
['ambrose-tang', 'github-actions', 'wwylele'] |
nobody |
0-85429 23 hours ago |
0-85541 23 hours ago |
1-26119 1 day |
6 |
| 45810 |
user202729 author:user202729 |
chore: remove many `set_option quotPrecheck false` |
Delete almost all `set_option quotPrecheck false`. Fix errors by stop using generalized field notation (e.g. `Functor.obj`), or change the notations that use variables in the current file to `local notation`.
---
Advantage of enabling quotation precheck is that “Go to definition” works. (Though maybe we can have an intermediate: if the option is false, precheck as many things as possible. There's a risk of going to the wrong definition though)
To see what the symbols should resolve to, adding a `variable (i j k) in #check [the notation]` often works.
It might be nice to have some automatic tool to automatically rewrite an expression into normal notation, if one is confused how a generalized field notation works.
I learnt that `local notation` takes into account the variables in the current file. It would be a good idea for the error message to mention this option instead of just `set_option quotPrecheck false`.
It's odd that some field notation still work (`D.f`). Arguably if it's possible to make it work without making the notation definition more verbose, we should do that, but at the moment I don't know how yet.
The `.invApp` is the most confusing one: the thing before the dot is an instance-implicit parameter to the function. It's not clear why it's written the way it is instead of the shorter form (as printed by `#check`/written in the comment), but it's possible that it's to save instance synthesis time, so I leave it alone.
Perhaps it's a good idea to disallow `set_option quotPrecheck false` entirely, and maybe count `set_option quotPrecheck false in` as a tech debt.
Not sure if `notation3` (“Lean 3 style notation”) should be refactored to the new `notation`. On the other hand, it seems like `notation3` supports generalized field notation just fine so…?
There's at least one notation that use hole (https://github.com/leanprover-community/mathlib4/pull/45810/changes#diff-50fa68fd318fd7e616ab659edfdbea6253edaaa7cadb0d1214c1d739e737b592L121). As mentioned in https://github.com/leanprover-community/mathlib4/pull/45550, I _think_ this will make the delaborator fail, even though elaboration works as usual. (So someone will only notice by looking at the infoview.) |
tech debt
new-contributor
|
21/46 |
Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/Analysis/Matrix/LDL.lean,Mathlib/CategoryTheory/Monoidal/Closed/Basic.lean,Mathlib/CategoryTheory/Monoidal/Closed/Cartesian.lean,Mathlib/CategoryTheory/Shift/Basic.lean,Mathlib/FieldTheory/CardinalEmb.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/Gluing.lean,Mathlib/LinearAlgebra/TensorProduct/Defs.lean,Mathlib/MeasureTheory/MeasurableSpace/Defs.lean,Mathlib/RepresentationTheory/Homological/Resolution.lean,Mathlib/RingTheory/DedekindDomain/SelmerGroup.lean,Mathlib/RingTheory/Norm/Transitivity.lean,Mathlib/RingTheory/Smooth/NoetherianDescent.lean,Mathlib/RingTheory/WittVector/Basic.lean,Mathlib/RingTheory/WittVector/StructurePolynomial.lean,Mathlib/RingTheory/WittVector/WittPolynomial.lean,Mathlib/Tactic/CategoryTheory/BicategoryCoherence.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean |
19 |
2 |
['github-actions'] |
nobody |
0-81943 22 hours ago |
0-81988 22 hours ago |
0-83340 23 hours |
0 |
| 45779 |
jasondavies author:jasondavies |
fix(GroupTheory/Coxeter/Matrix): correct the type D Coxeter matrix |
`CoxeterMatrix.D n` currently retains every edge of the type A chain and adds the fork edge. For `n ≥ 3`, this creates a triangle on the last three vertices instead of the type D fork. For example, `CoxeterMatrix.D 4 2 3` is `3`, but the two fork tips should commute, so this entry should be `2`. The small ranks are also wrong: `D 2` is A₂, and `D 3` is a triangle rather than A₃.
Set the entries between vertices `n - 2` and `n - 1` to `2` before checking the fork and chain edges. This also gives the standard small-rank cases `D₂ = A₁ × A₁` and `D₃ = A₃`. Checking the excluded pair first handles rank 2, where natural-number subtraction gives `n - 3 = 0`, making the fork condition select the same pair that must be excluded. Ranks 0 and 1 are unchanged.
Add exact-matrix regression checks for ranks 2, 3, 4, and 5.
--
Trivial fix implemented via GPT-6-Astra. All four regression checks fail against the old definition. |
LLM-generated
t-group-theory
new-contributor
|
3/2 |
Mathlib/GroupTheory/Coxeter/Matrix.lean |
1 |
8 |
['github-actions', 'jasondavies', 'vihdzp'] |
nobody |
0-80736 22 hours ago |
1-6760 1 day ago |
1-71357 1 day |
0 |
| 45665 |
sun123zxy author:sun123zxy |
feat(RingTheory/TensorProduct): projectivity under base change and quotient scalars |
Add lemmas showing preservation of module projectivity under base change, including several special cases:
- algebra pushouts
- `M / IM` is projective over `R / I` when `M` is projective over `R`, and the algebra version of it.
Extracted from #44636 to provide quotient-projectivity instances independently of the trace API.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #45656
Extracted from #44636 as per review. |
t-ring-theory
new-contributor
file-removed
|
128/3 |
Mathlib.lean,Mathlib/RingTheory/EssentialFiniteness.lean,Mathlib/RingTheory/ReesAlgebra.lean,Mathlib/RingTheory/TensorProduct/IsBaseChangeProjective.lean,Mathlib/RingTheory/TensorProduct/Quotient/Algebra.lean,Mathlib/RingTheory/TensorProduct/Quotient/Projective.lean,Mathlib/RingTheory/TensorProduct/Quotient/Torsion.lean |
7 |
10 |
['JX-Mo', 'github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'sun123zxy'] |
nobody |
0-72774 20 hours ago |
0-72953 20 hours ago |
0-72880 20 hours |
1 |
| 45819 |
gloges author:gloges |
feat(LinearAlgebra/PiTensorProduct): lift multi-semilinear maps |
Generalizes `PiTensorProduct.lift` (and along the way `PiTensorProduct.liftAux`) to multi-*semi*linear maps, following up on #42534.
This then also allows `PiTensorProduct.map`, `PiTensorProduct.mapMultilinear`, `PiTensorProduct.congr`, *etc.* to be generalized to *semi*linear maps.
With now several `CommSemiring`s floating around, I have updated variable names throughout [LinearAlgeabra/PiTensorProduct/Basic.lean](https://leanprover-community.github.io/mathlib4_docs/Mathlib/LinearAlgebra/PiTensorProduct/Basic.html) to use `M/M₁/M₂/M₃` for dependent families of modules with the subscript indicating the corresponding ring. This brings it more into line with the other `LinearAlgebra/PiTensorProduct/` files.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
new-contributor |
270/275 |
Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean |
3 |
2 |
['github-actions'] |
nobody |
0-56422 15 hours ago |
0-56479 15 hours ago |
0-56406 15 hours |
0 |
| 42487 |
bocowgill author:bocowgill |
feat(Algebra/BigOperators/Group/Finset/Powerset): add nested powersetCard identities |
This PR adds product and sum identities for nested collections of fixed-cardinality subsets. For `r ≤ k`, each `r`-element subset of a finite set `s` is contained in exactly
`Nat.choose (s.card - r) (k - r)`
of the `k`-element subsets of `s`. Thus, a sum over the `r`-element subsets of every `k`-element subset reduces to this multiplicity, times a single sum over `s.powersetCard r`. The product version is the analogous power identity.
The proof exchanges the order of the two big operators using `Finset.prod_comm'`. It then counts each fiber with `Finset.card_filter_powersetCard_subset`. The additive identities are generated with `to_additive`. The PR also provides the useful elementwise specialization `r = 1`.
**Motivation**: These results provide reusable weighted double-counting tools for finite combinatorics. They are useful in arguments about uniform set systems, incidence relations, and sums or products over fixed-cardinality subsets.
---
### LLM disclosure
For theorem planning and Lean implementation, I used OpenAI Codex substantially. I also used Codex to search Mathlib and open PRs for related results, suggest naming and documentation, iterate on the proofs, audit import dependencies, and validate the commits locally.
I personally reviewed the mathematical statements and Lean code line-by-line, including the naming and API choices. I also confirmed that I can explain each step of the proofs.
For the current revision, I ran a targeted build of `Mathlib.Algebra.BigOperators.Group.Finset.Powerset`, the style and environment linters, and `git diff --check`. I also inspected the generated additive declarations and axiom dependencies, and tested an alternative proof using explicit incidence finsets. The complete GitHub CI suite passes.
This is one of my earliest Mathlib contributions. I welcome corrections and suggestions, and I am prepared to revise the PR and learn from the review. |
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
27/0 |
Mathlib/Algebra/BigOperators/Group/Finset/Powerset.lean |
1 |
17 |
['bocowgill', 'github-actions', 'pepamontero'] |
alreadydone assignee:alreadydone |
0-50460 14 hours ago |
56-40546 56 days ago |
94-67234 94 days |
0 |
| 45521 |
EzequielS2 author:EzequielS2 |
feat: add automorphisms of the infinite binary tree |
Add TreeAut and the splitting TreeAut ≃* (TreeAut × TreeAut) ⋊ ℤ/2 |
t-geometric-group-theory
new-contributor
|
602/0 |
Mathlib.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/Geometry/Group/InfiniteBinaryTree.lean |
3 |
15 |
['EzequielS2', 'github-actions', 'tb65536', 'vihdzp'] |
ADedecker assignee:ADedecker |
0-50453 14 hours ago |
1-58194 1 day ago |
6-24987 6 days |
3 |
| 42113 |
LAC1213 author:LAC1213 |
feat(RingTheory/Noetherian): injective modules over a Noetherian ring… |
… surject onto localizations by powers of an element. [Hartshorne III.3.3]
Disclaimer: I used Claude to help me find the names of useful lemmas and definitions and explain lean errors to me.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
LLM-generated
|
114/0 |
Mathlib.lean,Mathlib/Algebra/Module/Torsion/Basic.lean,Mathlib/RingTheory/Noetherian/InjectiveModule.lean |
3 |
46 |
['LAC1213', 'NoahW314', 'github-actions', 'robin-carlier', 'tb65536'] |
nobody |
0-49561 13 hours ago |
105-2823 105 days ago |
105-26987 105 days |
0 |
| 43871 |
manman4 author:manman4 |
feat(PowerSeries): add Lagrange inversion formula |
## What this PR adds
This PR formalizes the Lagrange inversion formula for formal power series over commutative rings without additive torsion (`HasUniqueDiv R`), together with divided versions over characteristic-zero fields.
For formal power series `P`, `Y`, and `H` over such a ring, suppose `Y = X * P.subst Y`. Then, for every natural number `n`, the Lagrange–Bürmann formula states:
```
(n + 1)[X^{n + 1}]H(Y) = [X^n](H' P^{n + 1}).
```
The brackets denote coefficient extraction, and `H'` denotes the formal derivative of `H`. Over a characteristic-zero field, dividing by `n + 1` gives the usual coefficient formula.
## Proof and scope
The proof follows the inductive argument of Surya and Warnke. The torsion-free assumption is used to cancel multiplication by positive natural numbers.
Following the review suggestions, this PR is restricted to the torsion-free version.
## Motivation
Lagrange inversion is a classical tool in enumerative combinatorics, treated for example in Section 5.4 of Richard P. Stanley’s *Enumerative Combinatorics*, Volume 2. It gives coefficient formulas for implicitly defined generating functions, with applications to counting rooted trees and other recursively defined combinatorial structures.
My motivation was to make this tool, which is also used in competitive programming, available in Mathlib.
## LLM
We (Julian and I) used Aristotle and Codex for code generation and ChatGPT and Claude for cleanup.
|
t-ring-theory
new-contributor
LLM-generated
|
212/0 |
Mathlib.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/Derivative.lean,Mathlib/RingTheory/PowerSeries/LagrangeInversion.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean,docs/references.bib |
6 |
126 |
['JX-Mo', 'Julian-Kuelshammer', 'github-actions', 'manman4', 'wwylele'] |
nobody |
0-39506 10 hours ago |
0-39750 11 hours ago |
53-49097 53 days |
0 |
| 45443 |
janbernloehr author:janbernloehr |
feat(Analysis/ODE): add variable-coefficient integral Grönwall |
Add `le_mul_exp_integral_of_le_const_add_integral`, the integral Grönwall inequality with a continuous nonnegative variable coefficient. If `f t ≤ c + ∫ s in a..t, β s * f s` on `[a, b]`, conclude `f t ≤ c * exp (∫ s in a..t, β s)`. Require continuity only on the interval, with no sign assumptions on `f` or `c`.
Use interval FTC and derivative monotonicity on the dominating primitive times its integrating factor. Put the theorem in a separate integral module so existing importers of differential Grönwall do not acquire FTC dependencies.
This lemma is used in the formalization of my dissertation for Volterra inverse bounds and stability estimates; one concrete use is the [Volterra inverse bound](https://github.com/janbernloehr/diss-lean/blob/2091dba5870425e38372f9e0a9106c4214a1dfbe/NLS/ZakharovShabat/ClassicalVolterraL2Bound.lean#L41). Keeping the coefficient's integral in the exponential matters when integral norms are controlled but pointwise bounds are not uniform. For another contribution arising from the same dissertation formalization, see [#45441](https://github.com/leanprover-community/mathlib4/pull/45441), on compact remainders under one-sided inverses.
---
## Related work
The same integral statement was previously proposed in [#37287](https://github.com/leanprover-community/mathlib4/pull/37287), which was withdrawn and not merged. The stronger variable-forcing proposal [#38829](https://github.com/leanprover-community/mathlib4/pull/38829) is also closed unmerged. Open [#39871](https://github.com/leanprover-community/mathlib4/pull/39871) concerns uniform Grönwall; its internal exponential comparison is a potential consumer of this lemma. No PR dependencies.
## Validation
Checked using Lean `v4.36.0-rc2`:
- Affected-module build and direct source check with warnings treated as errors.
- `mk_all --lib Mathlib --check` and `lint-style`.
- Default semantic linters and documentation linters.
- Axiom inspection: only `propext`, `Classical.choice`, `Quot.sound`.
- Clean merge simulation, diff/whitespace checks, and separate Volterra-use examples.
## AI assistance
OpenAI Codex was used to write the Lean implementation. The proof design was informed by downstream proofs and the earlier proposals linked above. |
t-analysis
LLM-generated
new-contributor
|
70/0 |
Mathlib.lean,Mathlib/Analysis/ODE/GronwallIntegral.lean |
2 |
3 |
['NousVolition', 'github-actions'] |
nobody |
0-14667 4 hours ago |
11-58401 11 days ago |
11-58328 11 days |
0 |
| 45072 |
HugLycan author:HugLycan |
refactor(Tactic/Positivity): add a cache |
This PR adds caching to `positivity`, following the implementation in `FunProp`.
It is the first step towards #45305 . This does not speed up mathlib but is crucial for `positivity_lemma` attribute.
The two test example in the newly created file `Positivity/Cache.lean` took 359 heartbeats and 641 heartbeats respectively before the PR, and 172 heartbeats and 568 heartbeats afterwards.
We had to change many positivity extensions for two reasons:
- The type of `PositvityExt` has changed from `MetaM` to `PositivityM`.
- We have to return `.none` instead of failing to preserve the cache.
Most of the positivity extensions will soon be replaced by the `positivity_lemma` attribute.
---
<!-- Your PR title will become the first line of the commit messag
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
new-contributor
t-meta
file-removed
|
529/342 |
Mathlib/Algebra/Order/Algebra.lean,Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean,Mathlib/Algebra/Order/Floor/Extended.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/Normed/Algebra/GelfandRadius.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Real/Sqrt.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Basic/ENNReal/Basic.lean,Mathlib/Basic/ENNReal/Real.lean,Mathlib/Basic/NNReal/Defs.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Bound.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Removal.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/Geometry/Euclidean/Altitude.lean,Mathlib/Geometry/Euclidean/Volume/Basic.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/NumberTheory/ArithmeticFunction/VonMangoldt.lean,Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/NumberTheory/Height/NumberField.lean,Mathlib/NumberTheory/Height/Projectivization.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/NumberTheory/SelbergSieve.lean,Mathlib/RingTheory/Radical/NatInt.lean,Mathlib/Tactic/LinearCombination.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Positivity/Finset.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,MathlibTest/Tactic/Positivity/Basic.lean,MathlibTest/Tactic/Positivity/Cache.lean |
49 |
11 |
['HugLycan', 'fpvandoorn', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
0-13492 3 hours ago |
0-31284 8 hours ago |
0-32645 9 hours |
2 |
| 45075 |
vdelbarc author:vdelbarc |
feat(LinearAlgebra/Span): characterize IsCoatom submodules via IsCompl with singleton spans |
`isCompl_span_singleton_iff` shows that a submodule over a division ring is a coatom if and only if it admits a complement spanned by a vector outside the submodule.
The simp lemma `LinearEquiv.coord_smul`, shows that the coordinate map associated with a nonzero singleton span sends `a • x` to `a`.
Co-authored by: Gustavo Infanti, Exequiel Rivas and Paul Schwahn
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-algebra
new-contributor
label:t-algebra$ |
14/0 |
Mathlib/LinearAlgebra/Span/Basic.lean |
1 |
39 |
['JX-Mo', 'alreadydone', 'artie2000', 'github-actions', 'themathqueen', 'vdelbarc'] |
nobody |
0-9225 2 hours ago |
0-26207 7 hours ago |
16-43520 16 days |
0 |
| 45827 |
RFT-SIRM author:RFT-SIRM |
feat(Combinatorics): characterize GF(2) incidence independence |
## Summary
Adds an incidence-theory module over `ZMod 2` for finite indexed undirected multigraphs, represented by two endpoint maps.
The edge type is an index type, so parallel edges remain distinct. Both endpoints are counted, so a loop contributes twice at its vertex and has a zero incidence column over `ZMod 2`.
The main theorem characterizes linear independence of the incidence columns by the finite even-subgraph criterion:
`LinearIndependent (ZMod 2) (column source target) ↔ IsForest source target`.
The module also proves:
- invariance under reversing all edge orientations;
- the handshake-parity identity;
- preservation of column independence after deleting a distinguished root row;
- exclusion of loops and parallel edges in an incidence forest;
- uniqueness of coefficients for reduced incidence sums.
## Mathematical scope
The result is formulated for finite edge-index types and does not identify parallel edges. The predicate `IsForest` is expressed by the absence of a nonempty finite edge subset with even degree at every vertex. Thus the algebraic statement is independent of any particular graph geometry.
## Validation status
The branch is based directly on upstream `master` at `139105d28c7685a154cb3093f79edb2e16708099`.
A local Lean build was unavailable in the current execution environment. CI validation and API/style review are therefore still required.
## AI assistance
AI tools assisted with drafting and editing the formalization. The author remains responsible for checking the statements, proof, API choices, and any requested revisions before this contribution is considered ready for review. |
t-combinatorics
new-contributor
LLM-generated
|
304/0 |
Mathlib.lean,Mathlib/Combinatorics/Incidence/Forest.lean |
2 |
2 |
['github-actions'] |
nobody |
0-7432 2 hours ago |
0-10193 2 hours ago |
0-10120 2 hours |
0 |
| 45828 |
aliquis11 author:aliquis11 |
feat(Analysis/InnerProductSpace/LinearPMap): characterise the adjoint domain |
Add a characterisation of the adjoint domain of a densely defined operator. The existing mem_adjoint_domain_of_exists gives one implication. The new result states that domain membership is equivalent to the existence of a vector satisfying the inner product identity. This standard characterisation from functional analysis is useful in constructing the Friedrichs extension.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-analysis
new-contributor
|
14/0 |
Mathlib/Analysis/InnerProductSpace/LinearPMap.lean |
1 |
2 |
['github-actions'] |
nobody |
0-7399 2 hours ago |
0-11213 3 hours ago |
0-11140 3 hours |
0 |
| 40953 |
ymonbru author:ymonbru |
feat: the definition of a KSheaf on a T2 Space |
This files adds the definition of a KSheaf on a T2 space with value in an arbitrary category.
One may expect this notion to come from sheaves on a site of compact subset of a topological space but there is no coresponding Grothendieck topology on compact subsets. In particular, this is because one of the axioms is in the form of a colimit and can't be expressed as a limit condition (hence a sheaf condition).
It also adds API that allow to use the axioms in a convenient way.
---
- [x] depends on: #40737
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
t-category-theory
|
170/0 |
Mathlib.lean,Mathlib/Topology/Sheaves/KSheaf.lean,docs/references.bib |
3 |
33 |
['Multramate', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'ymonbru'] |
ocfnash assignee:ocfnash |
0-3317 55 minutes ago |
0-3317 54 minutes ago |
122-80603 122 days |
1 |
| 45834 |
osmangroup author:osmangroup |
feat(GroupTheory/Abelianization/Basic): abelianization of a quotient |
- Adds `Mathlib/GroupTheory/Abelianization/Basic.lean`, containing
`Group.Abelianization.quotientMulEquiv`: for a normal subgroup `N` of `G`,
the abelianization of `G ⧸ N` is isomorphic to the quotient of the abelianization of `G`
by the image of `N`.
- Also adds simp lemmas describing the equivalence
and its inverse on elements of the group, and additive versions via `to_additive`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-group-theory
new-contributor
|
59/0 |
Mathlib.lean,Mathlib/GroupTheory/Abelianization/Basic.lean |
2 |
2 |
['github-actions'] |
nobody |
0-1202 20 minutes ago |
0-1301 20 minutes ago |
0-1228 20 minutes |
0 |
This page collects anonymous visit counts for usage reporting (no cookies, no IP addresses stored). See the Mathlib Initiative privacy policy.