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 |
| 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 |
106-32342 3 months ago |
231-49450 231 days ago |
231-49330 231 days |
| 35069 |
A-M-Berns author:A-M-Berns |
feat(Geometry/Polygon): simple polygons and boundary map |
This PR introduces Simple polygons with the predicate `IsSimple`, which captures the idea of a non-self-intersecting boundary, in the file Simple.lean. In the file Boundary.lean, a boundary map from `AddCircle n` is defined. I prove that the range of this map is the boundary and that this map is injective if and only if the polygon is simple. I kept Boundary.lean and Simple.lean separate because future results will include stuff just about the boundary map independent of simplicity (e.g. that it is continuous in the appropriate setting) and stuff just about simple polygons independent of the boundary map (e.g. that for n = 3, IsSimple iff HasNondegenerateVertices.) I used Claude Code to help generate some of the proof material, but I golfed and edited all AI contribution.
- [x] depends on: #34598
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-euclidean-geometry
LLM-generated
|
360/0 |
Mathlib.lean,Mathlib/Geometry/Polygon/Boundary.lean,Mathlib/Geometry/Polygon/Simple.lean,Mathlib/Logic/Equiv/Fin/Rotate.lean |
4 |
30 |
['A-M-Berns', 'eric-wieser', 'github-actions', 'joneugster', 'jsm28', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp', 'wwylele'] |
nobody |
102-32343 3 months ago |
188-58198 188 days ago |
191-5964 191 days |
| 39449 |
Paul-Lez author:Paul-Lez |
doc: add library note about scoping simp lemmas with weak keys |
In PR #39262 I noticed that some `simp` lemmas were scoped for a reason that is not immediately obvious, so I figured that adding a library note would be nice in case anyone else runs into this in the future (this pattern is quite common in Mathlib!)
In case it's helpful for review, here are links to a few of the PRs that added this scoping initially:
- #14233
- #15620
- #15631
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
|
|
71/4 |
Mathlib.lean,Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/CharP/Two.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/Ring/BooleanRing.lean,Mathlib/Algebra/Ring/CharZero.lean,Mathlib/Tactic.lean,Mathlib/Tactic/SimpLibraryNote.lean |
8 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
89-30502 2 months ago |
89-30502 89 days ago |
102-38134 102 days |
| 40329 |
no-j author:no-j |
feat(Computability): matching εNFA.Path definition with NFA.Path |
Added εNFA.Path definition that is based on `Type` instead of `Prop` to match NFA's path definition
Added εNFA.Path.supp (same definition as NFA.Path.supp)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-computability
new-contributor
|
60/23 |
Mathlib/Computability/EpsilonNFA.lean |
1 |
3 |
['github-actions'] |
nobody |
86-84728 2 months ago |
86-85561 86 days ago |
86-85813 86 days |
| 40274 |
gasparattila author:gasparattila |
chore(Order/Partition/Finpartition): deprecate `ofPairwiseDisjoint` |
This is a duplicate of `Finpartition.ofErase`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
8/16 |
Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean,Mathlib/Order/Partition/Finpartition.lean |
2 |
2 |
['gasparattila', 'github-actions'] |
nobody |
85-8732 2 months ago |
88-46976 88 days ago |
88-46856 88 days |
| 40520 |
Julian-Kuelshammer author:Julian-Kuelshammer |
feat(CategoryTheory/Linear): linear Yoneda and coYoneda are linear |
Mathlib/CategoryTheory/Linear/Basic.lean:
Adds an instance that the opposite category of a linear category is linear.
Mathlib/CategoryTheory/Linear/Yoneda.lean:
Adds instances that the linearYoneda and linearcoYoneda are linear functors, which was a TODO before.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
large-import
|
27/2 |
Mathlib/CategoryTheory/Linear/Basic.lean,Mathlib/CategoryTheory/Linear/Yoneda.lean |
2 |
3 |
['github-actions'] |
nobody |
82-41656 2 months ago |
82-43092 82 days ago |
82-43505 82 days |
| 38225 |
kim-em author:kim-em |
ci: block merging PRs with large import increases unless reviewed |
This PR makes the existing `large-import` label into a merge gate. PRs that significantly increase transitive imports (>2% for any modified file) are now blocked from merging until a reviewer adds the `allow-large-import` label.
### Why three labels?
Bors's `block_labels` has no conditional logic — if a label is in the list, merge is blocked unconditionally. We need "blocked unless a reviewer has approved", i.e. `large-import ∧ ¬allow-large-import`. Since bors can't express that, we use a derived label:
| Label | Managed by | Purpose |
|---|---|---|
| `large-import` | `build` job (import analysis) | Factual: this PR increases imports |
| `blocked-by-large-import` | `check-large-import` job | Operational: blocks bors |
| `allow-large-import` | Reviewer | Override: reviewer approves the increase |
Each label is managed by exactly one actor, so there is no label-fighting.
### How it works
1. The existing `build` job adds/removes `large-import` based on import analysis (unchanged).
2. A new `check-large-import` job (in the same workflow) waits for `build` to finish, then:
- If `large-import` is present and `allow-large-import` is absent → adds `blocked-by-large-import`
- Otherwise → removes `blocked-by-large-import`
3. `blocked-by-large-import` is added to `block_labels` in `bors.toml`.
When a reviewer adds `allow-large-import`, the `labeled` event re-triggers the workflow. The heavy `build` job is skipped (guarded by `github.event.action != 'labeled'`), but the lightweight `check-large-import` job runs, sees both labels, and removes `blocked-by-large-import`. Bors can now merge.
### Reviewer workflow
The CI failure message tells the reviewer to consider whether the PR could be improved by splitting files, rearranging material, or creating new intermediate files. If the import increase is reasonable, they add `allow-large-import`.
False positives can be reported on the [mathlib4 Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/large-import.20label).
🤖 Prepared with Claude Code |
CI |
78/2 |
.github/workflows/PR_summary.yml,bors.toml |
2 |
7 |
['SnirBroshi', 'github-actions', 'jcommelin', 'joneugster', 'kim-em'] |
nobody |
82-32343 2 months ago |
134-37093 134 days ago |
134-37591 134 days |
| 40612 |
kim-em author:kim-em |
feat: add Jacobian challenge based test for new `def_wanted` feature |
This PR adds tests for the new features introduced in batteries#1818, i.e. `def_wanted`, and the ability to safely refer to other `*_wanted` statements from within a `*_wanted` statement. We use the Jacobian challenge as the example. |
|
86/0 |
MathlibTest/JacobianChallenge.lean |
1 |
1 |
['github-actions'] |
nobody |
79-19200 2 months ago |
79-22661 79 days ago |
79-22541 79 days |
| 40639 |
metakunt author:metakunt |
feat(Combinatorics/MixedGraph): adds mixed graphs and some example API |
This PR is intended to gather some feedback. I'd like to introduce mixed graphs into mathlib as a generalisation of the graph api.
I didn't know whether to change the API of the graphs so I experimented a bit and ported some results as a proof of concept.
Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Mixed.20multigraphs/with/602794133
|
t-combinatorics |
186/0 |
Mathlib.lean,Mathlib/Combinatorics/Mixedgraph/Basic.lean |
2 |
2 |
['github-actions'] |
nobody |
78-64164 2 months ago |
78-65027 78 days ago |
78-65390 78 days |
| 38606 |
dennj author:dennj |
feat: preparation for Vanishing Sum of Roots of Unity |
Adds the Mathlib API extensions needed for an upcoming formalization of the Lam-style classification theorem for vanishing sums of roots of unity.
* Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean
+ `exists_eq_const_of_sum_smul_eq_zero_of_sum_eq_zero_of_linearIndependent`: if `∑ vᵢ = 0` and the first `n-1` of `n` vectors are linearly independent, every linear relation has constant coefficients.
* Mathlib/RingTheory/Radical/NatInt.lean
+ `Nat.totient_eq_div_radical_mul_totient_radical`: Euler's totient splits as `φ(n) = (n / rad n) * φ(rad n)`.
* Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean
+ `IsPrimitiveRoot.sum_range_pow_mul_div_eq_zero_of_dvd`: the `d` evenly-spaced powers of a primitive `k`-th root sum to zero, for `d ∣ k` and `1 < d`.
* Mathlib/NumberTheory/Cyclotomic/LinearDisjoint.lean (new)
+ `IsPrimitiveRoot.linearDisjoint_adjoin_pow_of_coprime`: cyclotomic subfields of coprime orders are linearly disjoint over `ℚ`.
* Mathlib/NumberTheory/Cyclotomic/LinearRelations.lean (new)
+ `IsPrimitiveRoot.coeffs_eq_of_sum_pow_eq_zero_prime_coprime`: in the cyclotomic field of order `p * m` with `p` prime coprime to `m`, any `ℚ⟮ζ^p⟯`-linear relation among powers of `ζ^m` has all coefficients equal.
---
I need these as preparation to start formalizing the theorem:
Let k be a positive integer. If a finite family of complex k-th roots of unity sums to zero, then the size of the family is a non-negative integer combination of the prime divisors of k.
---
Human-made PR with AI used for golfing and documentation |
new-contributor |
219/0 |
Mathlib.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/NumberTheory/Cyclotomic/LinearDisjoint.lean,Mathlib/NumberTheory/Cyclotomic/LinearRelations.lean,Mathlib/RingTheory/Radical/Totient.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean |
6 |
4 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
76-31698 2 months ago |
76-33748 76 days ago |
84-65276 84 days |
| 37183 |
dagurtomas author:dagurtomas |
feat(Tactic/CategoryTheory): map attribute |
Adding `@[map]` to a lemma named `H` of shape `∀ .., f = g`, where `f` and `g` are morphisms
in some category `C`, creates a new lemma named `H_map` of the form
`∀ .. {D} (func : C ⥤ D), F.map f = F.map g` and then applies
`simp only [Functor.map_comp, Functor.map_id]`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
t-category-theory
|
301/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/MapSimp.lean |
5 |
13 |
['adamtopaz', 'dagurtomas', 'github-actions', 'joelriou'] |
nobody |
75-32336 2 months ago |
97-13972 97 days ago |
159-64231 159 days |
| 39427 |
Hagb author:Hagb |
feat(Order/Interval/Finset/Defs): `LocallyFiniteOrder{Bot,Top}` implies `WellFounded{LT,GT}` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #39547
[](https://gitpod.io/from-referrer/)
|
t-order |
11/0 |
Mathlib/Order/Interval/Finset/Defs.lean |
1 |
5 |
['Hagb', 'github-actions', 'leanprover-radar', 'mathlib-dependent-issues'] |
nobody |
72-47453 2 months ago |
72-49176 72 days ago |
72-53083 72 days |
| 36743 |
Jun2M author:Jun2M |
feat(Combinatorics/GraphLike): introduce `GraphLike` typeclass |
Edit: There is #40204: alternative PR that uses incidence to define hypergraph.
Per discussion at ([#graph theory > HasAdj](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/HasAdj/with/575843445)), This PR introduces the `GraphLike` typeclass to capture the notions like `dart` and `walk` across various graph objects, such as `SimpleGraph`, `Graph`, and `Digraph`.
The goal is that by abstracting these core components into a typeclass, we can prove these results once for all graph-like structures rather than duplicating them across different graph types.
### Main definitions
* `GraphLike V D E Gr`: A typeclass parameterized by a vertex type `V`, dart type `D` and a graph type `Gr` (with `V`, `D` & `E` as an `outParam`).
* `GraphLike.verts : Set V`: The set of vertices of the graph.
* `GraphLike.darts : Set D`: The set of darts of the graph.
* `GraphLike.edges : Set E`: The set of edges of the graph.
* `GraphLike.Adj : V → V → Prop`: The adjacency relation, defined by default as `∃ d ∈ darts, fst d = u ∧ snd d = v`.
---
This PR generalises #35776 to also unify `Graph`.
PRs depending on this PR are
#39047 (graphLike with no multi edges) => #39050 (Digraph is graphLike)
||
V
#36829 (undirected graphLike) => #39053 (Graph is graphLike) & #39054 (Simplegraph is graphLike)
||
V
#36756 (def of walk on GraphLike) => #36971 (change Simplegraph to use GraphLike walk)
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
104/0 |
Mathlib.lean,Mathlib/Combinatorics/GraphLike/Basic.lean |
2 |
78 |
['IvanRenison', 'Jun2M', 'SnirBroshi', 'YaelDillies', 'github-actions', 'lauramonk', 'mathlib-merge-conflicts'] |
nobody |
71-32343 2 months ago |
116-63146 116 days ago |
167-61442 167 days |
| 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
|
48/0 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean,Mathlib/Data/List/Nodup.lean |
3 |
2 |
['github-actions'] |
nobody |
67-17513 2 months ago |
70-53739 70 days ago |
70-53704 70 days |
| 40561 |
iosephusferrum author:iosephusferrum |
feat(ModelTheory): quantifier elimination for first-order theories |
This PR introduces `HasQuantifierElimination` for first-order languages, along with some standard criteria to establish it for any language that satisfies them and prerequisite formalization `mathlib4` required on elementary extension pairs (`IsElementaryExtensionPair`) and < κ-generated substructures (`CardinalLTGenerated`). It also states and proves that the first-order theory DLO (dense linear order without endpoints) has quantifier elimination (`dlo_hasQuantifierElimination`), using the newly formalized quantifier elimination criteria.
Co-authored-by: Yağız Kaan Aydoğdu <y.kaan.aydogdu@gmail.com>
Co-authored-by: Salih Erdem Koçak <saliherdemkd@gmail.com>
Advised-by: Ayhan Günaydın <ayhan.gunaydin@bogazici.edu.tr>
Advised-by: Metin Ersin Arıcan <metin.arican@bogazici.edu.tr>
---
[](https://gitpod.io/from-referrer/)
Please note that we have utilized agentic AI tools (Claude Opus, ChatGPT Codex) during the development of this PR. Most of the proofs of the major theorems are directly "translated" from human-language source material (check the diff in `references.bib`) to Lean proofs using mentioned AI tools. However, all design/formalization decisions are made by us. |
new-contributor
LLM-generated
|
976/7 |
Mathlib.lean,Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/ElementaryExtensionPair.lean,Mathlib/ModelTheory/FinitelyGenerated.lean,Mathlib/ModelTheory/Order.lean,Mathlib/ModelTheory/PartialEquiv.lean,Mathlib/ModelTheory/QuantifierElimination.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Substructures.lean,Mathlib/Tactic/Linter/TextBased/UnicodeLinter.lean,docs/references.bib |
11 |
6 |
['erdkocak', 'felixpernegger', 'github-actions'] |
nobody |
66-41641 2 months ago |
81-44251 81 days ago |
81-44417 81 days |
| 41217 |
Probablism author:Probablism |
feat(SimpleGraph/Matching): add graph-level IsMatching |
Closes #11911.
This adds a graph-level `SimpleGraph.IsMatching` predicate. It is support-based, so isolated
vertices are allowed: every vertex in the graph support is incident to exactly one edge.
The existing `Subgraph.IsMatching` predicate is unchanged. I added compatibility lemmas relating it
to `M.spanningCoe`, including an iff characterizing the subgraph predicate as graph-level matching
plus `M.support = M.verts`.
Validation:
- `lake env lean Mathlib/Combinatorics/SimpleGraph/Matching.lean`
- `lake build Mathlib.Combinatorics.SimpleGraph.Matching`
- `lake build Mathlib.Combinatorics.SimpleGraph.Hall Mathlib.Combinatorics.SimpleGraph.Tutte Mathlib.Combinatorics.SimpleGraph.UniversalVerts`
- `lake exe lint-style Mathlib/Combinatorics/SimpleGraph/Matching.lean`
- `lake build Mathlib`
- `lake test`
AI assistance: OpenAI Codex assisted with testing and validation.
|
t-combinatorics
new-contributor
|
41/3 |
Mathlib/Combinatorics/SimpleGraph/Matching.lean |
1 |
4 |
['Probablism', 'SnirBroshi', 'github-actions'] |
nobody |
63-34874 2 months ago |
63-36063 63 days ago |
63-35943 63 days |
| 35669 |
SnirBroshi author:SnirBroshi |
feat(Mathlib/Data/Finset/Mex): `sInf sᶜ ≤ s.encard` |
---
It's in a separate file because I couldn't find a sensible place with the required imports, not because "mex" is particularly interesting.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #35821
- [x] depends on: #35822
[](https://gitpod.io/from-referrer/)
|
t-order |
59/0 |
Mathlib.lean,Mathlib/Data/Finset/Mex.lean |
2 |
14 |
['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] |
nobody |
62-66803 2 months ago |
62-67349 62 days ago |
66-69683 66 days |
| 38432 |
SnirBroshi author:SnirBroshi |
feat(Logic/Relation): `Map r f g ≤ s ↔ r ≤ s.bicompl f g` |
and the dual `s ≤ Relation.Map r f g ↔ s.bicompl f g ≤ r` which requires `f` and `g` to be bijective.
Adds `Galois{Connection/Insertion/Coinsertion}` for the dual.
The theorems are specialized to `onFun` instead of `bicompl` for when `f = g`.
A `GaloisConnection` for the iff in the title requires `f`/`g` to be bijective, but then we can get an `OrderIso` which is stronger (see #38499).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
126/28 |
Mathlib/Logic/Relation.lean,Mathlib/Order/GaloisConnection/Basic.lean |
2 |
5 |
['SnirBroshi', 'github-actions', 'plp127'] |
nobody |
62-63889 2 months ago |
62-66931 62 days ago |
130-84461 130 days |
| 41297 |
plp127 author:plp127 |
feat: cardinality of `Ultrafilter` |
We prove there are `2 ^ 2 ^ #α` ultrafilters on an infinite type `α`. For completeness, we also provide the cardinality lemma when `α` is finite.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
t-set-theory
|
142/0 |
Mathlib.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Ultrafilter/Basic.lean,Mathlib/Order/Filter/Ultrafilter/Cardinality.lean |
4 |
1 |
['github-actions'] |
nobody |
61-51305 1 month ago |
61-72363 61 days ago |
61-72243 61 days |
| 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
|
272/0 |
Mathlib.lean,Mathlib/Order/Category/PartOrd/CartesianClosed.lean,Mathlib/Order/Category/PartOrd/Distributive.lean,Mathlib/Order/Category/Preord/CartesianClosed.lean,Mathlib/Order/Category/Preord/Distributive.lean |
5 |
5 |
['github-actions', 'intgrah'] |
nobody |
61-49672 1 month ago |
62-74250 62 days ago |
62-74130 62 days |
| 38587 |
dagurtomas author:dagurtomas |
feat(Tactic/CategoryTheory): concrete category boilerplate |
Adds `mk_concrete_category`, a command for generating the initial boilerplate for concrete categories whose morphisms are given by a bundled function type.
The command creates the wrapper `Hom` type, named category and concrete category instances, `ofHom`, `Hom.hom`, and the basic dsimp lemmas.
It handles parameterized categories such as `ModuleCat`, and has a paired additive/multiplicative form for generating both structures at once (e.g. `MonCat`/`AddMonCat`).
Includes test categories checking the generated declarations.
[](https://gitpod.io/from-referrer/)
|
LLM-generated
t-meta
t-category-theory
|
905/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/MkConcreteCategory.lean,MathlibTest/CategoryTheory/MkConcreteCategory.lean |
4 |
8 |
['dagurtomas', 'eric-wieser', 'github-actions'] |
nobody |
61-32296 1 month ago |
118-21890 118 days ago |
118-22531 118 days |
| 34799 |
vlad902 author:vlad902 |
feat(SimpleGraph): the cycle graph and complete graph are Hamiltonian |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #xyz [optional extra text]
-->
- [ ] depends on: #34797
- [ ] depends on: #35255
- [ ] depends on: #37930
[](https://gitpod.io/from-referrer/) |
t-combinatorics
large-import
|
22/0 |
Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean |
1 |
6 |
['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vlad902'] |
nobody |
61-6853 1 month ago |
62-51082 62 days ago |
62-51513 62 days |
| 41327 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Subgraph): `induce` lemmas |
`Subgraph.induce` API for sup / inf / iSup / iInf / inter / iUnion / iInter (union already 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
58/0 |
Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
1 |
1 |
['github-actions'] |
nobody |
60-65947 1 month ago |
60-67311 60 days ago |
60-67191 60 days |
| 41337 |
gotrevor author:gotrevor |
doc(1000-yaml): add Goodstein's theorem and the Kirby–Paris theorem |
Claims two listed-but-unclaimed entries in the 1000+ theorems scoreboard by adding external-formalization pointers (no mathlib declaration; same pattern as Löb's theorem [`Q204884`](https://github.com/leanprover-community/mathlib4/blob/master/docs/1000.yaml#L201), the flypitch continuum-hypothesis independence [`Q208416`](https://github.com/leanprover-community/mathlib4/blob/master/docs/1000.yaml#L216), and Arrow's impossibility theorem [`Q33481`](https://github.com/leanprover-community/mathlib4/blob/master/docs/1000.yaml#L30)).
## Entries
| Wikidata | Theorem | Formalization |
|----------|---------|---------------|
| `Q1149185` | **Goodstein's theorem** — every Goodstein sequence terminates | [`lean-gallery`](https://github.com/gotrevor/lean-gallery/blob/main/LeanGallery/Logic/Goodstein/Statement.lean) (ordinal-descent proof) |
| `Q1149185X` | **Kirby–Paris theorem** — PA does not prove that every Goodstein sequence terminates | [`goodstein-independence`](https://github.com/gotrevor/goodstein-independence/blob/main/src/GoodsteinPA/Statement.lean) |
## Notes
- **`Q1149185X` (Kirby–Paris, 1982)** is built on the [`FormalizedFormalLogic/Foundation`](https://github.com/FormalizedFormalLogic/Foundation) library (the same library that backs the existing Löb's-theorem entry [`Q204884`](https://github.com/leanprover-community/mathlib4/blob/master/docs/1000.yaml#L201)), via the Wainer growth-rate route (`Goodstein` outgrows every PA-provably-total function). The headline `peano_not_proves_goodstein` is sorry-free and `#print axioms`-clean — it rests on exactly `[propext, Classical.choice, Quot.sound]`.
- **`Q1149185`** is Goodstein's theorem proper (the termination statement, provable in ZFC / Lean); mathlib does not currently contain it.
- Both formalizations are by Trevor Morris, developed with AI assistance: Claude Code (Fable 5, Opus), Codex, and Harmonic's Aristotle.
🤖 Generated with [Claude Code](https://claude.com/claude-code) |
new-contributor
LLM-generated
|
6/0 |
docs/1000.yaml |
1 |
4 |
['felixpernegger', 'github-actions'] |
nobody |
60-30561 1 month ago |
60-32816 60 days ago |
60-32696 60 days |
| 41358 |
erdkocak author:erdkocak |
doc(ModelTheory): fix partial equivalence theorem reference |
Fix a stale module doc reference in `ModelTheory.PartialEquiv`: the theorem is `equiv_between_cg`, and the conclusion is an isomorphism `M ≃[L] N`.
---
This documentation-only PR was split out from #41111 following review feedback.
Please note that ChatGPT Codex was used to help prepare this documentation-only PR. |
t-logic
new-contributor
|
3/3 |
Mathlib/ModelTheory/PartialEquiv.lean |
1 |
2 |
['github-actions'] |
nobody |
60-2129 1 month ago |
60-2718 60 days ago |
60-2598 60 days |
| 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
|
51/0 |
Mathlib/ModelTheory/FinitelyGenerated.lean,Mathlib/ModelTheory/Substructures.lean |
2 |
9 |
['NoahW314', 'erdkocak', 'felixpernegger', 'github-actions'] |
nobody |
60-1274 1 month ago |
60-2081 60 days ago |
65-86050 65 days |
| 39864 |
8e7 author:8e7 |
feat(Combinatorics/SimpleGraph/Acyclic): helly property on subtrees |
This PR adds several lemmas regarding connected subsets of vertices in trees (subtrees). The main result is the Helly property for subtrees: For a finite set of subtrees, if any pair of subtrees intersect, then there is a common vertex in all subtrees.
This lemma is part of an effort to formalize tree decompositions (see #38334), and will be used in a future PR to prove `G.cliqueNum - 1 <= G.treeWidth`.
AI Usage: The proofs were developed with the help of Claude Code. I vouch for all the code written and understand the content fully.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
LLM-generated
|
114/0 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean |
2 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
59-22295 1 month ago |
59-22850 59 days ago |
77-36903 77 days |
| 37683 |
SabrinaJewson author:SabrinaJewson |
feat(Order/OrdContinuous): every map between complete lattices that preserves sSup is a left adjoint of some Galois connection |
It is already proven that the left side of a Galois connection is left-continuous; this provides the converse.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #37682
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
|
14/0 |
Mathlib/Order/OrdContinuous.lean |
1 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
57-47307 1 month ago |
57-48974 57 days ago |
57-50301 57 days |
| 41393 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Hamiltonian): a graph is Hamiltonian iff there's a Hamiltonian path with adjacent endpoints |
---
The new public import is needed because `Nat.card` was previously only imported privately.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/1 |
Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean |
1 |
1 |
['github-actions'] |
nobody |
57-8250 1 month ago |
58-35743 58 days ago |
58-35623 58 days |
| 41469 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Coloring/EdgeLabeling): `Unique` & `IsEmpty` instances and simplify `mk` |
---
The changes aren't related, they're just small so I grouped them together.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
8/5 |
Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeLabeling.lean |
1 |
1 |
['github-actions'] |
nobody |
56-48012 1 month ago |
56-49902 56 days ago |
56-49782 56 days |
| 41218 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Star): the star graph is the only triangle-free graph with a universal vertex |
- `starGraph r |>.CliqueFree 3`
- `G.IsUniversal v → G.CliqueFree 3 → G = starGraph v`
- `G.IsUniversal v → (G.IsAcyclic ↔ G.CliqueFree 3)`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/4 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Star.lean |
2 |
3 |
['github-actions', 'vlad902'] |
nobody |
56-19917 1 month ago |
62-65349 62 days ago |
63-34534 63 days |
| 41306 |
vlad902 author:vlad902 |
feat(SimpleGraph): reduce CycleGraph imports |
Reduce the imports for CycleGraph.lean and re-prove and move a few lemmas around as a result.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/23 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/CycleGraph.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean |
3 |
13 |
['SnirBroshi', 'github-actions', 'vlad902'] |
nobody |
55-74913 1 month ago |
61-6858 61 days ago |
61-6780 61 days |
| 36813 |
AlexeyMilovanov author:AlexeyMilovanov |
feat(Computability.Encoding): add self-delimiting unary and pair encodings |
Adds self-delimiting boolean encodings to `Mathlib.Computability.Encoding`.
**Key changes:**
* **`unaryPrefixEncodingNat`**: A self-delimiting unary `Encoding ℕ Bool`, using the code $1^n0$.
* **`encodingProdBool`**: Builds an `Encoding (α × β) Bool` from boolean encodings of `α` and `β`, by prefixing the length of the first encoded component.
* **`encodingListBool`**: Builds an `Encoding (List α) Bool` from a boolean encoding of `α`, using self-delimiting element encodings.
* **`UnaryPrefix` helpers**: Internal-style helper API for the underlying length-prefixed boolean-list encoding and decoding. |
t-computability
new-contributor
|
98/0 |
Mathlib/Computability/Encoding.lean |
1 |
6 |
['AlexeyMilovanov', 'Komyyy', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
55-65165 1 month ago |
55-65165 55 days ago |
72-20922 72 days |
| 41399 |
vlad902 author:vlad902 |
feat(MvPolynomial): ideal generated by variables is prime over a domain |
---
AI: Used Claude to help search for lemmas and golf, no AI code made it into the final 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-ring-theory |
38/5 |
Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/RingTheory/MvPolynomial/Ideal.lean |
2 |
1 |
['github-actions'] |
nobody |
55-3948 1 month ago |
58-3842 58 days ago |
58-5133 58 days |
| 41537 |
Mathias-Stout author:Mathias-Stout |
feat(RingTheory/TwoSidedIdeal/Lattice): add lemmas on two-sided ideals |
We add three lemmas on two-sided ideals.
These are analogues of existing lemmas of `Submodule` with the same names.
This prepares a follow-up PR proving that quaternions are central simple.
Co-authored-by: Justus Springer [justusspringer@gmx.de](mailto:justusspringer@gmx.de)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
13/0 |
Mathlib/RingTheory/TwoSidedIdeal/Lattice.lean |
1 |
5 |
['Whysoserioushah', 'github-actions', 'kbuzzard'] |
nobody |
54-59496 1 month ago |
54-61939 54 days ago |
54-69596 54 days |
| 41548 |
JovanGerb author:JovanGerb |
chore: use `to_dual` for `DedekindCut` |
This PR uses `to_dual` in DedekindCut.
To make this work, we add a shortcut `PartialOrder` instance. We also add some specialized `DedekindCut` theorems, from the more general `Concept` theorems.
Two `gcongr` tags are also added on appropriate 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-order |
35/18 |
Mathlib/Order/Completion.lean |
1 |
1 |
['github-actions'] |
nobody |
54-56292 1 month ago |
54-57025 54 days ago |
54-56905 54 days |
| 41429 |
felixpernegger author:felixpernegger |
chore(Combinatorics): remove a `set_option backward.privateInPublic` |
Together with #41410 this removes all but one global `set_option backward.privateInPublic true`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
8/7 |
Mathlib/Combinatorics/Matroid/Basic.lean,Mathlib/Combinatorics/Matroid/Dual.lean,Mathlib/Combinatorics/Matroid/Loop.lean,Mathlib/Combinatorics/Matroid/Minor/Restrict.lean |
4 |
13 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts', 'vlad902'] |
nobody |
53-76595 1 month ago |
53-77463 53 days ago |
55-77452 55 days |
| 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 |
15/3 |
Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
1 |
1 |
['github-actions'] |
nobody |
52-25278 1 month ago |
52-25847 52 days ago |
52-25727 52 days |
| 41636 |
adomani author:adomani |
chore: add missing `to_additive` docstrings in Algebra/Group actions and homs |
Adds the missing additive doc-strings (multiplicative side has a hand-written doc-string, additive side did not) across 7 file(s) in **Algebra/Group actions and homs**.
The additive doc-strings are simple-minded translations of the multiplicative ones, with referenced lemma names replaced by their `to_additive` counterparts. These gaps were found by an environment linter that pairs each declaration with its `to_additive` counterpart and checks that both or neither is documented.
🤖 Generated with [Claude Code](https://claude.com/claude-code) |
LLM-generated
t-algebra
label:t-algebra$ |
60/21 |
Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/Faithful.lean,Mathlib/Algebra/Group/Action/Hom.lean,Mathlib/Algebra/Group/Action/Units.lean,Mathlib/Algebra/Group/Equiv/Defs.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Units/Hom.lean |
7 |
14 |
['JovanGerb', 'adomani', 'artie2000', 'github-actions'] |
nobody |
50-42841 1 month ago |
50-82086 50 days ago |
51-81832 51 days |
| 41713 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Finite): the `Fintype` instance for `incidenceSet` doesn't need `DecidableEq` |
Now it only requires `Fintype (G.neighborSet v)`.
This caused `incidenceFinset` and theorems about it to complain that `DecidableEq` is unused, so I changed `incidenceFinset` to require `Fintype (G.incidenceSet v)` and fixed the theorems. Theorems that require a finite `neighborSet` can avoid this.
---
The theorem below it also doesn't need `DecidableEq` anymore.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
15/10 |
Mathlib/Combinatorics/SimpleGraph/Finite.lean |
1 |
1 |
['github-actions'] |
nobody |
50-26454 1 month ago |
50-27028 50 days ago |
50-27443 50 days |
| 41668 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Decomp): `dropUntil` API to match existing `takeUntil` API |
---
Slightly more complicated theorems than usual "API" though.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
56/9 |
Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean |
1 |
1 |
['github-actions'] |
nobody |
50-21905 1 month ago |
50-22473 50 days ago |
51-26643 51 days |
| 41435 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Hamiltonian): a graph with a Hamiltonian path is connected |
and other small Hamiltonian lemmas.
---
The new public import is needed because `Nat.card` was previously only imported privately.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
87/18 |
Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean |
1 |
1 |
['github-actions'] |
nobody |
50-9249 1 month ago |
55-9976 55 days ago |
57-28315 57 days |
| 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 |
36/0 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean |
1 |
1 |
['github-actions'] |
nobody |
50-7818 1 month ago |
50-8424 50 days ago |
50-8304 50 days |
| 41709 |
metakunt author:metakunt |
feat(Data/Multiset): change definition of Multiset.Pairwise |
Currently the definition of Multiset.Pairwise seems not right to me. For my project I need to get a decidable instance for a Finset.Pairwise, but the current definition doesn't seem correct and it can't even give me a decidable instance of Pairwise. |
t-data
large-import
|
71/60 |
Mathlib/Data/Finsupp/BigOperators.lean,Mathlib/Data/Fintype/List.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Multiset/Pairwise.lean,Mathlib/Data/Multiset/Replicate.lean,Mathlib/Data/Multiset/ZeroCons.lean,Mathlib/Logic/Relation.lean |
8 |
13 |
['SnirBroshi', 'github-actions', 'metakunt'] |
nobody |
49-72263 1 month ago |
49-72263 49 days ago |
49-72154 49 days |
| 41781 |
teng10 author:teng10 |
feat(Algebra/Representation): add abstract permutation action in TensorPower |
Hello, I'm a new contributor. I had an introduction here on [zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Introduction.3A.20Schur.20Weyl.20Duality/with/607194314)
This PR is a first step in formalizing Shur Weyl duality, which I got feedback that it would be useful to mathlib. The final statement I had in mind has the form
/--
The centralizer of `{g^{⊗k} | g ∈ End(V)}`equals `Span{W_σ | σ ∈ S_k}`, for all dimensions `d` and tensor powers `k`.
---/
This PR tries to define permutation action on TensorPower; define permutation image space.
An initial version of the definition is more specific to the Euclidean space (for reference I list them below)
```
open scoped TensorProduct
variable {d : ℕ} {k : ℕ}
/-- The `k`-fold tensor power of `ℂ^d`, defined as `⨂[ℂ] (i : Fin k), (Fin d → ℂ)`. -/
abbrev PiTensorPower (d k : ℕ) : Type :=
PiTensorProduct ℂ (fun (_ : Fin k) => (Fin d → ℂ))
/-- The permutation operator `W_σ` on the tensor power `V^{⊗k}`.
Given `σ : Equiv.Perm (Fin k)`, this acts by permuting the tensor factors:
`W_σ (v₁ ⊗ ⋯ ⊗ vₖ) = v_{σ⁻¹(1)} ⊗ ⋯ ⊗ v_{σ⁻¹(k)}`. -/
def permAction (d : ℕ) {k : ℕ} (σ : Equiv.Perm (Fin k)) :
PiTensorPower d k ≃ₗ[ℂ] TensV d k :=
PiTensorProduct.reindex ℂ (fun (_ : Fin k) => (Fin d → ℂ)) σ
/-- The set of permutation operators in `End(V^{⊗k})`. -/
def permImage (d k : ℕ) : Set (Module.End ℂ (TensV d k)) :=
Set.range (fun σ : Equiv.Perm (Fin k) => (permAction d σ).toLinearMap)
```
LLM acknowledgement: I have used aristotle to write these definitions. However, I am very motivated to learn how to write proper code. I have looked more into `PiTensorProduct` and `TensorPower` module and came to the abstract version in the PR. I tried to ask aristotle about how it's defining things and whether it's suitable for mathlib.
And I would very much appreciate your thoughts on how appropriate these definitions are. Thanks for your time!
Yanting
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
new-contributor
label:t-algebra$ |
22/0 |
Mathlib/LinearAlgebra/TensorPower/Basic.lean |
1 |
4 |
['github-actions', 'teng10'] |
nobody |
48-63053 1 month ago |
48-65653 48 days ago |
48-65549 48 days |
| 41403 |
YaelDillies author:YaelDillies |
chore(Algebra/SkewMonoidAlgebra): deprecate `sum` |
One should just use `Finsupp.sum` instead.
---
- [x] depends on: #41365
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
125/154 |
Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean,Mathlib/Algebra/SkewMonoidAlgebra/Lift.lean,Mathlib/Algebra/SkewMonoidAlgebra/Support.lean,Mathlib/Algebra/SkewPolynomial/Basic.lean |
4 |
15 |
['YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-dependent-issues'] |
nobody |
48-54099 1 month ago |
55-79362 55 days ago |
55-82844 55 days |
| 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 |
16/2 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
3 |
1 |
['github-actions'] |
nobody |
48-48572 1 month ago |
48-49149 48 days ago |
48-49029 48 days |
| 38815 |
dagurtomas author:dagurtomas |
feat(Tactic/CategoryTheory): extend `@[to_app]` to natural transformations |
This extends the `@[to_app]` attribute so it also generates componentwise lemmas from equalities of natural transformations between functors, while preserving the existing bicategory behavior. It also ensures generated component lemmas remain usable by dsimp when they are definitionally true. |
t-category-theory
LLM-generated
t-meta
|
148/22 |
Mathlib/Tactic/CategoryTheory/ToApp.lean,Mathlib/Util/AddRelatedDecl.lean,MathlibTest/CategoryTheory/ToApp.lean |
3 |
1 |
['github-actions'] |
nobody |
48-32343 1 month ago |
123-57843 123 days ago |
123-57777 123 days |
| 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 |
48-30064 1 month ago |
48-30585 48 days ago |
56-13426 56 days |
| 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 |
5 |
['b-mehta', 'espottesmith', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
47-70774 1 month ago |
72-67782 72 days ago |
209-71410 209 days |
| 41821 |
Timeroot author:Timeroot |
chore(Order/Basic): add grind _=_ to Subtype.coe_lt_coe, coe_le_coe |
Add grind annotations to Subtype.coe_le_coe and Subtype.coe_lt_coe.
As noted in [this zulip thread](https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/grind.20failures/near/610812085), grind was failing to solve some fairly simple goals, and I think these are generally good annotations to have. (I think they will usually fire usefully.)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
2/2 |
Mathlib/Order/Basic.lean |
1 |
4 |
['Timeroot', 'github-actions', 'leanprover-radar'] |
nobody |
47-64677 1 month ago |
47-70080 47 days ago |
47-69960 47 days |
| 41732 |
vaca22 author:vaca22 |
feat(RingTheory/ClassGroup): add mulEquiv_mk0 |
Add a simp lemma describing how the class-group equivalence induced by a ring equivalence acts on the class of a nonzero ideal.
The image is the class of the ideal mapped along the ring equivalence. The proof compares the corresponding fractional ideals through the existing class-group equivalence and localization membership API.
**AI disclosure**: this PR is primarily LLM-generated (Claude Code).
|
t-ring-theory
new-contributor
LLM-generated
|
43/0 |
Mathlib/RingTheory/ClassGroup/Basic.lean |
1 |
3 |
['github-actions', 'vaca22'] |
nobody |
47-59765 1 month ago |
49-75039 49 days ago |
49-74919 49 days |
| 41830 |
Jun2M author:Jun2M |
feat(Data/PFun): add lemmas for ran, restrict, map, image and preimage |
Add missing simp / API lemmas for partial functions, and strengthen `preimage_inter`
from a subset inclusion to an equality. Also tag a few `Part` uniqueness lemmas
for `grind`.
- `Part`: `grind` attributes on `get_mem`, `mem_unique`, `mem_right_unique`
- `ran`: `ran_coe`, `ran_eq_empty_iff_dom_eq_empty`
- `restrict`: `dom_restrict`, `restrict_restrict`, `ran_restrict`, `preimage_restrict`
- `map`: `dom_map`, `mem_map`, `ran_map`, `image_map`, `preimage_map`
- `image` / `preimage`: `image_subset_ran`, `preimage_empty`,
`disjoint_preimage_of_disjoint`, plus `simp`/`gcongr` attributes
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
86/3 |
Mathlib/Data/PFun.lean,Mathlib/Data/Part.lean |
2 |
2 |
['github-actions'] |
nobody |
47-48895 1 month ago |
47-53581 47 days ago |
47-53461 47 days |
| 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 |
141/0 |
Mathlib.lean,Mathlib/Combinatorics/Design/Defs.lean |
2 |
1 |
['github-actions'] |
nobody |
47-47276 1 month ago |
47-47331 47 days ago |
47-47212 47 days |
| 41729 |
vaca22 author:vaca22 |
feat(RingTheory/DedekindDomain): add divisor group core |
Add the formal divisor group of a Dedekind domain and bundle the existing factorization API as an additive equivalence between nonzero fractional ideals and divisors.
Divisors are finitely supported integer-valued functions on height-one primes. divisor records FractionalIdeal.count, ofDivisor reconstructs a fractional ideal from prime powers, and divisorEquiv proves these operations are inverse and send ideal multiplication to divisor addition.
------------
This is the core of the earlier larger proposal. Principal divisors and weighted degrees are deliberately left for later pull requests.
**AI disclosure**: this PR is primarily LLM-generated (Claude Code).
|
t-ring-theory
new-contributor
LLM-generated
|
100/0 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Divisor.lean |
2 |
4 |
['github-actions', 'grunweg', 'vaca22'] |
nobody |
47-43212 1 month ago |
47-43212 47 days ago |
49-40295 49 days |
| 41863 |
scholzhannah author:scholzhannah |
chore(Order/Filter/Extr): rename various lemmas |
Per the mathlib naming 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
95/61 |
Mathlib/Analysis/Calculus/LocalExtr/LineDeriv.lean,Mathlib/Analysis/Complex/AbsMax.lean,Mathlib/Order/Filter/Extr.lean,Mathlib/Topology/Order/LocalExtr.lean,Mathlib/Topology/Order/Rolle.lean |
5 |
2 |
['github-actions'] |
nobody |
46-62707 1 month ago |
46-62754 46 days ago |
46-62642 46 days |
| 40624 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Finite): `Set.ncard` of `neighborSet` |
Since #39414 the simpNF of the cardinality of `neighborSet` uses `Set.ncard` rather than `Fintype.card`, therefore we import `Set.ncard` into `SimpleGraph/Finite.lean` and show `(G.neighborSet v).ncard = G.degree v`.
Also includes some other results that benefit from the import/lemma:
- `(commonNeighbors ⊤ u v).encard = ENat.card V - 2`
- `(G.map f).degree (f v) = G.degree v` for an injective `f`
- `G'.degree (f v) = G.degree v` for `f : G ↪g G'`, given `G'.neighborSet (f v) ⊆ Set.range 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-combinatorics
large-import
|
44/7 |
Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/IncMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
3 |
1 |
['github-actions'] |
nobody |
46-37592 1 month ago |
78-83896 78 days ago |
78-83776 78 days |
| 41887 |
Ljon4ik4 author:Ljon4ik4 |
feat: lemmas showing properties of ofDerivation added |
Given an `R`-Lie algebra `L` and a commutative `R`-algebra `A`, there is a Lie algebra structure on `(A ⊗[R] L)`.
A derivation of `A` induces a Lie derivation of `(A ⊗[R] L)`, and one obtains a Lie algebra map
```
ofDerivation : Derivation R A A →ₗ⁅R⁆ LieDerivation R (A ⊗[R] L) (A ⊗[R] L)
```
In this PR we add a Lemma showing that `ofDerivation` is in fact `A`-linear, and that the resulting LieDerivation satisfies a Leibniz rule with respect to the `A`-multiplication on `A ⊗[R] L`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
13/0 |
Mathlib/Algebra/Lie/Derivation/BaseChange.lean |
1 |
1 |
['github-actions'] |
nobody |
45-69946 1 month ago |
45-70491 45 days ago |
45-73347 45 days |
| 41567 |
kim-em author:kim-em |
doc: fix TFAE list rendering in Rees theorem module docstring |
This PR fixes the module docstring of `Mathlib/RingTheory/Depth/Rees.lean`: the four TFAE items used `·`, which is not a markdown list marker, so they rendered as a single run-on paragraph on doc-gen. Replace them with proper `*` sub-list items, add the missing "and nontrivial" to the first item to match the Lean statement, and drop the unused binder name `Nfin` in `subsingleton_ext_of_exists_isRegular`.
Follow-up to [#26212 (feat(Algebra): the Rees theorem for depth)](https://github.com/leanprover-community/mathlib4/pull/26212), where the reviewer deferred checking the rendered docs to after the merge.
🤖 Prepared with Claude Code
|
t-ring-theory
LLM-generated
|
6/5 |
Mathlib/RingTheory/Depth/Rees.lean |
1 |
1 |
['github-actions'] |
nobody |
45-65115 1 month ago |
45-65171 45 days ago |
45-65051 45 days |
| 41570 |
kim-em author:kim-em |
doc: fix and add docstrings in RingTheory/Invariant/Galois |
This PR fixes the docstring of `Ideal.Quotient.normal`, which was copy-pasted from `Ideal.Quotient.exists_algHom_fixedPoint_quotient_under` and did not describe the statement `Normal (A ⧸ P) (B ⧸ Q)`, and add docstrings to `Ideal.IsFractionRing.normal` and `Ideal.IsFractionRing.finite_of_isInvariant`, matching the phrasing of the sibling results in `RingTheory/Invariant/Basic.lean`.
Follow-up to [#40247 (feat(RingTheory/Invariant/Basic): generalize `Ideal.Quotient.normal` to `IsFractionRing`)](https://github.com/leanprover-community/mathlib4/pull/40247).
🤖 Prepared with Claude Code
|
t-ring-theory
LLM-generated
|
5/3 |
Mathlib/RingTheory/Invariant/Galois.lean |
1 |
1 |
['github-actions'] |
nobody |
45-65114 1 month ago |
45-65141 45 days ago |
45-65021 45 days |
| 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 |
45-64618 1 month ago |
45-64618 45 days ago |
45-64498 45 days |
| 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'] |
nobody |
45-62846 1 month ago |
45-64175 45 days ago |
57-8117 57 days |
| 39420 |
mbkybky author:mbkybky |
feat(RingTheory/LocalProperties): `Module.Invertible` is a local property |
Let `M` be a finite `R`-module. We show that `M` is invertible if `Mₘ` is invertible for any maximal ideal `m` of `R`.
- [x] depends on: #39109
- [x] depends on: #39412
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
101/0 |
Mathlib.lean,Mathlib/RingTheory/LocalProperties/Invertible.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
45-21256 1 month ago |
45-21813 45 days ago |
53-81300 53 days |
| 41911 |
kedlaya author:kedlaya |
feat(FieldTheory): implement Artin-Schreier extensions, Artin-Schreier theorem |
Implement the Artin-Schreier description of cyclic degree-p extensions of fields of characteristic p, and the related theorem of Artin-Schreier that a field with a finite algebraically closed extension is either algebraically closed or real closed.
|
t-algebra
new-contributor
label:t-algebra$ |
486/0 |
Mathlib.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/FieldTheory/ArtinSchreierExtension.lean,Mathlib/FieldTheory/IsRealClosed/ArtinSchreier.lean |
4 |
11 |
['SnirBroshi', 'github-actions', 'jcommelin', 'kedlaya'] |
nobody |
45-17696 1 month ago |
45-26546 45 days ago |
45-27767 45 days |
| 41934 |
NickKobs author:NickKobs |
feat(Order/Nucleus): a nucleus on a Boolean algebra is closed |
Adds `Mathlib/Order/Nucleus/Boolean.lean` — the Boolean specialization of the nucleus API:
```lean
theorem Nucleus.apply_eq_sup_apply_bot [BooleanAlgebra X] (n : Nucleus X) (a : X) :
n a = a ⊔ n ⊥
theorem Nucleus.isClosed_of_booleanAlgebra [BooleanAlgebra X] (n : Nucleus X) :
⇑n = fun a => a ⊔ n ⊥
theorem Nucleus.eq_of_apply_bot_eq [BooleanAlgebra X] {m n : Nucleus X} (h : m ⊥ = n ⊥) :
m = n
```
**Why.** `Mathlib.Order.Nucleus` provides the frame / Heyting-algebra structure of `Nucleus X`, the closure-operator view (`toClosureOperator`), and the pointwise `le_apply` / `idempotent` / `map_inf` API, but no Boolean specialization. On a Boolean algebra every nucleus is *closed* — completely determined by its value at `⊥` — which is the pointwise algebraic core of the classical fact that the assembly `N(L)` is Boolean iff `L` is (Beazer–Macnab; Simmons; Johnstone, *Stone Spaces*, II.2). It is the natural companion to the existing frame structure and a common building block in point-free topology.
**Proof.** `n a = n a ⊓ (a ⊔ aᶜ) = (n a ⊓ a) ⊔ (n a ⊓ aᶜ)`; the left join-and is `a` (inflationarity), the right is `≤ n a ⊓ n aᶜ = n (a ⊓ aᶜ) = n ⊥` (inflationarity of `aᶜ` + `map_inf`). The reverse inequality is inflationarity plus monotonicity applied to `⊥ ≤ a`. No completeness is needed — the statement is pointwise, so `[BooleanAlgebra X]` (not a complete Boolean algebra) suffices.
**References.**
* R. Beazer, D. S. Macnab, *Modal extensions of Heyting algebras*.
* H. Simmons, *A framework for topology*, Logic Colloquium '77.
* P. T. Johnstone, *Stone Spaces*, CUP (1982), II.2.
**Provenance.** The theorem was first mechanized (Mathlib-free, over a finite Boolean frame) in the BETTI/Araksha refusal-algebra work; this PR is the generalization to an arbitrary `BooleanAlgebra` against Mathlib's own `Nucleus` API. The result is classical open mathematics, cited above. An earlier revision of the file was compiled clean against master `c81c5cbb` (Lean `v4.33.0-rc1`); this revision adapts the header to the module system (`module` / `public import` / `@[expose] public section`).
|
t-order
new-contributor
LLM-generated
|
71/0 |
Mathlib.lean,Mathlib/Order/Nucleus/Boolean.lean |
2 |
5 |
['felixpernegger', 'github-actions'] |
nobody |
44-33100 1 month ago |
44-46843 44 days ago |
44-46723 44 days |
| 41947 |
hawkrobe author:hawkrobe |
feat(Order/Antisymmetrization): comparable minimal elements are equivalent |
Adds `Minimal.antisymmRel_of_ge` and `Minimal.antisymmRel_of_symmGen` at preorder generality.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
|
32/3 |
Mathlib/Order/Antisymmetrization.lean |
1 |
2 |
['github-actions'] |
nobody |
44-19481 1 month ago |
44-23567 44 days ago |
44-23447 44 days |
| 41860 |
tb65536 author:tb65536 |
feat(GroupTheory/Index): formula for index of centralizer of an element |
This PR proves the formula for the index of the centralizer of an element.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-group-theory
label:t-algebra$ |
23/1 |
Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/Index.lean |
2 |
3 |
['github-actions', 'plp127', 'tb65536'] |
nobody |
43-10526 1 month ago |
46-69632 46 days ago |
46-69513 46 days |
| 30637 |
strihanje01 author:strihanje01 |
feat(Combinatorics/SetFamily/Lindstrom): Lindstrom's theorem for subfamilies with equal unions |
add Lindstrom's theorem and its strengthening for equal intersections
---
<!-- 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
|
211/0 |
Mathlib.lean,Mathlib/Combinatorics/SetFamily/Lindstrom.lean |
2 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
41-32344 1 month ago |
62-85808 62 days ago |
94-48784 94 days |
| 42024 |
NoneMore author:NoneMore |
feat(Data/Set/Card): characterize finite lower bounds on encard |
A set has the cardinality at least `n` if and only if it has a sequence of length `n` with distinct elements.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
AI disclosure: The proof was structurally simplified following the `/lean4:golf` workflow from Lean 4 Skills.
[](https://gitpod.io/from-referrer/)
|
t-data |
16/0 |
Mathlib/Data/Set/Card.lean |
1 |
1 |
['github-actions'] |
nobody |
40-83076 1 month ago |
40-85063 40 days ago |
40-84943 40 days |
| 41544 |
YaelDillies author:YaelDillies |
refactor(Algebra/Polynomial): make `coeff` return a `Finsupp` |
This matches `AddMonoidAlgebra`.
Change made by myself, build fixed by Claude Opus, with the fixes reviewed by myself again.
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-algebra label:t-algebra$ |
29/23 |
Counterexamples/MapFloor.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/Degree.lean,Mathlib/Data/Nat/Choose/Lucas.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/RingTheory/IsAdjoinRoot.lean,Mathlib/RingTheory/Polynomial/Eisenstein/IsIntegral.lean,Mathlib/RingTheory/Polynomial/ScaleRoots.lean,Mathlib/RingTheory/Polynomial/UniversalFactorizationRing.lean,Mathlib/RingTheory/Polynomial/Vieta.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/Tactic/ComputeDegree.lean |
12 |
3 |
['SnirBroshi', 'YaelDillies', 'github-actions'] |
nobody |
40-3514 1 month ago |
50-7693 50 days ago |
50-9408 50 days |
| 39808 |
chenson2018 author:chenson2018 |
chore(Data): refactor proofs where `grind?` fails |
These are sources of technical debt as now reported in the [weekly linting report](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Weekly.20linting.20log/with/544658968). The idea is that a successful `grind` proof can fail to report the theorems it used via `grind?`, which means that if these proofs break across toolchains that it becomes significantly harder to repair.
Most of these are fixed by squeezing the call to `grind` and unsetting `linter.tacticAnalysis.verifyGrindOnly` so they no longer appear in the weekly report. Unfortunately, this can't be on by default for performance reasons, but I highly encourage using this linter when adding any `grind` 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-data
tech debt
|
69/41 |
Mathlib/Data/Bool/Basic.lean,Mathlib/Data/Bool/Set.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/Fin/Tuple/NatAntidiagonal.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Finset/Range.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Count.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/List/Induction.lean,Mathlib/Data/List/ReduceOption.lean,Mathlib/Data/List/Sigma.lean,Mathlib/Data/List/Sort.lean,Mathlib/Data/List/TakeDrop.lean,Mathlib/Data/List/Triplewise.lean,Mathlib/Data/Option/Basic.lean,Mathlib/Data/Set/Card.lean,Mathlib/Data/Set/Disjoint.lean,Mathlib/Data/Set/Function.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Sum/Order.lean |
24 |
4 |
['Vierkantor', 'chenson2018', 'github-actions'] |
nobody |
40-3056 1 month ago |
100-17685 100 days ago |
100-17565 100 days |
| 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'] |
nobody |
39-79459 1 month ago |
40-31029 40 days ago |
40-30909 40 days |
| 42047 |
LegaSage author:LegaSage |
feat(RingTheory): add locally nilpotent derivations |
This introduces `Derivation.IsLocallyNilpotent` and basic iteration lemmas for locally nilpotent derivations. The main result is the method-style theorem `Derivation.IsLocallyNilpotent.apply_eq_zero_of_dvd`: over a characteristic-zero domain, if `f ∣ D f` for a locally nilpotent derivation `D`, then `D f = 0`.
The proof uses the iterated Leibniz rule and the top nonvanishing iterates of the two factors.
-----
The implementation and PR text were prepared with assistance from OpenAI Codex. |
t-ring-theory
new-contributor
LLM-generated
|
167/0 |
Mathlib.lean,Mathlib/RingTheory/Derivation/LocallyNilpotent.lean |
2 |
2 |
['github-actions'] |
nobody |
39-79440 1 month ago |
40-31029 40 days ago |
40-30909 40 days |
| 41457 |
NoahW314 author:NoahW314 |
feat(Algebra/Group/Units/Basic): deduplicate lemmas by generalizing to `IsDedekindFiniteMonoid` |
Generalize a group of lemmas to `IsDedekindFiniteMonoid` which previously had versions for `CommMonoid`, `LeftCancelMonoid`, `RightCancelMonoid`, `CancelMonoid`, and `Ordinal`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
30/86 |
Mathlib/Algebra/AffineMonoid/Irreducible.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Horn.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Exponential.lean,scripts/nolints_prime_decls.txt |
7 |
4 |
['NoahW314', 'Vierkantor', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
39-75228 1 month ago |
39-75228 39 days ago |
56-29277 56 days |
| 42082 |
attilavjda author:attilavjda |
feat(FieldTheory): reduce Frobenius powers modulo the extension degree |
Adds ring-hom and pointwise lemmas reducing powers of Frobenius modulo the extension degree of a finite 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/)
|
t-algebra
new-contributor
label:t-algebra$ |
12/0 |
Mathlib/FieldTheory/Finite/Basic.lean |
1 |
5 |
['attilavjda', 'felixpernegger', 'github-actions'] |
nobody |
38-69254 1 month ago |
38-70038 38 days ago |
38-78389 38 days |
| 42117 |
plp127 author:plp127 |
feat: locally compact left-uniform group is complete |
Prove that a locally compact left-uniform group is complete. We already have the theorem for right-uniform groups.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
28/4 |
Mathlib/Topology/Algebra/IsUniformGroup/Basic.lean |
1 |
7 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'plp127'] |
nobody |
37-35792 1 month ago |
37-53155 37 days ago |
37-53035 37 days |
| 42125 |
NoneMore author:NoneMore |
feat(SetTheory/Cardinal): add cardinality bounds for direct limits |
Add an equivalence between a direct limit and its component at an upper-bound index. Use it to prove upper and lower cardinality bounds and criteria for computing the cardinality of direct limits.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
AI disclosure: Most declarations, comments, and documentation in this PR were generated with Codex.
[](https://gitpod.io/from-referrer/)
|
LLM-generated |
109/0 |
Mathlib.lean,Mathlib/Order/DirectedInverseSystem.lean,Mathlib/SetTheory/Cardinal/DirectLimit.lean |
3 |
2 |
['felixpernegger', 'github-actions'] |
nobody |
37-13896 1 month ago |
37-14748 37 days ago |
37-14628 37 days |
| 42141 |
plp127 author:plp127 |
chore(FieldTheory/Galois/Basic): API for `fixingSubgroupEquiv` and `subgroupEquivAlgEquiv` |
Add lemmas saying what `IntermediateField.fixingSubgroupEquiv` and `IntermediateField.subgroupEquivAlgEquiv` do when applied. Previously there were no lemmas at all mentioning these declarations.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/0 |
Mathlib/FieldTheory/Galois/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
36-71695 1 month ago |
36-72577 36 days ago |
36-72457 36 days |
| 42140 |
mcdoll author:mcdoll |
feat(LinearAlgebra): use `IsApply` for `AlternatingMap` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
56/52 |
Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/LinearAlgebra/Determinant.lean,Mathlib/LinearAlgebra/Orientation.lean,Mathlib/MeasureTheory/Measure/Lebesgue/EqHaar.lean |
5 |
3 |
['github-actions', 'mcdoll'] |
nobody |
36-35989 1 month ago |
36-35989 36 days ago |
36-35869 36 days |
| 42153 |
Whysoserioushah author:Whysoserioushah |
feat(LinearAlgebra/Projectivization/PSL): the general case of PSL |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
LLM-generated
|
328/20 |
Mathlib.lean,Mathlib/GroupTheory/Subgroup/Center.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/Projectivization/PSL/PSL2.lean,Mathlib/LinearAlgebra/Projectivization/PSL/PSLn.lean,Mathlib/LinearAlgebra/Projectivization/PSL/Stabilizer.lean |
7 |
3 |
['github-actions', 'mathlib-bors'] |
nobody |
36-23796 1 month ago |
36-60278 36 days ago |
36-60181 36 days |
| 41828 |
archiebrowne author:archiebrowne |
feat(RingTheory/HopfAlgebra/Convolution): add `ofAntipodeOfAdjoin` |
Adds `HopfAlgebra.ofAntipodeOfAdjoin`, which upgrades a bialgebra `A` to a Hopf
algebra given an algebra anti-homomorphism `S : A →ₐ[R] Aᵐᵒᵖ` that satisfies the
two antipode identities *only on a generating set* `X` with `adjoin R X = ⊤`.
Main additions (`Mathlib/RingTheory/HopfAlgebra/Basic.lean`):
* `HopfAlgebra.mul_antipode_rTensor_comul_adjoin_top` /
`HopfAlgebra.mul_antipode_lTensor_comul_adjoin_top`: the antipode axioms hold on
all of `A` when they hold on a generating set.
* `HopfAlgebra.ofAntipodeOfAdjoin`: the resulting `HopfAlgebra R A` structure,
with `antipode := (opLinearEquiv R).symm.toLinearMap ∘ₗ S.toLinearMap`.
Also in (`Mathlib/RingTheory/HopfAlgebra/Convolution.lean`):
* Golf `antipode_mul_id`, `id_mul_antipode`, and `antipode_id_cancel`.
* Add `id_antipode_cancel` (mirror of `antipode_id_cancel`). |
t-ring-theory
new-contributor
|
89/9 |
Mathlib/RingTheory/HopfAlgebra/Convolution.lean |
1 |
2 |
['github-actions'] |
nobody |
36-8785 1 month ago |
47-55063 47 days ago |
47-55985 47 days |
| 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/3 |
Mathlib/Order/Partition/Basic.lean,Mathlib/Order/Partition/Finpartition.lean,Mathlib/Order/SupIndep.lean |
3 |
1 |
['github-actions'] |
nobody |
35-75019 1 month ago |
35-77191 35 days ago |
35-77071 35 days |
| 40416 |
sparckix author:sparckix |
feat(Order/Monotone): add diagonal subsequence extraction |
This PR adds a small diagonal extraction lemma for nested strictly monotone subsequences of `Nat`.
Given strict-mono maps `φ k : Nat -> Nat` such that each `φ (k + 1)` factors through `φ k` by a strict-mono map `τ k`, the diagonal sequence `fun n => φ n n` is strictly monotone and each tail of the diagonal factors through the corresponding `φ k` by a strict-mono map.
The lemma is intended as a reusable sequence/order fact and is placed near `Nat.exists_strictMono_subsequence`.
Local checks run:
```text
lake env lean Mathlib/Order/Monotone/Basic.lean
lake build Mathlib.Order.Monotone.Basic
lake exe lint-style Mathlib/Order/Monotone/Basic.lean
git diff --check
```
AI assistance disclosure: I used AI tools, including Codex and external model feedback, to help extract and review this small lemma from a local formalization project. I have checked the statement and proof myself and am responsible for the submitted code.
|
t-order
new-contributor
LLM-generated
|
66/0 |
Mathlib/Order/Monotone/Basic.lean |
1 |
3 |
['github-actions', 'pepamontero'] |
nobody |
35-69518 1 month ago |
84-64276 84 days ago |
84-64156 84 days |
| 42079 |
JX-Mo author:JX-Mo |
refactor(RepresentationTheory): weaken condition of Schur's lemma |
Replace the condition `[FiniteDimensional k V]` of Schur's lemma by `[FiniteDimensional k (IntertwiningMap ρ ρ)]`. Note that the former will automatically give the latter by typeclass inference.
This has an immediate downstream application: irreducible admissible smooth representations (of e.g. GL2(Qp)) are usually not finite dimensional but the weaker condition`[FiniteDimensional k (IntertwiningMap ρ ρ)]` can be easily deduced from the definition of being "irreducible admissible smooth". |
new-contributor
t-algebra
label:t-algebra$ |
16/14 |
Mathlib/RepresentationTheory/AlgebraRepresentation/Basic.lean,Mathlib/RepresentationTheory/Irreducible.lean |
2 |
6 |
['JX-Mo', 'Whysoserioushah', 'github-actions', 'pepamontero'] |
nobody |
35-69420 1 month ago |
39-21057 39 days ago |
39-20937 39 days |
| 41678 |
JX-Mo author:JX-Mo |
refactor(RepresentationTheory): record the concrete binary biproduct |
Record the concrete binary biproduct explicitly from the instance `HasBinaryBiproducts` to make its _**proof**_ reusable. This strengthens the exposed mathematical statement from "_the biproduct exists_" to "_the biproduct exists and is isomorphic to_ `prod _ _`".
This has an immediate downstream application: to prove that the property of being smooth is stable under product, we need to reconstruct the "product". The current instance `HasBinaryBiproducts` only tells that the product exists and the information about how the product looks like is not directly available, so now we need to reprove that `prod` is a concrete categorical (bi)product. This PR aims to eliminate such future duplicated proofs. |
t-algebra
new-contributor
label:t-algebra$ |
23/7 |
Mathlib/RepresentationTheory/Rep/Basic.lean |
1 |
9 |
['JX-Mo', 'Whysoserioushah', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
35-33739 1 month ago |
35-34371 35 days ago |
50-81141 50 days |
| 42188 |
arcaputo3 author:arcaputo3 |
feat(Combinatorics/SimpleGraph): the line graph signature identity |
For a finite simple graph `G` with `n` vertices and `m` edges, we prove the classical identity
`s(A(L(G))) = n - m + p - q`
where `s` is the signature of the (real) adjacency matrix of the line graph `L(G)`, and `(p, q)` are the numbers of positive/negative eigenvalues of `Q(G) - 2•1`, with `Q(G) = D(G) + A(G)` the signless Laplacian, all counted with multiplicity.
The proof is the Gram-pairing argument: the `V × E(G)` incidence matrix `B` satisfies `Bᵀ * B = A(L(G)) + 2•1` and `B * Bᵀ = Q(G)`, and the two products have equal nonzero spectra by `Matrix.charpoly_mul_comm'`. Eigenvalue counts are transported along the resulting root-multiset identity.
New declarations:
- `Mathlib/Analysis/Matrix/Inertia.lean`: the inertia indices `Matrix.IsHermitian.posInertia` / `negInertia` / `signature` of a real symmetric matrix, and `Matrix.IsHermitian.charpoly_add_smul_one` / `roots_charpoly_add_smul_one` (the characteristic polynomial of `A + c • 1` splits over the shifted eigenvalues).
- `Mathlib/Combinatorics/SimpleGraph/LineGraphSignature.lean`: `SimpleGraph.signlessLapMatrix`, `SimpleGraph.edgeIncMatrix` (the `V × E(G)`-indexed incidence matrix) together with the two Gram identities above (stated over an arbitrary (non-assoc) semiring), a `DecidableRel` instance for `lineGraph.Adj`, and the main theorem `SimpleGraph.signature_adjMatrix_lineGraph`.
---
**AI disclosure** (per the mathlib policy on AI-assisted contributions): this PR was formalized end-to-end with Claude Code (Anthropic model Claude Fable 5). The choice of statement and the decision to contribute are mine; the Lean proofs were authored by the tool and verified by compilation. `#print axioms SimpleGraph.signature_adjMatrix_lineGraph` reports `[propext, Classical.choice, Quot.sound]`.
Notes for reviewers:
- `signlessLapMatrix` could alternatively live in `Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean`, and the `DecidableRel G.lineGraph.Adj` instance in `LineGraph.lean`; happy to move them.
- The inertia API is deliberately minimal (what the main theorem needs); extensions (e.g. rank/inertia relations, congruence invariance / Sylvester's law) would be natural follow-ups.
- I do not yet have push access to non-master mathlib branches, so this PR comes from a fork; happy to move the branch onto the main repository once access is granted.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
new-contributor
LLM-generated
|
326/0 |
Mathlib.lean,Mathlib/Analysis/Matrix/Inertia.lean,Mathlib/Combinatorics/SimpleGraph/LineGraphSignature.lean |
3 |
2 |
['github-actions'] |
nobody |
35-20577 1 month ago |
35-71048 35 days ago |
35-70928 35 days |
| 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'] |
nobody |
35-5489 1 month ago |
35-6055 35 days ago |
35-5935 35 days |
| 42231 |
mcdoll author:mcdoll |
doc(Analysis/SpecialFunctions): mention junk value for poles of Gaussian hypergeometric function |
The Gaussian hypergeometric function has a pole for `c = -k`, this is currently not mentioned at all in the 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-analysis |
6/2 |
Mathlib/Analysis/SpecialFunctions/OrdinaryHypergeometric.lean |
1 |
1 |
['github-actions'] |
nobody |
34-81325 1 month ago |
34-81906 34 days ago |
34-81786 34 days |
| 36275 |
smmercuri author:smmercuri |
feat: norm for the finite adele ring of a number field |
---
- [x] depends on: #35820
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
|
|
151/3 |
Mathlib.lean,Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/FiniteAdeleRing.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean |
6 |
5 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
34-60393 1 month ago |
40-74311 40 days ago |
97-6377 97 days |
| 42164 |
CoolRmal author:CoolRmal |
feat(MeasureTheory): one-sided continuous functions are measurable |
The following lemmas are proved in this PR:
- the image of a set of a second-countable linear order under a right-continuous function is a
separable space.
- a right continuous function is measurable.
- a right continuous function is strongly measurable.
The corresponding statements for left continuous functions are also included.
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 strongly measurable, 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).
---
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
|
68/0 |
Mathlib/MeasureTheory/Constructions/BorelSpace/Order.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/Topology/Order/LeftRightNhds.lean |
3 |
1 |
['github-actions'] |
nobody |
34-57030 1 month ago |
34-64060 34 days ago |
34-63940 34 days |
| 41619 |
JovanGerb author:JovanGerb |
fix(Order/Notation): unify at correct transparency in sup/inf delaborators |
This PR fixes the `sup`/`inf` delaborators to use the correct transparency when unifying instances.
I discovered this problem when using `#click_suggestions`. It has the funny property of delaborating at the reducible transparency level instead of default (which usually doesn't affect delaboration, but in this case does)
Note: we may delay this PR until the next Lean version, since it splits this transparency level. The one we will then need is the implicit transparency.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
4/4 |
Mathlib/Order/Notation.lean |
1 |
1 |
['github-actions'] |
nobody |
34-29572 1 month ago |
52-71533 52 days ago |
52-71413 52 days |
| 41918 |
CoolRmal author:CoolRmal |
feat(Topology/Order): separability is hereditary for linearly ordered topological spaces |
In this PR we prove that
1. `isTopologicalBasis_isOpen_ordConnected`: in a linearly ordered topological space, every point of an open set `U` has an open `Set.OrdConnected` neighbourhood contained in `U`.
2. `countable_setOf_isolated_subtype`: in a separable linearly ordered topological space, the points of a subset `s` that are isolated in the subspace `s` form a countable set.
3. A subset of a separable linearly ordered topological space is separable in the subspace topology. This is proved as an instance.
The material was developed for showing the measurability of the pathwise variation of a continuous stochastic process in https://github.com/RemyDegenne/brownian-motion/pull/494. Created with the help of Claude Code, carefully reviewed and golfed by myself.
|
t-topology |
153/0 |
Mathlib.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Order/Separable.lean |
3 |
2 |
['CoolRmal', 'felixpernegger', 'github-actions'] |
nobody |
34-23883 1 month ago |
34-25648 34 days ago |
45-19996 45 days |
| 42223 |
cameronfreer author:cameronfreer |
feat(Computability/Reduce): the halting problem is many-one complete |
`Mathlib/Computability/Halting.lean` proves that the halting problem is recursively enumerable (`ComputablePred.halting_problem_re`) and not computable (`ComputablePred.halting_problem`), but not that it is complete: there is no `REPred R → R ≤₀ K`, and neither `Halting.lean` nor `RE.lean` mentions `≤₀`.
This PR adds three results:
```lean
theorem REPred.manyOneReducible_halting_problem {R : ℕ → Prop} (h : REPred R) (n : ℕ) :
R ≤₀ fun c : Code => (Code.eval c n).Dom
theorem halting_problem_manyOneEquiv_halting_problem₂ (n : ℕ) :
ManyOneEquiv (fun c : Code => (Code.eval c n).Dom)
(fun p : Code × ℕ => (Code.eval p.1 p.2).Dom)
theorem REPred.manyOneReducible_halting_problem₂ {R : ℕ → Prop} (h : REPred R) :
R ≤₀ fun p : Code × ℕ => (Code.eval p.1 p.2).Dom
```
(I've stated the results in `Reduce.lean` rather than alongside the other halting-problem results because `≤₀` is defined here, and `Reduce` imports `Halting` rather than the other way around.)
🤖 These proofs were written with the assistance of Claude Opus 5 high and reviewed by GPT Sol 5.6 xhigh.
|
t-computability
new-contributor
LLM-generated
|
41/0 |
Mathlib/Computability/Reduce.lean |
1 |
3 |
['cameronfreer', 'github-actions'] |
nobody |
33-68578 1 month ago |
35-9986 35 days ago |
35-9866 35 days |
| 42189 |
cameronfreer author:cameronfreer |
feat(ModelTheory/Basic): add characterization of languages with countably many symbols |
`Language.Countable.countable_functions` currently projects `Countable L.Symbols` onto the function symbols, but there is no counterpart for relations. This PR adds the missing instance; in doing so it relates the two ways that Mathlib already expresses "countable language": the bundled `Language.card ≤ ℵ₀` and the unbundled `Countable (Σ l, L.Functions l)` / `Countable (Σ l, L.Relations l)` hypotheses that model-theoretic statements tend to carry separately.
* `Countable.countable_relations`, `countable_symbols_iff`, and `card_le_aleph0_iff_countable` connect the bundled and unbundled formulations of symbol countability.
* `Countable.countable_sum`, `Countable.countable_constantsOn`, and `Countable.countable_withConstants` centralize countability instances for language constructors and remove the corresponding local instances from `Encoding.lean`.
## Motivation
Following review feedback from @NoneMore, this PR now also simplifies existing Mathlib code: generic countability instances for `Language.sum`, `constantsOn`, and `withConstants` live beside those constructors, so `Encoding.lean` no longer needs its own cardinal-arithmetic proofs for them.
The broader motivation comes from projects in infinitary model theory that build on Mathlib, in which one typically needs to carry around a hypothesis about countability of the set of symbols.
Specifically, in [cameronfreer/infinitary-logic](https://github.com/cameronfreer/infinitary-logic) the two sorts are carried unbundled and independently throughout; there are roughly 180 occurrences of the relation-symbol hypothesis and 24 of the function-symbol one. Here are a few examples:
* [`Methods/Henkin/ModelExistence.lean#L60`](https://github.com/cameronfreer/infinitary-logic/blob/1a478e80794080a536931c029281bb65266b3171/InfinitaryLogic/Methods/Henkin/ModelExistence.lean#L60): model existence, carrying both hypotheses side by side;
* [`Admissible/Compactness.lean#L90`](https://github.com/cameronfreer/infinitary-logic/blob/1a478e80794080a536931c029281bb65266b3171/InfinitaryLogic/Admissible/Compactness.lean#L90): Barwise completeness, likewise;
* [`Descriptive/Polish.lean#L46`](https://github.com/cameronfreer/infinitary-logic/blob/1a478e80794080a536931c029281bb65266b3171/InfinitaryLogic/Descriptive/Polish.lean#L46): a section variable assuming only the relation symbols are countable, which is where one notices the missing companion instance;
* [`Methods/LopezEscobar/CodeClass.lean#L29`](https://github.com/cameronfreer/infinitary-logic/blob/1a478e80794080a536931c029281bb65266b3171/InfinitaryLogic/Methods/LopezEscobar/CodeClass.lean#L29): a custom `Countable (Σ n, L.Functions n)` instance for relational languages, which is an example of the bookkeeping that arises from the two sorts not being related by a single lemma.
(Note that the `countable_functions` and `countable_relations` instances only project *out of* `Countable L.Symbols` into a summand; the converse direction is stated as a theorem rather than an instance, so there is no risk of an instance cycle.)
🤖 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 |
33-68552 1 month ago |
35-8924 35 days ago |
35-12012 35 days |
| 42203 |
cameronfreer author:cameronfreer |
feat(Algebra/MvPolynomial): compact only the right summand of a sum of variables |
Currently `exists_fin_rename` reindexes the entire variable type along an injection `Fin n → σ`. At `σ ⊕ τ` this renumbers the left-hand variables together with the right-hand ones, so it cannot be used when the left summand carries meaning that has to be preserved.
This PR adds two variants that leave the left summand alone, mirroring the existing `exists_finset_rename` / `exists_fin_rename` pair:
```lean
theorem exists_finset_right_rename (p : MvPolynomial (σ ⊕ τ) R) :
∃ (t : Finset τ) (q : MvPolynomial (σ ⊕ { x // x ∈ t }) R),
p = rename (Sum.map id (↑)) q
theorem exists_fin_right_rename (p : MvPolynomial (σ ⊕ τ) R) :
∃ (n : ℕ) (f : Fin n → τ) (_hf : Injective f) (q : MvPolynomial (σ ⊕ Fin n) R),
p = rename (Sum.map id f) q
```
The first of these factors `exists_finset_rename` through `Finset.toRight`: rename along the map that fixes the left-hand variables and sends each right-hand variable of the finset into `s.toRight`.
The second one then enumerates that right-hand finset with `Fintype.equivFin`, the same way that `exists_fin_rename` does.
Motivation: a Diophantine relation is presented as a polynomial in input variables along with existentially quantified witness variables, and the normal form wants inputs indexed by `Fin n` and witnesses compacted to `Fin m`. Only the witnesses may be reindexed; renumbering the inputs changes the relation being represented. This comes up in work I've been exploring towards Hilbert's tenth problem (the TODO in `Mathlib.NumberTheory.Dioph`), though the statement is independent of that.
🤖 These proofs were written with the assistance of Claude Opus 5 high and reviewed by GPT Sol 5.6 xhigh.
|
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
41/0 |
Mathlib/Algebra/MvPolynomial/Rename.lean |
1 |
3 |
['cameronfreer', 'github-actions'] |
nobody |
33-68552 1 month ago |
35-45955 35 days ago |
35-46659 35 days |
| 42178 |
cameronfreer author:cameronfreer |
feat(Computability/Primrec/List): add theorems showing that List.all, List.any and List.sum are primitive recursive |
Add the parameterized `list_all`, `list_any` and natural-number `list_sum`, in the style of the existing `list_map`, `list_foldr` and `list_findIdx`.
Mathlib already has a parameterized core, but no direct lemmas for these standard list operations, so downstream developments tend to reconstruct them from `list_foldr` at each use site. In the course of writing [cameronfreer/computable-analysis](https://github.com/cameronfreer/computable-analysis) I ended up needing this in three places, all of which can now make use of the results here instead (see [a6898b5](https://github.com/cameronfreer/computable-analysis/commit/a6898b5), in particular `Weihrauch/Principles/Limit.lean:117`, `TypeTwo/PrefixTable.lean:334,351,369`, and `Measure/DisintegrateLower.lean:877,902`).
:robot: These proofs were written with the assistance of Claude Opus 5 high and reviewed by GPT Sol 5.6 xhigh. |
t-computability
new-contributor
LLM-generated
|
21/1 |
Mathlib/Computability/Primrec/List.lean |
1 |
4 |
['cameronfreer', 'github-actions'] |
nobody |
33-68545 1 month ago |
36-2070 36 days ago |
36-1950 36 days |
| 41696 |
vaca22 author:vaca22 |
feat(RingTheory): generalize relNorm_eq_pow_of_isMaximal to separable fraction field extensions |
This PR relaxes the hypothesis of Ideal.relNorm_eq_pow_of_isMaximal and its supporting Ring.NormalClosure instances.
Originally the theorem required the fraction ring of base Dedekind domain R to be a perfect field. Now we only require the fraction field extension to be separable.
The perfect field condition excludes function fields with imperfect constant fields, which is an important case we want to support. The core mathematical insight is that the normal closure of a separable field extension stays separable, so we can construct the Galois structure without a perfect base.
This change is fully backwards compatible: any existing code relying on the old perfect field assumption still compiles, since perfect fields automatically give separable extensions. Only two files are modified: NormalClosure.lean and RelNorm.lean, with small diff and no extra imports.
AI disclosure: I used AI tools to assist with initial code drafting and full CI validation. All mathematical reasoning and proof logic I worked through independently, and I can explain every adjustment in review. My original PR text relied too heavily on AI output, I’ve fully rewritten this description manually. |
new-contributor
t-ring-theory
LLM-generated
|
23/3 |
Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/NormalClosure.lean |
3 |
15 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'vaca22', 'xroblot'] |
nobody |
33-7091 1 month ago |
41-56522 41 days ago |
46-65312 46 days |
| 42128 |
SnirBroshi author:SnirBroshi |
feat(Order/UpperLower/CompleteLattice): induce the `PartialOrder` for `LowerSet`s from `SetLike` |
Now `#synth IsConcreteLE (LowerSet α) α` works so `SetLike.coe_subset_coe` and the like can be used with `LowerSet`s.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
4/1 |
Mathlib/Order/Birkhoff.lean,Mathlib/Order/UpperLower/CompleteLattice.lean |
2 |
1 |
['github-actions'] |
nobody |
32-49217 1 month ago |
32-50992 32 days ago |
32-52082 32 days |
| 40728 |
Formalistic03 author:Formalistic03 |
feat(Combinatorics/SimpleGraph/Hasse): more properties of Hasse graphs of linear orders |
- two forms of an intermediate value theorem for linear orders
- the Hasse graph of a linear order is acyclic
- a path graph is locally finite
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
99/24 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/CycleGraph.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Data/Fintype/Defs.lean |
4 |
23 |
['Formalistic03', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
32-44139 1 month ago |
32-47239 32 days ago |
71-34050 71 days |
| 42345 |
TomOleDiem author:TomOleDiem |
feat(Analysis/Normed/Algebra): characterize continuous one-parameter subgroups |
This PR proves that every continuous one-parameter subgroup of the unit group of a real Banach algebra has a unique exponential generator.
The theorem applies to any function-like type from `Multiplicative ℝ` to `Eˣ` carrying `MonoidHomClass` and `ContinuousMapClass` instances.
The proof first derives differentiability from an invertible local average. It then identifies the subgroup with the exponential of its derivative at zero and proves uniqueness by differentiation at zero.
The new module builds successfully and passes `lint-style`.
Substantial AI assistance was used to develop and review this formalization. |
t-analysis
new-contributor
LLM-generated
|
248/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Algebra/OneParameterSubgroup.lean |
2 |
3 |
['TomOleDiem', 'github-actions'] |
nobody |
31-51868 1 month ago |
31-51868 31 days ago |
31-51748 31 days |
| 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 |
42 |
['LAC1213', 'NoahW314', 'github-actions', 'robin-carlier'] |
nobody |
31-38216 1 month ago |
36-72805 36 days ago |
37-11013 37 days |
| 42358 |
homeowmorphism author:homeowmorphism |
doc(RingTheory/Extension/Generators): remove stale TODO and clarify docstring |
Update the docstring in light of #25085 refactoring the bundled type into an unbundled type. A fix to the docstring has been done in #39705.
The TODO still to be removed and the docstring is clarified a bit to be clear that the type iota is now unbundled.
---
Use of AI: Claude Fable was used to help me understand this API in light of me working on a similar API for `Group.Presentation` (#41936). It came to my attention that the docstring was outdated and I had Claude fetch the PR history.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
7/17 |
Mathlib/RingTheory/Extension/Generators.lean |
1 |
2 |
['github-actions'] |
nobody |
31-33915 1 month ago |
31-34611 31 days ago |
31-34491 31 days |
| 34910 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Acyclic): a graph is a tree iff it's acyclic and has exactly `n - 1` edges |
---
This was my white whale for quite some time. Hooray!
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #34907
- [x] depends on: #34909
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
70/3 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Order/RelIso/Basic.lean |
3 |
24 |
['Rida-Hamadani', 'SnirBroshi', 'amellendijk', 'github-actions', 'jt0202', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
31-32339 1 month ago |
52-49377 52 days ago |
77-84418 77 days |
| 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 |
120/12 |
Mathlib/Combinatorics/SimpleGraph/Maps.lean |
1 |
1 |
['github-actions'] |
nobody |
30-69792 30 days ago |
30-70654 30 days ago |
30-70638 30 days |
| 41871 |
stalex444 author:stalex444 |
feat(RingTheory/IntegralClosure): integer powers of integral elements are integral |
This PR adds IsIntegral.zpow and its subalgebra-membership analogs (zpow_mem, zpow_mem_adjoin, Algebra.IsIntegral.zpow_mem), generalizing the existing inv lemmas from the −1 power to all integer powers.
This Lean code was drafted with the help of AI (Claude Code), I reviewed it and built it locally against the current master.
---
Happy to adjust the placement or the type-variable names.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
new-contributor
|
20/0 |
Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean |
1 |
10 |
['SnirBroshi', 'github-actions', 'stalex444'] |
nobody |
29-79199 29 days ago |
46-55487 46 days ago |
46-55367 46 days |
| 39905 |
plp127 author:plp127 |
chore(Order/CompleteBooleanAlgebra): dualize `symmDiff` theorems |
Dualize some `symmDiff` theorems, and also generalize them from `CompleteBooleanAlgebra` to `Order.Coframe`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
76/39 |
Mathlib/Order/CompleteBooleanAlgebra.lean |
1 |
4 |
['JovanGerb', 'github-actions', 'plp127', 'vihdzp'] |
nobody |
29-60939 29 days ago |
98-31306 98 days ago |
98-31186 98 days |
| 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 |
1 |
['github-actions'] |
nobody |
29-59473 29 days ago |
29-72719 29 days ago |
29-72599 29 days |
| 42411 |
SnirBroshi author:SnirBroshi |
feat(ModEq): `IsEquiv` instance |
`IsEquiv` for `Nat.ModEq`/`Int.ModEq`/`SModEq`
---
The deleted instances are synthesizable from the new 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-algebra label:t-algebra$ |
12/15 |
Mathlib/Data/Int/ModEq.lean,Mathlib/Data/Nat/ModEq.lean,Mathlib/LinearAlgebra/SModEq/Basic.lean |
3 |
1 |
['github-actions'] |
nobody |
29-49160 29 days ago |
29-51228 29 days ago |
29-51108 29 days |
| 42413 |
SnirBroshi author:SnirBroshi |
feat(Order/Cover): `CovBy` is asymmetric and `WCovBy` is antisymmetric |
---
The deleted instances are synthesizable from the new 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-order |
10/5 |
Mathlib/Order/Cover.lean |
1 |
1 |
['github-actions'] |
nobody |
29-31730 29 days ago |
29-49443 29 days ago |
29-49323 29 days |
| 42225 |
matt-w-horn author:matt-w-horn |
feat(Order): Knaster–Tarski fixed points on an interval |
`lfpIcc f a b` and `gfpIcc f a b`: least and greatest fixed points of `f` on `Set.Icc a b` in a conditionally complete lattice, for `f` monotone on the interval and mapping it into itself. Also interval membership, endpoint-iterate bounds, and monotonicity in `f`.
`OrderHom.lfp` gives this through the complete-lattice instance on the subtype, but wants a `Fact (a ≤ b)` and returns subtype elements. These take `MonotoneOn` and `MapsTo` directly and stay in `α`. Bridge lemmas between the two are a follow-up.
Used on intervals of ℝ in Overload, a sorry-free Lean library on retry and overload dynamics: https://github.com/matt-w-horn/overload/tree/main/Overload
Claude Fable wrote the Lean from a spec I gave it. I reviewed and tested it myself, including adversarial tests and the suites in the library above, and did the same for its dependencies.
Assisted-by: Claude Fable 5 |
t-order
new-contributor
LLM-generated
|
168/0 |
Mathlib.lean,Mathlib/Order/FixedPointsIcc.lean |
2 |
7 |
['github-actions', 'matt-w-horn', 'wwylele'] |
nobody |
29-22612 29 days ago |
30-32198 30 days ago |
30-32078 30 days |
| 42446 |
ipezygj author:ipezygj |
feat(Algebra/Order/Ring/Pow): bernoulli's inequality for a subtracted term |
Adds `one_sub_mul_le_pow`, the mirror of `one_add_mul_le_pow`:
```lean
lemma one_sub_mul_le_pow (H : a ≤ 2) (n : ℕ) : 1 - n * a ≤ (1 - a) ^ n
```
`Mathlib/Algebra/Order/Ring/Pow.lean` already carries Bernoulli in the `1 + a` form
and one reformulation of it (`one_add_mul_sub_le_pow`); this is the `1 - a` form,
which is the shape that comes up when bounding a product of complements — for
example showing that `1 - (1 - p) ^ n ≤ n * p`, the comparison between the Šidák and
Bonferroni corrections in statistics, which follows immediately by `linarith`.
The hypothesis `a ≤ 2` is exactly what `one_add_mul_le_pow`'s `-2 ≤ -a` becomes, and
it is load-bearing rather than decorative: the inequality fails for `a > 2` (checked
numerically over a grid before writing the proof).
Proof is two lines and reduces directly to the existing lemma.
This is my first contribution to mathlib, so please do point out anything that does
not match the library's conventions.
---
[Blueprint] not applicable.
|
t-algebra
new-contributor
label:t-algebra$ |
6/0 |
Mathlib/Algebra/Order/Ring/Pow.lean |
1 |
3 |
['github-actions'] |
nobody |
28-58082 28 days ago |
28-61082 28 days ago |
28-60962 28 days |
| 42346 |
mortarsanjaya author:mortarsanjaya |
feat(Algebra/CharP/Two): weaken theorem hypothesis |
This PR weakens the hypothesis of several theorems about rings of characteristic 2. Some of these lemmas do not require the (semi)ring to be associative, some of them do not require subtraction (and thus `Ring` can be weakened to `Semiring`), and those about integer cast do not even require multiplication.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
71/45 |
Mathlib/Algebra/CharP/Two.lean |
1 |
3 |
['github-actions', 'mortarsanjaya', 'vihdzp'] |
nobody |
28-36100 28 days ago |
28-61144 28 days ago |
31-36581 31 days |
| 42466 |
xroblot author:xroblot |
feat(LinearAlgebra): unimodular elements and completion to a basis |
Add a new file `Mathlib/LinearAlgebra/Unimodular.lean` about unimodular
elements of a module (those on which some linear functional takes the value
`1`).
Main results:
* `Module.Basis.span_repr_eq_top_iff`: `v` is unimodular iff its coordinates in
a basis generate the unit ideal;
* `Module.Free.exists_basis_apply_zero_eq`: a unimodular vector of a rank-two
free module completes to a basis;
* `Module.Basis.span_repr_one_eq_top` / `Module.Free.exists_linearMap_apply_one_eq_one`:
`1` is unimodular in a nonzero free algebra.
Some of the mathematics and proofs in this file were developed with the help of Claude 🤖.
|
t-algebra label:t-algebra$ |
134/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Unimodular.lean,docs/references.bib |
3 |
1 |
['github-actions'] |
nobody |
28-19390 28 days ago |
28-19956 28 days ago |
28-19984 28 days |
| 41816 |
tb65536 author:tb65536 |
feat(GroupTheory/PGroup): add exponent characterization |
This PR adds the exponent characterization of p-groups, and uses it to golf the existing proof of `isPGroup_iff_card_dvd_pow`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
41/40 |
Mathlib/GroupTheory/Exponent.lean,Mathlib/GroupTheory/PGroup.lean |
2 |
3 |
['SnirBroshi', 'github-actions', 'tb65536'] |
nobody |
28-6763 28 days ago |
28-6766 28 days ago |
28-7829 28 days |
| 40963 |
Formalistic03 author:Formalistic03 |
feat(Combinatorics/SimpleGraph/Paths): add lemma about the first dart if dropLast is a path |
If `dropLast` of a walk is a path, a dart of the walk sharing its first vertex with the walk also shares its second vertex.
I thought this was a natural more general form of `IsPath.eq_snd_of_mem_edges`, useful for cycles for example.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
15/0 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean |
2 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
27-56210 27 days ago |
27-56828 27 days ago |
69-76403 69 days |
| 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$ |
50/0 |
Mathlib/Algebra/BigOperators/Group/Finset/Powerset.lean |
1 |
3 |
['bocowgill', 'github-actions'] |
nobody |
26-75144 26 days ago |
26-75144 26 days ago |
26-75024 26 days |
| 41902 |
Ljon4ik4 author:Ljon4ik4 |
feat: sum of derivations lemmas |
This PR adds Lemmas showing that derivations are well-behaved with sums.
In order to prove one of them an additive map version of `coe : Derivation R A M → A →ₗ[R] M` is also 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-ring-theory |
17/0 |
Mathlib/RingTheory/Derivation/Basic.lean |
1 |
8 |
['Ljon4ik4', 'github-actions', 'mathlib-bors', 'wwylele'] |
nobody |
26-41736 26 days ago |
45-53763 45 days ago |
45-53649 45 days |
| 42520 |
mo271 author:mo271 |
refactor(Data/Finset/Sups): rename `powerset_union/inter` |
... to `powerset_sups/infs`
Rename `Finset.powerset_union` to `Finset.powerset_sups` and `Finset.powerset_inter` to `Finset.powerset_infs` to reflect that they compute pointwise operations `⊻` and `⊼`.
Add deprecation aliases.
A follow-up (#42521) will add `Finset.powerset_inter` back (with a different meaning).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
13/8 |
Mathlib/Data/Finset/Sups.lean |
1 |
2 |
['github-actions'] |
nobody |
26-5876 26 days ago |
26-8456 26 days ago |
26-8336 26 days |
| 42509 |
attilavjda author:attilavjda |
chore(Analysis/Normed/Lp/PiLp): fix stale docstring cross-references |
The docstrings of `PiLp.nnnorm_toLp_const` and `PiLp.norm_toLp_const'` still referred to
`PiLp.nnnorm_equiv_symm_const'` and `PiLp.norm_equiv_symm_const`, which no longer exist after
the `equiv_symm` -> `toLp` rename. Also fix a line wrap that split a sentence with a stray
full stop.
[Found the errors with Aristotle, it generated, verified, and made guides to the solution](https://github.com/attilavjda/formal-contributions/blob/main/analysis-pilp-docstrings/RequestProject/PiLpConstNorm.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/)
|
|
3/5 |
Mathlib/Analysis/Normed/Lp/PiLp.lean |
1 |
1 |
['github-actions'] |
nobody |
26-87 26 days ago |
26-49148 26 days ago |
26-49028 26 days |
| 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 |
25-77782 25 days ago |
25-85261 25 days ago |
26-1291 26 days |
| 42541 |
NoahW314 author:NoahW314 |
feat: add `CharZero`/`CharP` instances on `OrderDual` and `Lex` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
11/1 |
Mathlib/Algebra/Order/Ring/Synonym.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
25-60256 25 days ago |
25-62676 25 days ago |
25-64314 25 days |
| 42538 |
NoahW314 author:NoahW314 |
feat: add Semilattice lemmas for `IsBotOneClass` |
These lemmas are analogous to the existing lemmas for `LinearOrder` + `IsBotOneClass`. The bot versions for Semilattices and LinearOrder also exist 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-algebra label:t-algebra$ |
29/4 |
Mathlib/Algebra/Order/IsBotOne.lean |
1 |
1 |
['github-actions'] |
nobody |
25-58877 25 days ago |
25-62298 25 days ago |
25-65250 25 days |
| 25834 |
Rida-Hamadani author:Rida-Hamadani |
feat(SimpleGraph): girth-diameter inequality |
This is a useful inequality that comes up in proofs related to Moore graphs, cages, SRGs, and so on.
Co-authored-by: Malhar A. Patel <142735852+Mal-Pat@users.noreply.github.com>
---
<!-- 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]
- [x] depends on: #xyz [optional extra text]
-->
- [x] depends on: #26380
- [x] depends on: #25650
- [x] depends on: #26614
- [x] depends on: #33249
- [x] depends on: #33506
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
29/6 |
Mathlib/Combinatorics/SimpleGraph/Diam.lean,Mathlib/Combinatorics/SimpleGraph/Girth.lean,Mathlib/Combinatorics/SimpleGraph/Metric.lean |
3 |
17 |
['Rida-Hamadani', 'SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
nobody |
24-74928 24 days ago |
31-32661 31 days ago |
61-27618 61 days |
| 42569 |
astrainfinita author:astrainfinita |
refactor: use `cmpLE` in `LinearOrder` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
tech debt
|
110/69 |
Mathlib/Data/Ordering/Basic.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Data/String/Basic.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Compare.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/Defs/LinearOrder.lean,Mathlib/Order/OrderDual.lean,Mathlib/Order/Std.lean,scripts/nolints.json |
11 |
3 |
['JovanGerb', 'astrainfinita', 'github-actions'] |
nobody |
24-55915 24 days ago |
24-59170 24 days ago |
24-62351 24 days |
| 42315 |
sfingali author:sfingali |
feat(Topology): the adic spectrum Spa(A, A+) as a topological space |
### Summary
Defines the adic spectrum `Spa(A, A⁺)` as a set and topological space for a
topological ring `A` and a subring `A⁺` (Wedhorn, *Adic Spaces*,
arXiv:1910.05934, Def. 7.23 and Def. 7.29, pp. 62–63).
* `SpaPoint A A⁺` — a point of the adic spectrum: a continuous valuation
`v : A → Γ₀` with `v(f) ≤ 1` for all `f ∈ A⁺`.
* `SpaPoint.rationalSubset s T` — the rational subset `R(T/s)`.
* `SpaPoint.spaTopologicalSpace` — the topology generated by the rational
subsets with `T · A` open in `A`; `isOpen_rationalSubset` shows every such
rational subset is open.
* `SpaPoint.mem_rationalSubset_one` — Wedhorn, Rem. 7.30(4): `R(f/1)` is the
set `{x | |f(x)| ≤ 1}`.
Third step of an adic/perfectoid pipeline (Huber rings #42312 → continuous
valuations #42314 → Spa → Huber pairs → perfectoid → tilting). This PR works
with the element-level notion (a bundled continuous valuation with a fixed
value group); Wedhorn defines `Spa(A, A⁺)` as a subspace of the valuation
spectrum `Spv(A)` — the comparison is added once the spectrum PR lands.
### References
* T. Wedhorn, *Adic Spaces*, arXiv:1910.05934, Def. 7.23, Def. 7.29,
Rem. 7.30 (pp. 62–63).
|
new-contributor |
411/0 |
Mathlib.lean,Mathlib/RingTheory/Valuation/ContinuousValuation.lean,Mathlib/Topology/Algebra/Nonarchimedean/Spa.lean |
3 |
3 |
['github-actions', 'tb65536'] |
nobody |
24-53814 24 days ago |
30-61712 30 days ago |
30-65586 30 days |
| 42314 |
sfingali author:sfingali |
feat(RingTheory): continuous valuations |
### Summary
Defines continuous valuations on topological rings: a valuation `v : A → Γ₀`
whose underlying function is continuous for the order topology on `Γ₀`
(Wedhorn, *Adic Spaces*, arXiv:1910.05934, Def. 7.7 and Rem. 7.8(1), p. 58).
* `ContinuousValuationClass` — the class of continuous valuations: a
`ValuationClass` whose functions are continuous.
* `ContinuousValuation` — a bundled continuous valuation.
* `ContinuousValuation.isOpen_lt` — the primary definition of Wedhorn,
Def. 7.7: `{a | v a < γ}` is open for every `γ`.
This is the second step of an adic/perfectoid pipeline (Huber rings → Huber
pairs → continuous valuations → Spa → perfectoid → tilting); #42312 defines
Huber rings. The subspace `Cont(A) ⊆ Spv(A)` of continuous valuations
(Wedhorn, p. 58) will build on `ValuationSpectrum` once #38009 lands — this
PR provides the element-level notion, which is independent of the spectrum
topology.
### References
* T. Wedhorn, *Adic Spaces*, arXiv:1910.05934, Def. 7.7, Rem. 7.8 (p. 58).
|
t-ring-theory
new-contributor
|
99/0 |
Mathlib.lean,Mathlib/RingTheory/Valuation/ContinuousValuation.lean |
2 |
7 |
['github-actions', 'sfingali', 'wwylele'] |
nobody |
24-47106 24 days ago |
32-37927 32 days ago |
32-38353 32 days |
| 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.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
26 |
['SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'tb65536'] |
nobody |
24-32343 24 days ago |
59-46040 59 days ago |
72-4760 72 days |
| 40741 |
AntoineduFresne author:AntoineduFresne |
feat(order): dilworth's and mirsky's theorems for finite orders |
I add Dilworth's theorem and its order dual, Mirsky's theorem, for finite subsets of a partial order, together with the order-theoretic lemmas they rest on.
A prior external formalization by Vlad Tsyrklevich is linked from `1000.yaml`; this is an independent `Finset`-based development using Galvin's proof, and I agreed the `1000.yaml` update with him.
I split the min-max content, as for Hall's marriage theorem, into a weak-duality inequality and a strong-duality existence of a matching pair, so I never define an extremal quantity over families of sets (no `Finset.min'` / `Finset.max'`):
- `dilworth` / `mirsky` — an antichain and a chain cover (resp. a chain and an antichain cover) of equal size;
- `antichain_le_chain_cover` / `chain_le_antichain_cover` — the weak-duality inequalities, for an arbitrary relation;
- `dilworth_partition` / `mirsky_partition` — the same with a pairwise-disjoint partition.
For Dilworth I use Galvin's induction (gluing step `chainCover_glue`); I avoid the König /
bipartite-matching route since König isn't in Mathlib yet (at least last time I checked). I prove Mirsky directly (peeling off minimal elements) rather than via `OrderDual`, since the direct induction seems simpler to me and the two proofs already share their foundations (the closure lemmas and the injective weak dualities).
Internally I work with an injection `f : α → Finset α` on the antichain rather than with the
`Finset (Finset α)` cover directly, so distinctness of the chains comes from the antichain property instead of a separate bookkeeping.
## Questions I'd like input on
1. Explicit min-max? I give weak duality plus a matching pair, from which "largest antichain = smallest chain cover" follows; I do not state that equality as a single theorem (doing so would, I think, mean defining the extremal quantities I wanted to avoid). Would you also like an explicit min-max statement?
2. Two layers of weak duality. I expose it twice: an injective form (`IsAntichain.exists_injOn_mem_chains`, over an arbitrary relation and an arbitrary index type, no finiteness) and a `Finset` cardinality form (`antichain_le_chain_cover`), the latter a one-line specialization of the former. I'm not sure whether exposing both is right, or whether one of them should be canonical. And is there appetite to push the general core to an `ℕ∞` / infinite version, or is the finite form the right scope here?
3. `[DecidableEq α]` on the main theorems. It comes only from writing the cover as
`s = 𝒞.biUnion id` (`Finset.biUnion` needs it); a membership-form coverage condition such as `∀ x, x ∈ s ↔ ∃ C ∈ 𝒞, x ∈ C` would drop the assumption, though it seems to me a bit less readable. Which do you prefer? (I think the injective-form weak dualities assume neither order, finiteness, nor `DecidableEq`.)
4. Naming. I use `C` / `A` for a chain / antichain and `𝒞` / `𝒜` for a chain / antichain cover (for hopefully obvious reason). Happy to change these if you would prefer something else.
## Open questions
- File placement (`Mathlib/Order/Dilworth.lean`?), and whether the general lemmas (the injective transversal and the weak dualities) should live in `Mathlib/Order/Antichain.lean` rather than in a new file.
The maximal-antichain closure lemma that was originally here has been split out into #42590.
Zulip: https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Antoine.20du.20Fresne.20von.20Hohenesche/with/604112426
AI use: I worked out all proofs on paper first and most of the design structure of the file. I then used Claude Code (Claude Opus) to transcribe my paper proofs into Lean, weaken hypotheses, reduce redundancy, and fix comment typos.
|
t-order
new-contributor
LLM-generated
|
568/3 |
Mathlib.lean,Mathlib/Order/Dilworth.lean,docs/1000.yaml |
3 |
18 |
['AntoineduFresne', 'SnirBroshi', 'github-actions', 'tdwag123'] |
nobody |
24-2059 24 days ago |
24-2691 24 days ago |
76-11036 76 days |
| 42421 |
SnirBroshi author:SnirBroshi |
feat(Order/CompactlyGenerated/Basic): the supremum of compact elements is compact and other basics |
- `⊥` is compact
- `⊔` of compacts is compact
- `WellFoundedGT` implies that every element is compact
- Generalize `IsCompactlyGenerated` to use `IsLUB`, like `IsCompactElement` & `IsAtomistic`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
84/34 |
Mathlib/Algebra/Lie/Submodule.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/CompactlyGenerated/Intervals.lean |
5 |
1 |
['github-actions'] |
nobody |
23-63254 23 days ago |
28-71130 28 days ago |
28-73965 28 days |
| 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`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
174/0 |
Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/Basis.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Standard.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
4 |
12 |
['github-actions', 'thefundamentaltheor3m', 'wwylele'] |
nobody |
23-9898 23 days ago |
23-13056 23 days ago |
51-72512 51 days |
| 42615 |
williamjblair author:williamjblair |
feat(Data/Nat/Prime/Basic): a nonzero natural has a prime not dividing it |
Any prime factor of `n + 1` works, so the proof needs nothing beyond `minFac`.
---
[](https://gitpod.io/from-referrer/) |
t-data
new-contributor
LLM-generated
|
8/0 |
Mathlib/Data/Nat/Prime/Basic.lean |
1 |
3 |
['github-actions', 'williamjblair'] |
nobody |
22-60716 22 days ago |
22-63092 22 days ago |
22-62972 22 days |
| 42614 |
williamjblair author:williamjblair |
chore(Algebra/Group/Action/Pointwise/Set): generalize smul_mem_smul_set_iff to IsLeftCancelSMul |
The lemma only needs `a • ·` to be injective, which is what `IsLeftCancelSMul` says. Moving it into that section covers the previous `[Group α] [MulAction α β]` case through the existing instance, and also covers `[Mul α] [IsLeftCancelMul α]` acting on itself.
---
[](https://gitpod.io/from-referrer/) |
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
5/4 |
Mathlib/Algebra/Group/Action/Pointwise/Set/Basic.lean |
1 |
3 |
['github-actions', 'williamjblair'] |
nobody |
22-60498 22 days ago |
22-63317 22 days ago |
22-63197 22 days |
| 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'] |
nobody |
22-40461 22 days ago |
22-43982 22 days ago |
22-43862 22 days |
| 42318 |
JovanGerb author:JovanGerb |
chore: remove `@[expose]` from meta definitions |
This PR removes `@[expose]` from sections where all definitions are meta definitions. (They might not be tagged `meta` explicitly, but they are meant only for execution and not for proving).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
26/26 |
Mathlib/Lean/ContextInfo.lean,Mathlib/Lean/CoreM.lean,Mathlib/Lean/Elab/InfoTree.lean,Mathlib/Lean/Elab/Tactic/Basic.lean,Mathlib/Lean/Elab/Tactic/Meta.lean,Mathlib/Lean/Exception.lean,Mathlib/Lean/GoalsLocation.lean,Mathlib/Lean/Meta/Basic.lean,Mathlib/Lean/Meta/DiscrTree.lean,Mathlib/Lean/Meta/KAbstractPositions.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Basic.lean,Mathlib/Lean/Meta/Simp.lean,Mathlib/Lean/Meta/Tactic/Rewrite.lean,Mathlib/Lean/PrettyPrinter/Delaborator.lean,Mathlib/LinearAlgebra/Matrix/Notation.lean,Mathlib/Order/Notation.lean,Mathlib/Tactic/Module.lean,Mathlib/Tactic/NormNum/Result.lean |
18 |
1 |
['github-actions'] |
nobody |
22-32947 22 days ago |
22-33001 22 days ago |
22-33925 22 days |
| 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 |
2 |
['github-actions'] |
nobody |
22-26609 22 days ago |
22-27204 22 days ago |
22-27084 22 days |
| 42606 |
mo271 author:mo271 |
refactor(Data/Nat/Choose/Central): move and rename `four_pow_le_two_mul_add_one_mul_central_binom` |
Move `four_pow_le_two_mul_add_one_mul_central_binom` from [`Mathlib.Data.Nat.Choose.Sum`](file:///usr/local/google/home/firsching/mathlib4/Mathlib/Data/Nat/Choose/Sum.lean) to [`Mathlib.Data.Nat.Choose.Central`](file:///usr/local/google/home/firsching/mathlib4/Mathlib/Data/Nat/Choose/Central.lean) and adjust it to fit the file's API:
* **Rename**: `four_pow_le_two_mul_add_one_mul_central_binom` → [`four_pow_le_two_mul_add_one_mul_centralBinom`](file:///usr/local/google/home/firsching/mathlib4/Mathlib/Data/Nat/Choose/Central.lean#L123-L128) (aligning with `centralBinom` casing convention).
* **Statement**: Stated using `centralBinom n` rather than `(2 * n).choose n`.
* **Proof**: Simplified by using [`four_pow_le_two_mul_self_mul_centralBinom`](file:///usr/local/google/home/firsching/mathlib4/Mathlib/Data/Nat/Choose/Central.lean#L110-L122) directly, avoiding an import dependency on `Choose.Sum`.
* **Deprecation**: Added a deprecation alias for the old 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
13/7 |
Mathlib/Data/Nat/Choose/Central.lean,Mathlib/Data/Nat/Choose/Sum.lean |
2 |
4 |
['SnirBroshi', 'github-actions', 'mo271'] |
nobody |
22-6059 22 days ago |
23-2876 23 days ago |
23-2756 23 days |
| 41909 |
wwylele author:wwylele |
feat(FieldTheory): field equivalences for bot subfield |
Make it easier to use than the existing Subfield equality lemma.
---
~~The ZMod version `Subfield.botEquivZMod_symm_apply` is missing because the statement
`(Subfield.botEquivZMod K p).symm x = algebraMap (ZMod p) (⊥ : Subfield K) x` doesn't type-check, which is missing the instance `Algebra (ZMod p) (⊥ : Subfield K)`, which is because [ZMod.algebra](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Algebra/ZMod.html#ZMod.algebra) is a `def`~~
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
44/3 |
Mathlib/FieldTheory/PrimeField.lean |
1 |
4 |
['copilot-pull-request-reviewer', 'github-actions', 'plp127', 'wwylele'] |
nobody |
21-69652 21 days ago |
45-32238 45 days ago |
45-32639 45 days |
| 42650 |
FrankieNC author:FrankieNC |
feat(Data/EReal): prove `recENNReal_neg_coe_ennreal` (`proof_wanted`) |
Prove `recENNReal_neg_coe_ennreal`, the second computation rule for the induction principle `EReal.recENNReal`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
|
file-removed
t-data
|
11/19 |
Mathlib/Data/EReal/Operations.lean,Wanted.lean,Wanted/Data/EReal/Operations.lean |
3 |
1 |
['github-actions'] |
nobody |
21-69019 21 days ago |
21-70569 21 days ago |
21-70449 21 days |
| 42265 |
cameronfreer author:cameronfreer |
chore(RingTheory/PowerSeries): simplify coeff_inv_aux |
This replaces the hand-written `Finset.sum_nbij'` in `coeff_inv_aux` with `simp_rw` + `simp`, via `Finsupp.antidiagonal_single`, the same rewrite that `PowerSeries.coeff_mul` already uses.
:robot: Golfing target found by GPT Pro 5.6 Sol, initial version of code written by Opus 5 high, refined by GPT 5.6 Sol xhigh, then again by Opus 5 high following @felixpernegger's review suggestion. |
t-ring-theory
new-contributor
LLM-generated
|
2/19 |
Mathlib/RingTheory/PowerSeries/Inverse.lean |
1 |
8 |
['cameronfreer', 'felixpernegger', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
21-60413 21 days ago |
21-61113 21 days ago |
34-2003 34 days |
| 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$ |
89/0 |
Mathlib/FieldTheory/Relrank.lean |
1 |
10 |
['copilot-pull-request-reviewer', 'github-actions', 'sharky564'] |
nobody |
21-59455 21 days ago |
45-44622 45 days ago |
45-44502 45 days |
| 42644 |
artie2000 author:artie2000 |
feat(Order/Lattice): add `grind` attributes to `sup_of_le_left` etc |
* Add the equations for sup and inf being equal to either argument in a poset to `grind`.
* These rules sit alongside the "sup = if .. then .. else .." `grind` rule in a total 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-order
t-meta
|
13/6 |
Mathlib/Analysis/SpecialFunctions/Artanh.lean,Mathlib/Order/Lattice.lean |
2 |
3 |
['JovanGerb', 'artie2000', 'github-actions'] |
nobody |
21-59239 21 days ago |
21-62547 21 days ago |
21-64845 21 days |
| 41098 |
vlad902 author:vlad902 |
feat(RingTheory): krull dimension of a polynomial ring in an infinite number of variables |
Add a simp lemma that `dim(R[X_1, ...]) = ∞` and also derive an ENat-valued lemma that `dim(R[X_s]) = dim(R) + card(X_s)`. Note that I keep the original lemma for finite index sets as @[simp] since this is likely to be the more common case in practice.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
32/1 |
Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/KrullDimension/NonZeroDivisors.lean,Mathlib/RingTheory/KrullDimension/Polynomial.lean |
4 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
21-58098 21 days ago |
21-61378 21 days ago |
56-25778 56 days |
| 40023 |
chenson2018 author:chenson2018 |
chore(AlgebraicTopology): refactor proofs where `grind?` fails |
These are sources of technical debt as now reported in the [weekly linting report](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Weekly.20linting.20log/with/544658968). The idea is that a successful grind proof can fail to report the theorems it used via grind?, which means that if these proofs break across toolchains that it becomes significantly harder to repair.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
will-close-soon
|
11/5 |
Mathlib/AlgebraicTopology/SimplexCategory/DeltaZeroIter.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplices.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplicesSubcomplex.lean |
4 |
4 |
['chenson2018', 'github-actions', 'grunweg', 'joelriou'] |
nobody |
21-53363 21 days ago |
95-63101 95 days ago |
95-62981 95 days |
| 42633 |
SnirBroshi author:SnirBroshi |
feat(Order/OrderIsoNat): every chain is finite when `<` and `>` are well-founded |
Also generalizes `IsChain.linearOrder` from `PartialOrder` to `Preorder`.
This requires changing the chain hypothesis from `≤` to `<`, but in a `PartialOrder` you could use [`IsChain.lt_of_le`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/Preorder/Chain.html#IsChain.lt_of_le) to go back (do `h.lt_of_le.linearOrder` instead of `h.linearOrder`).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
19/8 |
Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/Preorder/Chain.lean,Mathlib/SetTheory/Cardinal/EventuallyConst.lean |
3 |
1 |
['github-actions'] |
nobody |
21-43449 21 days ago |
21-47022 21 days ago |
21-50911 21 days |
| 42200 |
tb65536 author:tb65536 |
feat(GroupTheory/Finiteness): add general `IsMulFG` |
This PR adds a general `IsMulFG` predicate that generalizes all four existing definitions `Monoid.FG`, `Submonoid.FG`, `Group.FG` and `Subgroup.FG`. Ultimately the plan will be to deprecate all four existing definitions in favor of `IsMulFG`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-group-theory
label:t-algebra$ |
178/0 |
Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Data/Set/Finite/Basic.lean,Mathlib/GroupTheory/Finiteness.lean |
3 |
13 |
['eric-wieser', 'github-actions', 'tb65536', 'vihdzp', 'vlad902'] |
nobody |
21-40056 21 days ago |
21-43701 21 days ago |
35-29415 35 days |
| 41438 |
SnirBroshi author:SnirBroshi |
doc(Matrix): mention bundled forms in docstrings |
Followup to https://github.com/leanprover-community/mathlib4/pull/39123#issuecomment-4798925362
---
As in `Matrix.map`s docstring, the convention is "This is available in bundled forms as" and then listing bundled versions in asterisk bullet-points.
If there's only one item I went with "This is available in a bundled form as X".
For `Matrix.entry{AddHom/AddMonoidHom/LinearMap}` none of them is the "main" definition, so I added "see also" for each of them listing the other two.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
88/15 |
Mathlib/Data/Matrix/Basic.lean,Mathlib/Data/Matrix/Composition.lean,Mathlib/Data/Matrix/Diagonal.lean,Mathlib/Data/Matrix/Mul.lean,Mathlib/LinearAlgebra/Matrix/ConjTranspose.lean,Mathlib/LinearAlgebra/Matrix/Defs.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean,Mathlib/LinearAlgebra/Matrix/Permutation.lean |
8 |
16 |
['SnirBroshi', 'eric-wieser', 'github-actions', 'mathlib-splicebot', 'themathqueen'] |
nobody |
21-33461 21 days ago |
21-33461 21 days ago |
56-70916 56 days |
| 42244 |
marcelolynch author:marcelolynch |
perf(LinearAlgebra/TensorProduct/Tower): remove unused P' instance binders |
The Semiring section of this file declares `[Module B P']`, `[IsScalarTower R B P']`, and `[SMulCommClass A B P']`. The three declarations that use `P'` (`map_comp`, `rTensor_comp`, `congr_trans`) need only the `R`/`A`-side instances. No other declaration mentions `P'`. The unused binders are candidates in every `IsScalarTower` and `SMulCommClass` search in the section.
This PR removes the three unused instance binders. No signature changes: a full dump of the module's constant types is identical before and after. Standalone elaboration of the file goes from 5.47 s to 5.15 s (medians of 6 interleaved runs, −6 %).
Same mechanism as #42214 and #42238.
🤖 Generated with [Claude Code](https://claude.com/claude-code) |
t-algebra label:t-algebra$ |
2/2 |
Mathlib/LinearAlgebra/TensorProduct/Tower.lean |
1 |
3 |
['github-actions', 'leanprover-radar', 'marcelolynch'] |
nobody |
21-22113 21 days ago |
21-22133 21 days ago |
21-22013 21 days |
| 42675 |
vlad902 author:vlad902 |
feat(NielsenSchreier): add `to_additive` to Nielsen-Schreier theorem |
The proof of the Nielsen-Schreier theorem is not currently `to_additive`ized because it relies on category theory infrastructure like `End`/`IsFreeGroupoid`/`Quiver` that are not `to_additive` and don't appear to be very amenable to adding it.
Instead, `to_additive`ize Nielsen-Schreier by directly going across the isomorphism between `FreeGroup` and `Multiplicative (FreeAddGroup)`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
25/2 |
Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/FreeGroup/NielsenSchreier.lean,docs/1000.yaml |
3 |
4 |
['github-actions', 'vihdzp', 'vlad902'] |
nobody |
21-7636 21 days ago |
21-9494 21 days ago |
21-10877 21 days |
| 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 |
21-5959 21 days ago |
21-7687 21 days ago |
21-10600 21 days |
| 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'] |
nobody |
21-2530 21 days ago |
21-19137 21 days ago |
21-21055 21 days |
| 42505 |
attilavjda author:attilavjda |
chore(Algebra/Tropical/Basic): deduplicate five pairs of lemmas |
`On a LinearOrder`, `⊓`/`⊔` are `min`/`max`, so `trop_inf`, `untrop_sup`, `inf_eq_add`, and `trop_sup_def` are the same statements as `trop_min`, `untrop_max`, `min_eq_add`, and `trop_max_def`, respectively (three duplicated `simp` lemmas). Likewise, `injective_trop`/`injective_untrop` duplicate `trop_injective`/`untrop_injective`. The removed lemmas become deprecated aliases.
[I used Aristotle AI](https://github.com/attilavjda/formal-contributions/blob/main/tropical_dedup_lemmas/RequestProject/TropicalDedup.lean) it helped find the duplicates, and generated the solutions, verified the equivalences, and helped in understanding the proofs, and meaning of the refactor.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
LLM-generated
label:t-algebra$ |
8/17 |
Mathlib/Algebra/Tropical/Basic.lean |
1 |
2 |
['github-actions', 'wwylele'] |
nobody |
20-85756 20 days ago |
26-51431 26 days ago |
26-55183 26 days |
| 42683 |
harahu author:harahu |
chore(FieldTheory): tidy markdown headers |
Align markdown headers with the style guide:
- Ensure files have one and only one H1 header
- Use `## References`, like the style guide asks for
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/6 |
Mathlib/FieldTheory/Extension.lean,Mathlib/FieldTheory/Finite/Polynomial.lean,Mathlib/FieldTheory/Isaacs.lean,Mathlib/FieldTheory/JacobsonNoether.lean,Mathlib/FieldTheory/PurelyInseparable/AdjoinPthRoots.lean |
5 |
1 |
['github-actions'] |
nobody |
20-85590 20 days ago |
21-527 21 days ago |
21-407 21 days |
| 42685 |
harahu author:harahu |
chore(Geometry): tidy markdown headers |
This PR:
- Ensures files in `Mathlib/Geometry` have one and only one H1 header,
- Standardizes some H2 headers,
both enforcing the style guide.
The new title for `Mathlib/Geometry/Convex/Cone/Face/Lattice.lean` was suggested 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/)
|
|
14/13 |
Mathlib/Geometry/Convex/Cone/Face/Lattice.lean,Mathlib/Geometry/Manifold/Bordism.lean,Mathlib/Geometry/Manifold/ContMDiff/Basic.lean,Mathlib/Geometry/Manifold/ContMDiff/Constructions.lean,Mathlib/Geometry/Manifold/ContMDiff/NormedSpace.lean,Mathlib/Geometry/Manifold/ContMDiffMFDeriv.lean,Mathlib/Geometry/Manifold/Instances/Quotient.lean,Mathlib/Geometry/Manifold/IntegralCurve/Basic.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/Geometry/Manifold/IntegralCurve/Transform.lean,Mathlib/Geometry/Manifold/IntegralCurve/UniformTime.lean,Mathlib/Geometry/Manifold/MFDeriv/FDeriv.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Metric.lean |
13 |
1 |
['github-actions'] |
nobody |
20-84706 20 days ago |
20-85793 20 days ago |
20-85673 20 days |
| 40759 |
CoolRmal author:CoolRmal |
feat(Order): a sequence converges if every subsequence has a further convergent subsequence |
This PR proves `tendsto_of_forall_filter_le_exists_tendsto`, which is the filter version of the theorem in the title: if for any filter `m ≤ l₁`, there exists a nontrivial filter `n ≤ m` such that `f` converges to `l₂` along `n`, then `f` converges to `l₂` along `l₁`.
Mostly generated in a chat with GPT Pro 5.5. Polished and 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-order
LLM-generated
|
10/0 |
Mathlib/Order/Filter/Tendsto.lean |
1 |
5 |
['ADedecker', 'CoolRmal', 'attilavjda', 'github-actions'] |
nobody |
20-83665 20 days ago |
74-29336 74 days ago |
75-59046 75 days |
| 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 |
['github-actions'] |
nobody |
20-83396 20 days ago |
21-1345 21 days ago |
21-2788 21 days |
| 42671 |
harahu author:harahu |
chore(Data): tidy markdown headers |
We ensure files in `Mathlib/Data` have one and only one H1 header, thus enforcing the style guide.
New headers are 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-data |
31/12 |
Mathlib/Data/FinEnum.lean,Mathlib/Data/Fintype/BigOperators.lean,Mathlib/Data/Fintype/Sum.lean,Mathlib/Data/Int/ConditionallyCompleteOrder.lean,Mathlib/Data/List/Defs.lean,Mathlib/Data/List/Induction.lean,Mathlib/Data/List/Lookmap.lean,Mathlib/Data/List/ModifyLast.lean,Mathlib/Data/List/TakeWhile.lean,Mathlib/Data/Nat/Prime/Infinite.lean,Mathlib/Data/Nat/Set.lean,Mathlib/Data/Nat/Size.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Data/QPF/Multivariate/Constructions/Prj.lean,Mathlib/Data/Rat/Cast/OfScientific.lean,Mathlib/Data/Rat/NatSqrt/Defs.lean,Mathlib/Data/Vector/Defs.lean,Mathlib/Data/Vector/MapLemmas.lean,Mathlib/Data/Vector/Snoc.lean |
19 |
1 |
['github-actions'] |
nobody |
20-82061 20 days ago |
21-1363 21 days ago |
21-3735 21 days |
| 42472 |
yuanyi-350 author:yuanyi-350 |
feat(Topology/Homotopy/Lifting): add bijectivity results for monodromy evaluation |
|
t-topology |
40/0 |
Mathlib/Topology/Homotopy/Lifting.lean |
1 |
1 |
['github-actions'] |
nobody |
20-79899 20 days ago |
28-4828 28 days ago |
28-4708 28 days |
| 40472 |
karlesmarin author:karlesmarin |
feat(Combinatorics/SimpleGraph): oriented incidence matrix and the La… |
# feat(Combinatorics/SimpleGraph): oriented incidence matrix and the Laplacian factorization
## Summary
Adds the **oriented incidence matrix** of a simple graph and the standard **Gram factorization
of the graph Laplacian**:
- **`SimpleGraph.orientedIncMatrix R : Matrix α (Sym2 α) R`** — in the column of an edge
`e = s(u, w)` with `u < w`: `+1` at row `w` (the larger endpoint), `-1` at row `u`, `0`
elsewhere; columns of non-edges are zero. Orientation induced by a `LinearOrder` on the
vertex type.
- **`SimpleGraph.orientedIncMatrix_mul_transpose`** — `N * Nᵀ = G.lapMatrix R` (= `D − A`).
- Supporting API mirroring `incMatrix`: `orientedIncMatrix_apply`,
`orientedIncMatrix_of_notMem_incidenceSet`, `orientedIncMatrix_mul_self`
(the square of an entry is the unoriented `incMatrix` entry), and the two sign lemmas
`orientedIncMatrix_apply_mul_apply_of_adj` (product of the two endpoint entries = `-1`),
`orientedIncMatrix_apply_add_apply_of_adj` (their sum = `0`), plus
`orientedIncMatrix_apply_mul_apply_of_ne` (vanishing away from the common edge).
## Why
Mathlib has the unoriented `G.incMatrix`, whose Gram matrix is the **signless** Laplacian
`D + A` (`incMatrix_mul_transpose_diag` ff.), and it has `G.lapMatrix = D − A` with its kernel
theory — but no object connecting the two. The oriented incidence matrix is that object, and
`N Nᵀ = D − A` is the factorization behind: positive semidefiniteness of the Laplacian as a
Gram fact, Kirchhoff/matrix-tree determinant arguments (via Cauchy–Binet on the reduced
factorization), and total unimodularity of incidence matrices.
## Design notes
- The fixed smaller→larger orientation is harmless: any orientation gives the same Gram matrix
(each edge contributes `(±1)²` on the diagonal and `(+1)(−1)` off it). This is stated in the
module docstring; no orientation-genericity machinery is introduced.
- The headline proof is entrywise: the diagonal reduces to `sum_incMatrix_apply` (= degree)
through `orientedIncMatrix_mul_self`; an off-diagonal `(u, w)` entry is supported on the
single column `s(u, w)`, handled by `Finset.sum_eq_single` and the sign lemmas.
- `[Ring R]` for the API section (signs need negation); the definition itself only needs
`[Zero R] [One R] [Neg R]`.
## Files / placement
- `Mathlib/Combinatorics/SimpleGraph/OrientedIncMatrix.lean` (new)
- `Mathlib.lean` (+1 import line)
## Verification
- `lake env lean` on the file: clean, zero warnings.
- `#print axioms SimpleGraph.orientedIncMatrix_mul_transpose` → 3 standard axioms.
- The factorization and the downstream matrix-tree chain were validated numerically in exact
arithmetic (SageMath) before formalization.
Downstream context: DOI [10.5281/zenodo.20629746](https://doi.org/10.5281/zenodo.20629746).
|
new-contributor
LLM-generated
|
157/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/OrientedIncMatrix.lean |
2 |
1 |
['github-actions'] |
nobody |
20-75853 20 days ago |
83-62760 83 days ago |
83-62733 83 days |
| 33864 |
Timeroot author:Timeroot |
feat(Computability/Primrec): Proving several Nat arithmetic functions are primrec |
Prove that gcd, lcm, coprimality, divisiblity, primality, factorial, descending factorial, powers, and various logarithms are all primitive recursive.
Co-authored-by: Aristotle Harmonic <[aristotle-harmonic@harmonic.fun](mailto:aristotle-harmonic@harmonic.fun)>
|
large-import
t-computability
|
194/3 |
Mathlib.lean,Mathlib/Computability/Primrec/List.lean,Mathlib/Computability/Primrec/Nat.lean,Mathlib/Data/Nat/Log.lean |
4 |
8 |
['eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
nobody |
20-70204 20 days ago |
20-72088 20 days ago |
68-10034 68 days |
| 39524 |
FordUniver author:FordUniver |
feat(MeasureTheory/Integral/CurveIntegral): integrability and FTC along a line segment |
Specialises curve integration to the line segment between two points: smoothness of the segment as a `C¹` curve, sufficient conditions for a continuous one-form to be integrable along a segment, and a fundamental-theorem-of-calculus identity for the segment integral of a Fréchet derivative. Adds a new `Segment` section to `AffineMap.lean` that includes some previously existing results.
---
Used by a [planned descent-lemma PR for Lipschitz-smooth functions](https://github.com/FordUniver/mathlib4/blob/5ebc6dae88deb11410d21c0a2628f53c092bb536/Mathlib/Analysis/Calculus/LipschitzSmooth/FDeriv.lean#L133), which needs an FTC along an affine line to integrate a directional derivative over a segment. Three points to highlight:
1. I thought about renaming `curveIntegrable_segment` to `curveIntegrable_segment_iff` for consistency with the file's other `_iff`-suffixed biconditionals, but the new `_const` takes a different name slot, so the rename would be an unnecessary public API break.
2. `Path.segment_contDiffOn` is really a fact about `Path.segment` rather than about curve integration, so it would more naturally live in `Convex/PathConnected.lean`. Unfortunately that target is blocked by a build cycle (`Calculus.AddTorsor.AffineMap` already transitively imports `Convex.PathConnected` via `Convex.Topology`/`Convex.StdSimplex`), so it sits with its consumer here.
3. The new `Continuous{,On}.curveIntegrable_segment` lemmas are the obvious `@[fun_prop]` candidates, but `CurveIntegrable` isn't a registered `fun_prop` concept yet; that registration is a small design call (identity/constant/composition choices, plus tagging the file's pre-existing producers) worth its own focused review and is deferred to a follow-up. `Path.segment_contDiffOn` carries the tag since `ContDiffOn` is already registered.
- [x] depends on: #39206
Diff for the changes *just* in this PR over its predecessor: [link](https://github.com/FordUniver/mathlib4/compare/feat/lineMap-contDiff...feat/curveIntegral-segment-FTC) |
t-measure-probability |
51/13 |
Mathlib/MeasureTheory/Integral/CurveIntegral/Basic.lean |
1 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
RemyDegenne assignee:RemyDegenne |
20-58475 20 days ago |
20-58475 20 days ago |
62-4419 62 days |
| 28700 |
Timeroot author:Timeroot |
feat(ModelTheory): Set.Definable is transitive |
---
<!-- 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]
-->
This PR continues the work from #19695.
Original PR: https://github.com/leanprover-community/mathlib4/pull/19695
- [x] depends on: #26332
[](https://gitpod.io/from-referrer/)
|
t-logic
large-import
|
369/3 |
Mathlib/ModelTheory/Definability.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean |
3 |
9 |
['Timeroot', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'staroperator'] |
nobody |
20-55038 20 days ago |
20-55655 20 days ago |
23-59227 23 days |
| 42380 |
matt-w-horn author:matt-w-horn |
feat(Algebra/Ring): add sum_range_id_mul_geometric_add |
Over a `CommRing`: `∑ k < m, k * (x ^ k * (1 - x)) + m * x ^ m = ∑ k ∈ Icc 1 m, x ^ k`. Summation by parts for the geometric sum; it computes the mean of a censored geometric distribution, which #42381 adds.
Used in Overload, a library on retry and overload dynamics, where it's stated over `ℝ` with a side condition that turns out to be unnecessary: https://github.com/matt-w-horn/overload/blob/4ecbebf/Overload/Retry/Amplification.lean
Claude Fable wrote the Lean from a spec I gave it. I reviewed and tested it myself, including adversarial tests and the suites in the library above, and did the same for its dependencies.
Assisted-by: Claude Fable 5 |
t-algebra
new-contributor
LLM-generated
easy
label:t-algebra$ |
14/0 |
Mathlib/Algebra/Ring/GeomSum.lean |
1 |
4 |
['github-actions', 'matt-w-horn'] |
nobody |
20-42061 20 days ago |
20-43224 20 days ago |
20-43104 20 days |
| 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/)
|
|
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 |
3 |
['gasparattila', 'github-actions', 'plp127'] |
nobody |
20-41854 20 days ago |
20-51075 20 days ago |
21-2472 21 days |
| 41847 |
stalex444 author:stalex444 |
feat(Analysis/Matrix): tightness of the Tsirelson bound |
This file constructs the explicit real-Pauli CHSH tuple in 4×4 real matrices — X⊗1, Z⊗1, and (√2)⁻¹·(1⊗(X±Z)) — and proves it's a CHSH tuple. It also shows its CHSH operator sends the Bell vector ![1,0,0,1] to √2^3 times itself.
The PR also goes further than the request: √2^3 is the least constant bounding that operator in the Loewner order (via the scoped MatrixOrder instances + the existing tsirelson_inequality), so the constant in tsirelson_inequality cannot be improved.
Small honest caveat worth stating: the "over every algebra" corollary quantifies over Type (universe-0), since hypotheses can't quantify universes; the concrete least-constant statement is universe-free.
This Lean code was drafted with the help of AI (Claude Code). I reviewed the file; built it locally against current Mathlib master and confirmed that it compiled.
---
Questions for reviewers:
- happy to make B₀' and B₁' private if preferred
- happy to provide a ℂ-matrix version if that's more 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/)
|
new-contributor
LLM-generated
|
229/6 |
Mathlib.lean,Mathlib/Algebra/Star/CHSH.lean,Mathlib/Analysis/Matrix/CHSH.lean |
3 |
8 |
['github-actions', 'stalex444', 'vihdzp'] |
nobody |
20-40213 20 days ago |
47-33826 47 days ago |
47-33706 47 days |
| 42091 |
felixpernegger author:felixpernegger |
chore(RingTheory): fix `backward.inferInstanceAs.wrap.data` exception |
I am not sure why this works, but specifying the proof (rather def?) `Ideal.Quotient.algebraQuotientMapQuotient` resolves the necessity of the exception.
The `unfold ResidueField` is not necessarily needed. Also, `infer_instance` etc, does not work even after unfolding.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
tech debt
|
2/2 |
Mathlib/RingTheory/Unramified/LocalRing.lean |
1 |
5 |
['FrankieNC', 'felixpernegger', 'github-actions', 'leanprover-radar'] |
nobody |
20-38291 20 days ago |
20-38960 20 days ago |
38-53897 38 days |
| 42313 |
deancureton author:deancureton |
feat(RingTheory): embDomain composition and range, Laurent series expansion |
Add to the Hahn series API:
- `embDomain_embDomain` (composition of domain embeddings)
- `mem_range_embDomain_iff` (range of `embDomain` is characterized by support containment)
Add to the Laurent series API:
- the expansion ring endomorphism `LaurentSeries.expand` with its monomial and `orderTop` lemmas
- follows the pattern of `Polynomial.expand`, `MvPolynomial.expand`, `PowerSeries.expand`
- its opposite `LaurentSeries.contract`, with the decomposition of a Laurent series by exponent residues mod `n` (`sum_single_mul_expand_contract`) and its uniqueness (`contract_eq_of_sum_eq`)
- `exists_ofPowerSeries_eq_of_orderTop_nonneg`
This is the first of a series of PRs formalizing Puiseux series and Puiseux's theorem (entry 41 of Freek Wiedijk's 100 theorems list). |
t-ring-theory
new-contributor
LLM-generated
|
116/0 |
Mathlib/RingTheory/HahnSeries/Basic.lean,Mathlib/RingTheory/LaurentSeries.lean |
2 |
16 |
['deancureton', 'github-actions', 'wwylele'] |
nobody |
20-35102 20 days ago |
20-36442 20 days ago |
32-40057 32 days |
| 40922 |
Thmoas-Guan author:Thmoas-Guan |
feat(Algebra/Module): minimal generators of module over local ring |
In this PR, we proved for fg module over local ring, "two set of minimal generators can be transported by an invertible matrix", implemented as the commuting morphism between the source of the two surjection must be bijective.
(The last lemma is for transport between Koszul complex form two set of generators)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
93/0 |
Mathlib.lean,Mathlib/Algebra/Module/MinimalGenerators.lean |
2 |
1 |
['github-actions'] |
joelriou assignee:joelriou |
20-33237 20 days ago |
71-8989 71 days ago |
71-8869 71 days |
| 41517 |
sadasant author:sadasant |
feat(MeasureTheory): define Hellinger affinity |
Define the Hellinger affinity (Bhattacharyya coefficient) of two measures as an `ENNReal`-valued lintegral against the canonical dominating measure `μ + ν`, making the definition total with no absolute-continuity or integrability side conditions. Provide symmetry, invariance under the choice of sigma-finite dominating measure, the self-affinity of a probability measure, the `rnDeriv` and `withDensity` computation rules, the bound `≤ 1` for probability measures (via Hölder with `p = q = 2`), and the characterization that the affinity vanishes iff the measures are mutually singular. Groundwork for a formalization of Kakutani's dichotomy (1948) for infinite products of probability measures.
---
**Design notes.**
On the value type ("why not `ℝ` / `ℝ≥0` / `EReal`"): the `ℝ≥0∞`-valued lintegral against `μ + ν` makes the affinity total, which is what makes the singular direction of Kakutani's dichotomy (planned follow-up PRs) case-split-free — `hellingerAffinity_eq_zero_iff` already characterizes mutual singularity with no absolute-continuity hypothesis. `InformationTheory.klDiv` sets the precedent of an `ℝ≥0∞`-valued, standalone divergence-like quantity. The invariance lemma `hellingerAffinity_eq_lintegral_rnDeriv_mul_rnDeriv` recovers the textbook `∫ √(dμ/dρ · dν/dρ) dρ` for any σ-finite dominating `ρ`.
**Relation to f-divergences** (CC @RemyDegenne for coordination with the planned `fDiv` upstreaming from TestingLowerBounds): the affinity is the f-integral at `f = √·`, equivalently `1 −` the Hellinger-½ divergence, with `H²(μ,ν)/2 = 1 − affinity`. Rather than block on an unlanded framework, this PR keeps the affinity standalone (the `klDiv` pattern); when `fDiv` lands, a single bridging lemma of the shape `fDiv hellingerFun μ ν = 1 - hellingerAffinity μ ν` reconciles them, and I am happy to contribute it. Also happy to move the file to `Mathlib/InformationTheory/` if reviewers prefer that home over `Mathlib/MeasureTheory/Measure/`.
**Roadmap.** This is PR 1 of a planned sequence building toward Kakutani's dichotomy for `Measure.infinitePi` over an arbitrary index type (stronger than the textbook countable statement): the `lintegral` product Fubini and `Measure.pi_withDensity`, the infinite-product/summability bridges, then the singular and absolutely-continuous directions and the packaged dichotomy. Natural follow-up API for this file, available on request: `hellingerAffinity_pos_iff`, monotonicity in each argument, and the relation to the squared Hellinger distance once a distance exists.
**Attribution and AI disclosure.** This material was developed in the public [riemann-venue](https://github.com/idolum-ai/riemann-venue) repository by Daniel Rodriguez in collaboration with Claude Fable 5 (Anthropic), as part of a machine-checked formalization of Kakutani's dichotomy (1948) for infinite products of probability measures. The definitions, proofs, and the drafting of this description were done with Claude Fable 5 via Claude Code, working from a design and statement plan reviewed by the human author; all proofs are checked by Lean (`#print axioms` on the main results reports only `propext`, `Classical.choice`, `Quot.sound`), and the human author reviewed the final form, takes responsibility for it, and will answer all review comments personally. I am applying the `LLM-generated` label per the contribution guidelines. |
t-measure-probability
LLM-generated
new-contributor
|
214/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/Hellinger.lean |
2 |
4 |
['github-actions', 'sadasant'] |
RemyDegenne assignee:RemyDegenne |
20-33232 20 days ago |
55-42685 55 days ago |
55-42565 55 days |
| 42480 |
SnirBroshi author:SnirBroshi |
feat(Order/SuccPred/Limit): small theorems and generalizations |
Generalizes `IsSucc[Pre]limit.isLUB_Iio` from `LinearOrder` to `SemilatticeInf`,
and `IsSuccLimit.sSup_Iio` from `ConditionallyCompleteLinearOrderBot` to `ConditionallyCompleteLattice`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
64/26 |
Mathlib/Order/Cover.lean,Mathlib/Order/SuccPred/CompleteLinearOrder.lean,Mathlib/Order/SuccPred/Limit.lean,Mathlib/SetTheory/Cardinal/Cofinality/Enum.lean,Mathlib/SetTheory/ZFC/VonNeumann.lean,Mathlib/Topology/Order/AtTopBotIxx.lean,Mathlib/Topology/Order/Completion.lean |
7 |
13 |
['SnirBroshi', 'github-actions', 'vihdzp'] |
nobody |
20-32173 20 days ago |
20-34665 20 days ago |
27-35753 27 days |
| 41864 |
kebekus author:kebekus |
feat: estimate for logarithmic counting functions |
In preparation to the proof of the "Lemma of Logarithmic Derivatives" of Value Distribution Theory, establish the standard "Counting Estimate" for the logarithmic counting function. Simplify and streamline the API for restrictions of divisors a little.
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-topology
tech debt
LLM-generated
|
124/15 |
Mathlib/Analysis/Complex/ValueDistribution/FirstMainTheorem.lean,Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Basic.lean,Mathlib/Topology/LocallyFinsupp.lean |
3 |
1 |
['github-actions'] |
nobody |
20-10374 20 days ago |
20-10984 20 days ago |
46-55453 46 days |
| 42504 |
yuanyi-350 author:yuanyi-350 |
feat(Analysis/Calculus): add Euler's theorem for homogeneous functions |
Add a local, vector-valued version of [Euler's homogeneous function theorem](https://en.wikipedia.org/wiki/Homogeneous_function#Euler's_theorem).
Assume `f (t • x) = w t • f x` for `t` near `1`. If `f` has Fréchet derivative `f'` at `x` and `w` has derivative `w'` at `1`, conclude `f' x = w' • f x`. This formulation works over an arbitrary nontrivially normed field and for functions between normed spaces.
Also provide a corollary under the global homogeneity condition `∀ t y, f (t • y) = w t • f y`, and register both declarations in `docs/1000.yaml`. |
t-analysis |
45/4 |
Mathlib/Analysis/Calculus/LineDeriv/Basic.lean,docs/1000.yaml |
2 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
20-6479 20 days ago |
20-80882 20 days ago |
26-58206 26 days |
| 42699 |
FrankieNC author:FrankieNC |
chore: remove two more `backward.inferInstanceAs.wrap.data` exceptions |
This removes two of the last four `set_option backward.inferInstanceAs.wrap.data false` exceptions from the technical debt counter by using the `@[instance_reducible]` tag.
The `set_option` was stopping the deriving handler from hiding the copied `CoeFun.coe`/`CoeSort.coe` fields behind opaque `._aux_1` constants, which no simp lemma matches. The tag achieves the same by letting the synonyms unfold in the handler's type check (done at `instances` transparency), so the derived instances come out with the same names and values as before.
- `Mathlib/CategoryTheory/Skeletal.lean`: tag `Skeleton` with `@[instance_reducible]`.
- `Mathlib/Algebra/DirectSum/Basic.lean`: swap `@[implicit_reducible]` for `@[instance_reducible]` on `DirectSum` (`implicit` sits above `instances`, so the old tag was not enough).
The remaining two exceptions are handled in separate PRs: #42085 (`Mathlib/Algebra/Category/MonCat/Limits.lean`) and #42091 (`Mathlib/RingTheory/Unramified/LocalRing.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/)
|
tech debt |
2/4 |
Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/CategoryTheory/Skeletal.lean |
2 |
9 |
['FrankieNC', 'felixpernegger', 'github-actions', 'jcommelin', 'leanprover-radar'] |
nobody |
20-761 20 days ago |
20-2775 20 days ago |
20-44358 20 days |
| 42719 |
justinhalford author:justinhalford |
feat(LinearAlgebra/BilinearForm): totally isotropic subspaces have dimension at most half |
Adds one lemma to `Mathlib/LinearAlgebra/BilinearForm/Orthogonal.lean`:
```lean
lemma two_mul_finrank_le_of_le_orthogonal (hB : B.Nondegenerate) {W : Submodule K V}
(hW : W ≤ B.orthogonal W) : 2 * finrank K W ≤ finrank K V
```
A subspace contained in its own orthogonal complement — a *totally isotropic* subspace — has dimension at most half the dimension of the ambient space, when `B` is nondegenerate.
### Why
This is the standard dimension bound underlying the Witt decomposition, and it is the missing step in a number of applications: the Eventown theorem in extremal combinatorics, bounds on self-orthogonal linear codes, and dimension bounds for isotropic subspaces of quadratic forms. Searching for `totally isotropic` / `IsotropicSubmodule` / `isTotallyIsotropic` in Mathlib returns nothing, so as far as I can tell the bound is not currently available in any form.
The hypothesis is deliberately phrased as `W ≤ B.orthogonal W` rather than introducing a new `IsTotallyIsotropic` predicate, so that it composes directly with the existing `orthogonal` API and needs no new definitions.
### Proof
Three existing lemmas and arithmetic: `Submodule.finrank_mono` on the hypothesis, `finrank_orthogonal` (immediately above it in the same file), and `Submodule.finrank_le`. It sits directly after `finrank_orthogonal`, whose statement it consumes.
### Verification
Compiles against `master` with no errors or warnings. `#print axioms` reports only `[propext, Classical.choice, Quot.sound]`. No new imports, no new definitions — `+9 -0` in a single file.
### Disclosure
Written with AI assistance (Claude Opus 5) and checked against the Lean kernel; I have read the statement and proof through before submitting. Happy to rename or restate as maintainers prefer — in particular if there is an appetite for an `IsTotallyIsotropic` predicate, I am glad to add one and state this in those terms instead.
### Related
Companion to #42718 (the linear algebra method and Oddtown), which will use this bound for the Eventown theorem, but the two are independent and this one stands alone.
|
t-algebra
new-contributor
label:t-algebra$ |
9/0 |
Mathlib/LinearAlgebra/BilinearForm/Orthogonal.lean |
1 |
2 |
['github-actions'] |
nobody |
19-85509 19 days ago |
19-86117 19 days ago |
19-85997 19 days |
| 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 |
2 |
['github-actions'] |
nobody |
19-83919 19 days ago |
19-85680 19 days ago |
19-85560 19 days |
| 41607 |
mbkybky author:mbkybky |
chore(RingTheory/DedekindDomain): update definitions |
Update [IsDedekindRing](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/DedekindDomain/Basic.html#IsDedekindRing) to extend `IsNoetherianRing A` instead of `IsNoetherian A A`, bringing their definitions closer to the usual mathematical formulations.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
1/1 |
Mathlib/RingTheory/DedekindDomain/Basic.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
19-83155 19 days ago |
19-83975 19 days ago |
50-73374 50 days |
| 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 |
19-82410 19 days ago |
20-494 20 days ago |
20-374 20 days |
| 42693 |
justin-palumbo author:justin-palumbo |
feat(Topology/MetricSpace): a Gδ subset of a Polish space is Polish |
Adds `IsGδ.polishSpace`: a Gδ subset of a Polish space is Polish.
The proof follows the outline in Anush Tserunyan's descriptive set theory notes, https://www.math.mcgill.ca/atserunyan/Teaching_notes/dst_lectures.pdf where it is attributed to A. Bernshteyn. The "usual" approach (as in Kechris's Classical Descriptive Set Theory) constructs a complete compatible metric (the "Alexandrov metric"). The approach taken here is snappier to formalize - the idea is to give a closed embeddding from the G\delta set into another Polish space, and appeal to the fact closed subsets of Polish spaces are Polish. [Note the Alexandrov metric is recoverable from the embedding via the induced complete metrics on the product topology.]
This PR is a pure addition: nothing is removed and no existing signature changes. `TopologicalSpace.Opens.CompleteCopy` and `IsOpen.polishSpace` are untouched, so the open case is still proved independently rather than derived from this result.
---
Question: `IsOpen.polishSpace` could now be proven directly from`isGδ.polishSpace`, and `CompleteCopy` completely retired. That feels cleaner to me, given `CompleteCopy` has had no users since it was ported along with everything else in 2023: #3357. The main argument for keeping is that leveraging `CompleteCopy` is slightly more explicit in proving that open subsets are Polish. Happy to remove in a follow-up, in this PR, or not at all :)
LLM usage disclaimer: I wrote an original local version of this PR myself, and then used Claude Opus to double-check / simplify / help me pull out names of relevant theorems from mathlib. The primary non-trivial contribution from LLM was idea of leveraging isClosed_eq (ie proving closure of range by framing the range of the embedding as a countable intersection of pairs satisfying closed equations). I take full responsibility for the code here |
new-contributor
t-topology
|
117/2 |
Mathlib/Topology/MetricSpace/Polish.lean |
1 |
9 |
['felixpernegger', 'github-actions', 'justin-palumbo'] |
nobody |
19-67692 19 days ago |
20-58465 20 days ago |
20-58345 20 days |
| 42737 |
Jack1320 author:Jack1320 |
feat(Algebra/Order/Kleene): add Kleene algebra instances for MulOppos… |
Add IdemSemiring, IdemCommSemiring, and KleeneAlgebra instances for MulOpposite, AddOpposite, and ULift, partially addressing #7987.
In accordance to the AI disclosure guidelines - Claude was used as a learning aid, but all code is personally written and reasoned through.
The remaining instances (Subsemiring, Subring, Subalgebra) are deferred to a follow-up PR.
|
t-algebra
new-contributor
label:t-algebra$ |
100/2 |
Mathlib/Algebra/Order/Kleene.lean |
1 |
2 |
['github-actions'] |
nobody |
19-62891 19 days ago |
19-64910 19 days ago |
19-66138 19 days |
| 42665 |
SnirBroshi author:SnirBroshi |
chore(SimpleGraph/Coloring/Constructions): some golfs |
Also remove the `2 ≤ n` hypothesis from `cycleGraph.tricoloring`, and spell `two_colorable_iff_forall_loop_even` using `IsBipartite`.
---
- `cycleGraph.tricoloring`: 165ms to 110ms
- `chromaticNumber_cycleGraph_of_odd`: 25ms to 55ms
- `two_colorable_iff_forall_loop_even`: 50ms to 40ms
- `IsTree.coloringTwoOfVert`: 45ms to 75ms
- `IsAcyclic.coloringTwoOfVerts`: 50ms to 50ms
The issues in `tricoloring` kinda remind me of #41338; maybe there's a good lemma that'll help them both, 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-combinatorics |
37/64 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Constructions.lean |
2 |
1 |
['github-actions'] |
nobody |
19-60629 19 days ago |
21-48292 21 days ago |
21-48172 21 days |
| 42706 |
felixpernegger author:felixpernegger |
feat(Topology): generalise Lipschitz to `WeakPseudoEMetricSpace` |
The definition of `LipschitzWith` itself, I changed to only require `EDist`, since that is all that being used
(a few generalizations about continuity were made by Codex, but this PR is largely done by hand, so i wouldnt call it LLM generated)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #42688
[](https://gitpod.io/from-referrer/)
|
t-topology |
89/68 |
Mathlib/Topology/EMetricSpace/Lipschitz.lean,Mathlib/Topology/MetricSpace/Antilipschitz.lean |
2 |
6 |
['felixpernegger', 'gasparattila', 'github-actions', 'mathlib-dependent-issues'] |
nobody |
19-57639 19 days ago |
19-58302 19 days ago |
19-58505 19 days |
| 42343 |
brianrabern author:brianrabern |
feat(Combinatorics/SimpleGraph): extend a coloring to one more vertex |
Add `Colorable.of_induce_compl_singleton`: if deleting a vertex `v` leaves an `n`-colourable graph and `deg(v) < n`, then `G` itself is `n`-colourable.
This is a local colouring-extension / induction step (colour `G - v`, then assign `v` a free colour). It is useful for inductive arguments such as Brooks' theorem. The global greedy bound `χ ≤ Δ + 1` is developed separately in #38357.
AI assistance: LLM was used to smooth it out and put things in the expected style
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
LLM-generated
|
35/0 |
Mathlib/Combinatorics/SimpleGraph/Coloring/Vertex.lean |
1 |
11 |
['Parcly-Taxel', 'SnirBroshi', 'bocowgill', 'brianrabern', 'github-actions'] |
nobody |
19-44372 19 days ago |
28-65805 28 days ago |
31-20805 31 days |
| 42748 |
harahu author:harahu |
chore(LinearAlgebra): tidy markdown headers |
Ensure that files in `Mathlib/LinearAlgebra` have one and only one H1 header. Also align some H2 headers with the documentation style guide.
Newly authored headers 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-algebra label:t-algebra$ |
11/7 |
Mathlib/LinearAlgebra/Matrix/Gershgorin.lean,Mathlib/LinearAlgebra/Prod.lean,Mathlib/LinearAlgebra/Projectivization/PSL/PSL2.lean,Mathlib/LinearAlgebra/Quotient/Card.lean,Mathlib/LinearAlgebra/RootSystem/Finite/Nondegenerate.lean,Mathlib/LinearAlgebra/TensorPower/Symmetric.lean |
6 |
1 |
['github-actions'] |
nobody |
19-37821 19 days ago |
19-39889 19 days ago |
19-39769 19 days |
| 42749 |
kim-em author:kim-em |
feat(RingTheory/Bialgebra): expose (Add)MonoidAlgebra.liftMulEquiv |
This PR marks `MonoidAlgebra.liftMulEquiv` and `AddMonoidAlgebra.liftMulEquiv`
`@[expose, simps!]`, matching `mapDomainBialgHomMulEquiv` in the same file, which
is built the same way out of an equivalence composed with `WithConv.equiv` and
already carries both attributes. Without them the definitions are opaque
downstream: their bodies cannot be unfolded, and no lemma computes their
application or the application of their inverse, so `liftMulEquiv` cannot be
related to `lift` outside this file.
🤖 Prepared with Claude Code |
t-ring-theory |
2/0 |
Mathlib/RingTheory/Bialgebra/MonoidAlgebra.lean |
1 |
1 |
['github-actions'] |
nobody |
19-37244 19 days ago |
19-37244 19 days ago |
19-37124 19 days |
| 40368 |
Sanghyeok0 author:Sanghyeok0 |
feat: add confluence predicates for relations |
This PR adds a minimal relation-level API for confluence-style properties:
* `Relation.Diamond`
* `Relation.Confluent`
* `Relation.ChurchRosser`
It also adds the basic API connecting these predicates:
* `Relation.ReflTransGen.to_eqvGen`
* `Relation.Join.to_eqvGen`
* `Relation.ChurchRosser.confluent`
* `Relation.Confluent.churchRosser`
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*.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
79/5 |
Mathlib/Logic/Relation.lean |
1 |
8 |
['Sanghyeok0', 'chenson2018', 'github-actions', 'mathlib-merge-conflicts'] |
fpvandoorn assignee:fpvandoorn |
19-33243 19 days ago |
44-77527 44 days ago |
68-2798 68 days |
| 41258 |
ungatz author:ungatz |
feat(Analysis/Fourier/FiniteAbelian): add the Donoho-Stark support uncertainty principle |
This adds the Donoho–Stark support uncertainty inequality for the unitary Fourier transform on a finite abelian group, plus the supporting Fourier-inversion machinery indexed by the Pontryagin dual `AddChar G ℂ`.
The headline:
> **Theorem `AddChar.donoho_stark`.** For nonzero `f : G → ℂ`,
> `Fintype.card G ≤ (support f).ncard * (support (fourierTransform f)).ncard`,
> where `fourierTransform f ψ = |G|^(-1/2) * ∑ g, conj (ψ g) * f g` ranges over `ψ : AddChar G ℂ`.
The proof is the elementary (L¹, L∞) duality argument that any harmonic-analysis textbook gives for the classical `ZMod N` case; no Parseval or Cauchy–Schwarz is needed. The finite-abelian generalisation is folklore (stated in Tao–Vu *Additive Combinatorics* and Terras *Fourier Analysis on Finite Groups*); I did not find it formalised in Mathlib or any other major library.
### Why this belongs in Mathlib
Mathlib already has the supporting infrastructure — character theory of finite abelian groups (`Mathlib.Algebra.Group.AddChar`), character orthogonality and Pontryagin duality (`Mathlib.Analysis.Fourier.FiniteAbelian.{Orthogonality, PontryaginDuality}`). The Donoho–Stark inequality is the canonical application of all three, and its absence is a real gap: I needed it for a downstream operator-uncertainty result (a diagonal-operator `rank * Pauli-support` bound on the finite Heisenberg group reduces to it) and ended up proving it from scratch. Beyond that use, it is a standard tool in compressed sensing on finite abelian groups, additive combinatorics, and discrete signal recovery (the 1989 paper has ~3500 citations).
### What's in this PR
A single new file, `Mathlib/Analysis/Fourier/FiniteAbelian/DonohoStark.lean`:
- `AddChar.fourierTransform` — the unitary (symmetric) Fourier transform indexed by `AddChar G ℂ`;
- `AddChar.fourier_inversion` — the inversion formula;
- `AddChar.norm_fourierTransform_le`, `AddChar.norm_le_sum_norm_fourierTransform` — the two `L∞ ≤ |G|^(-1/2) · L¹` triangle bounds;
- `AddChar.donoho_stark` — the support uncertainty inequality.
Design choices I expect questions on, and my defaults:
- **`ℂ` rather than `RCLike`**: matches the cited literature and the cleanest home of `AddChar.norm_apply`; happy to generalise if preferred.
- **`Set.ncard` for support sizes**: avoids needing `DecidableEq ℂ` in the statement.
- **A new sibling file** of `Orthogonality.lean` / `PontryaginDuality.lean` rather than a subsection: orthogonality is the tool, Donoho–Stark is the application; can inline if preferred.
Deliberately *not* included: the diagonal-operator `rank * Pauli-support ≥ 2^n` corollary from my workspace — the Pauli-word machinery has no natural home in `Analysis/Fourier` yet; happy to factor it into a follow-up if there is interest.
### AI usage disclosure
Per the [AI contribution policy](https://leanprover-community.github.io/contribute/index.html): the original Lean proof was generated by **Aristotle** (Harmonic AI's automated proof system) from a dispatch containing the statement and the (L¹, L∞) proof strategy, as part of my PhD research workspace. I audited the delivery line by line against Donoho–Stark 1989 (the dispatch also produced a kernel-checked counterexample to a tempting wrong variant — replacing rank by the count of distinct eigenvalues — which the 2×2 identity falsifies). The file here is my adaptation to Mathlib conventions and to current master (module system, `Set.ncard` statement, robust cast handling in the inversion proof), with final tactic-level repairs done with the assistance of Claude (Anthropic). I understand and can defend every line without AI assistance. Please add the `LLM-generated` label (I cannot set labels myself).
### Test plan
- [x] `lake build Mathlib.Analysis.Fourier.FiniteAbelian.DonohoStark` clean (0 errors, 0 warnings).
- [x] `#print axioms` on all five declarations: `[propext, Classical.choice, Quot.sound]`.
- [x] `lake exe lint-style` clean; all lines ≤ 100 chars.
- [x] `Mathlib.lean` updated in alphabetical position.
- [x] Imports minimal (`PontryaginDuality` + `RCLike.Basic` only).
### Reference
Donoho, D. L. and Stark, P. B. (1989). *Uncertainty principles and signal recovery.* SIAM Journal on Applied Mathematics, **49**(3): 906–931. https://doi.org/10.1137/0149053
---
|
t-analysis
new-contributor
LLM-generated
|
283/0 |
Mathlib.lean,Mathlib/Analysis/Fourier/FiniteAbelian/DonohoStark.lean |
2 |
4 |
['YaelDillies', 'copilot-pull-request-reviewer', 'felixpernegger', 'github-actions'] |
urkud assignee:urkud |
19-33243 19 days ago |
62-38923 62 days ago |
62-38803 62 days |
| 42735 |
FrankieNC author:FrankieNC |
chore(Probability/ProbabilityMassFunction): remove defeq option in Monad |
Remove the `set_option backward.isDefEq.respectTransparency` false in `Mathlib/Probability/ProbabilityMassFunction/Monad.lean`, on `bindOnSupport_bindOnSupport`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-measure-probability
|
17/6 |
Mathlib/Probability/ProbabilityMassFunction/Monad.lean |
1 |
1 |
['github-actions'] |
kex-y assignee:kex-y |
19-33232 19 days ago |
19-68715 19 days ago |
19-68595 19 days |
| 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'] |
nobody |
19-9021 19 days ago |
19-9554 19 days ago |
34-22776 34 days |
| 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'] |
nobody |
19-7272 19 days ago |
19-7272 19 days ago |
25-5428 25 days |
| 42646 |
mo271 author:mo271 |
feat(Algebra/Group/Action/Pointwise/Set/Basic): `mul_mem_smul_set` |
Ported from the ForMathlib dir of Formal Conjectures.
Original PR
https://github.com/google-deepmind/formal-conjectures/pull/1439
Co-authored-by: Yaël Dillies <yael.dillies@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/)
|
|
9/9 |
Mathlib/Algebra/Group/Action/Pointwise/Set/Basic.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Defs.lean |
2 |
3 |
['github-actions', 'mo271'] |
nobody |
19-6828 19 days ago |
19-9010 19 days ago |
19-10581 19 days |
| 41542 |
tb65536 author:tb65536 |
refactor(AlgebraicGeometry/Sites/Small): golf and remove some `backward.isDefEq.respectTransparency` |
This PR golfs and removes some `backward.isDefEq.respectTransparency`. Some proofs with the help of Claude, with further golfing 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory
tech debt
LLM-generated
|
59/135 |
Mathlib/AlgebraicGeometry/Sites/Small.lean,Mathlib/CategoryTheory/Sites/Over.lean |
2 |
7 |
['dagurtomas', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'tb65536'] |
nobody |
19-2940 19 days ago |
19-3675 19 days ago |
52-83395 52 days |
| 41401 |
vlad902 author:vlad902 |
feat(RingTheory): `Ideal.span` corollaries of Krull's height theorem |
Currently we have statements bounding the height of minimal primes of `Ideal.span S`. Add the obvious corollaries to bound the height of `Ideal.span S` directly.
Also add a `Set.encard`-valued statement of Krull's height theorem. In a Noetherian ring we know the bound should always be finite, but this is useful in downstream applications that are using `ENat`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
26/1 |
Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean |
1 |
1 |
['github-actions'] |
nobody |
18-86061 18 days ago |
58-3826 58 days ago |
58-4167 58 days |
| 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/)
|
large-import
t-combinatorics
|
37/31 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean |
1 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
18-78617 18 days ago |
18-80821 18 days ago |
18-84474 18 days |
| 42766 |
harahu author:harahu |
chore(Order): tidy markdown headers |
This PR:
- Ensures all files in `Mathlib/Order` have an H1 header.
- Aligns some H2 headers with the examples in the documentation style guide.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
8/5 |
Mathlib/Order/Comparable.lean,Mathlib/Order/CompleteSublattice.lean,Mathlib/Order/Completion.lean,Mathlib/Order/Interval/Set/OrdConnectedLinear.lean,Mathlib/Order/Quotient.lean,Mathlib/Order/Types/Arithmetic.lean |
6 |
1 |
['github-actions'] |
nobody |
18-76538 18 days ago |
18-77136 18 days ago |
18-77016 18 days |
| 41427 |
YaelDillies author:YaelDillies |
refactor(Algebra/MvPolynomial): delete `coeff` |
... without a deprecation because we want dot notation to resolve to `AddMonoidAlgebra.coeff`.
For migration, replace bare `MvPolynomial.coeff`s with `AddMonoidAlgebra.coeff`. Dot notation `.coeff` will resolve to `AddMonoidAlgebra.coeff` without further change. `MvPolynomial.coeff m p` corresponds to `AddMonoidAlgebra.coeff p m`, so you will need to swap arguments. Note further that `AddMonoidAlgebra.coeff p` is bundled as a `Finsupp` while `MvPolynomial.coeff` is a bare 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/)
|
tech debt
t-algebra
label:t-algebra$ |
247/242 |
Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Coeff.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/MvPolynomial/Division.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/Funext.lean,Mathlib/Algebra/MvPolynomial/Monad.lean,Mathlib/Algebra/MvPolynomial/Nilpotent.lean,Mathlib/Algebra/MvPolynomial/NoZeroDivisors.lean,Mathlib/Algebra/MvPolynomial/PDeriv.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/FieldTheory/AxGrothendieck.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/NumberTheory/Height/MvPolynomial.lean,Mathlib/RingTheory/Extension/Generators.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/MvPolynomial/Basic.lean,Mathlib/RingTheory/MvPolynomial/FreeCommRing.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/RingTheory/MvPolynomial/IrreducibleQuadratic.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Trunc.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/IsIntegral.lean,Mathlib/RingTheory/Polynomial/Quotient.lean,Mathlib/RingTheory/Spectrum/Prime/Polynomial.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean |
35 |
12 |
['YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'mathlib-splicebot'] |
nobody |
18-75534 18 days ago |
18-77048 18 days ago |
52-48385 52 days |
| 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'] |
nobody |
18-65974 18 days ago |
51-51091 51 days ago |
53-19273 53 days |
| 41373 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph): some `CliqueFree`/`Free` 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-combinatorics |
29/0 |
Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Copy.lean |
2 |
1 |
['github-actions'] |
nobody |
18-53715 18 days ago |
59-39380 59 days ago |
59-39260 59 days |
| 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>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
6/11 |
Mathlib/Combinatorics/SimpleGraph/Girth.lean |
1 |
1 |
['github-actions'] |
nobody |
18-49849 18 days ago |
60-34394 60 days ago |
60-34274 60 days |
| 41610 |
SnirBroshi author:SnirBroshi |
chore(Logic/Relation): golf using `grind` |
Also tag `Relation.map_apply` with `grind =`.
---
- `comp_assoc`: 14ms to 23ms
- `IsTrans.map`: 10ms to 28ms
- `instIsPreorderOfIsTrans`: ? to 11ms
- `total_of_right_unique`: ? to 80ms
- `isTrans_join`: 10ms to 100ms
- `Quot.eqvGen_sound`: ? to ?
- `Equivalence.eqvGen_iff`: ? to 14ms
(the question marks mean that `trace.profiler` doesn't output anything, maybe they're below 1ms?)
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
17/52 |
Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Logic/Relation.lean |
2 |
12 |
['SnirBroshi', 'b-mehta', 'chenson2018', 'github-actions', 'grunweg', 'leanprover-radar', 'themathqueen'] |
nobody |
18-42313 18 days ago |
18-45796 18 days ago |
46-59025 46 days |
| 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/)
|
|
63/67 |
Archive/Imo/Imo1981Q3.lean,Archive/Imo/Imo2024Q3.lean,Mathlib/Algebra/Lie/LieTheorem.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/Algebra/Polynomial/Sequence.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/Init.lean,Mathlib/Data/Nat/Nth.lean,Mathlib/FieldTheory/IsRealClosed/Basic.lean,Mathlib/FieldTheory/Separable.lean,Mathlib/GroupTheory/GroupAction/Jordan.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/LinearAlgebra/Eigenspace/Triangularizable.lean,Mathlib/LinearAlgebra/Finsupp/Pi.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Defs.lean,Mathlib/NumberTheory/Bernoulli.lean,Mathlib/NumberTheory/BernoulliPolynomials.lean,Mathlib/NumberTheory/DiophantineApproximation/Basic.lean,Mathlib/NumberTheory/ModularForms/LevelOne/DimensionFormula.lean,Mathlib/NumberTheory/Pell.lean,Mathlib/NumberTheory/Primorial.lean,Mathlib/Order/Fin/Basic.lean,Mathlib/Order/KrullDimension.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Etale/QuasiFinite.lean,Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,Mathlib/RingTheory/Ideal/Quotient/Nilpotent.lean,Mathlib/RingTheory/IntegralClosure/IsIntegral/AlmostIntegral.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/IsIntegral.lean,Mathlib/RingTheory/Polynomial/Nilpotent.lean,Mathlib/RingTheory/Polynomial/Resultant/Basic.lean,Mathlib/RingTheory/WittVector/Defs.lean,Mathlib/RingTheory/WittVector/Frobenius.lean,Mathlib/RingTheory/WittVector/StructurePolynomial.lean,Mathlib/RingTheory/ZariskisMainTheorem.lean,Mathlib/Topology/Metrizable/Uniformity.lean |
51 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
18-39607 18 days ago |
18-42680 18 days ago |
21-29197 21 days |
| 40636 |
xroblot author:xroblot |
feat(RingTheory/FractionalIdeal): IsMulTorsionFree instance |
- Adds `FractionalIdeal.isMulTorsionFree_of_le_nonZeroDivisors`: if `S ≤ R⁰` and `[IsMulTorsionFree (Ideal R)]`, then `IsMulTorsionFree (FractionalIdeal S P)`.
- Derives `FractionalIdeal.instIsMulTorsionFree` for the fraction field case (`S = R⁰`).
Also adds a discoverability note in `DedekindDomain/Ideal/Basic.lean` pointing to `Mathlib.Algebra.GroupWithZero.Torsion` for the `IsMulTorsionFree (Ideal A)` instance (hence also `IsMulTorsionFree (FractionalIdeal A⁰ K)`).
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude. |
t-ring-theory |
44/0 |
Mathlib/RingTheory/DedekindDomain/Ideal/Basic.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean |
2 |
1 |
['github-actions'] |
nobody |
18-38641 18 days ago |
52-75331 52 days ago |
52-75255 52 days |
| 42757 |
mckoen author:mckoen |
feat(CategoryTheory/Subobject): extend exists and pullback API |
Extends some API for the `exists` and `pullback` functors on `Subobject` and `MonoOver`. This PR exists to split up #41769.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
81/1 |
Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/MonoOver.lean |
2 |
1 |
['github-actions'] |
robin-carlier assignee:robin-carlier |
18-33240 18 days ago |
19-30966 19 days ago |
19-31069 19 days |
| 38716 |
YaelDillies author:YaelDillies |
feat(Algebra/Order): `NNRat.cast_sub` |
From AddCombi
---
- [x] depends on: #41850
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
13/2 |
Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Data/NNRat/Defs.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
18-32341 18 days ago |
40-3355 40 days ago |
40-9520 40 days |
| 42786 |
rshlyakh author:rshlyakh |
feat(Data/Finsupp/NatCard): count finsupps of bounded degree |
Adds the formula that the number of finitely-supported functions `α →₀ ℕ` with degree less than or equal to `n` is equal to `Nat.choose (Nat.card α + n) n`. The proof is by establishing an equivalence `Sym (Option α) n ≃ {f : α →₀ ℕ // f.degree ≤ n}` and using the stars-and-bars formula `Sym.equivNatSum.`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
new-contributor
|
56/0 |
Mathlib.lean,Mathlib/Data/Finsupp/NatCard.lean |
2 |
2 |
['github-actions'] |
nobody |
18-28464 18 days ago |
18-29106 18 days ago |
18-31620 18 days |
| 41293 |
riccardobrasca author:riccardobrasca |
feat: add WeierstrassCurve.exists_variableChange_lift |
We add `WeierstrassCurve.exists_variableChange_lift`, a variable change over the fraction field between integral Weierstrass equations descends to the
base ring if its `u` coefficient descends to a unit of the base ring.
---
A first version of the code has been generated by Claude, but it has gone through extensive review by me before opening 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]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
45/0 |
Mathlib/AlgebraicGeometry/EllipticCurve/Reduction.lean |
1 |
2 |
['Multramate', 'github-actions'] |
Multramate assignee:Multramate |
18-8282 18 days ago |
55-8426 55 days ago |
56-308 56 days |
| 42795 |
harahu author:harahu |
chore(RepresentationTheory): tidy markdown headers |
Ensure all files in `Mathlib/RepresentationTheory` have an H1 header. Clean up some H2 headers while we're at 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
8/4 |
Mathlib/RepresentationTheory/Action.lean,Mathlib/RepresentationTheory/Continuous/Basic.lean,Mathlib/RepresentationTheory/Equiv.lean,Mathlib/RepresentationTheory/Homological/ContCohomology/LowDegree.lean,Mathlib/RepresentationTheory/Tannaka.lean |
5 |
1 |
['github-actions'] |
nobody |
18-948 18 days ago |
18-1609 18 days ago |
18-1489 18 days |
| 42788 |
andreylukin author:andreylukin |
feat(Combinatorics/Sperner): define facet incidence data |
## Summary
Adds a small finite facet-ridge incidence interface intended as a prerequisite for the general Sperner lemma (#25231).
- defines finite facets, ridges, and their incidence relation;
- assumes every ridge has one or two cofacets;
- defines boundary and interior ridges and proves that they are disjoint and partition the ridges.
This deliberately does not claim the geometric Sperner theorem. A future development must connect finite triangulations of the standard simplex to this incidence interface and establish the required coface-count property.
## Validation
- `lake build Mathlib.Combinatorics.Sperner.Basic`
- `lake env lean -DwarningAsError=false Mathlib.lean`
Towards #25231
|
t-combinatorics
new-contributor
|
117/0 |
Mathlib.lean,Mathlib/Combinatorics/Sperner/Basic.lean |
2 |
2 |
['github-actions'] |
nobody |
17-63876 17 days ago |
17-66571 17 days ago |
17-66571 17 days |
| 40788 |
FrankieNC author:FrankieNC |
feat: uniformly integrable Lᵖ tails tend to 0 uniformly |
Adds `UniformIntegrable.tendsto_iSup_eLpNorm_indicator_atTop`: for a uniformly integrable family `f`,
Tendsto (fun M ↦ ⨆ i, eLpNorm ({x | M ≤ ‖f i x‖₊}.indicator (f i)) p μ) atTop (𝓝 0).
This is the `Tendsto` companion to the existing `UniformIntegrable.spec`, which only provides, for each `ε`, a single threshold `C`.
This is the form that arises when truncating an L¹/Lᵖ family at increasing norm levels — e.g. vector-valued truncation / Komlós-type arguments — where the existing ProbabilityTheory.truncation does not apply, being real- and order-interval-valued.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
brownian
|
120/5 |
Mathlib/MeasureTheory/Function/UniformIntegrable.lean |
1 |
27 |
['CoolRmal', 'EtienneC30', 'FrankieNC', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] |
EtienneC30 assignee:EtienneC30 |
17-52647 17 days ago |
17-53704 17 days ago |
73-70388 73 days |
| 42758 |
cameronfreer author:cameronfreer |
feat(ModelTheory): add syntax and semantics for infinitary logic |
Add basic syntax and semantics for infinitary model theory of L∞ω (and Lω₁ω).
The new `BoundedFormulaInf L ι α n` uses index type `ι` for all of a formula's infinitary conjunctions and disjunctions, and the definitional
```lean
abbrev BoundedFormulaω (α : Type u') (n : ℕ) := L.BoundedFormulaInf ℕ α n
```
lands in exactly the universe of 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).
This PR contains `iSup`/`iInf` constructors, derived connectives together with `alls`/`exs`, `Realize` with `simp` lemmas for every 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 |
17-48514 17 days ago |
19-31415 19 days ago |
19-31295 19 days |
| 40495 |
gw90 author:gw90 |
feat: weighted graphs with killing term |
Adding basic definitions and API for weighted graphs and weighted graphs with killing term.
---
My goal is to develop the basic theory from the beginning of [this textbook](https://www.math.uni-potsdam.de/fileadmin/user_upload/Prof-GraphTh/Keller/KellerLenzWojciechowski_GraphsAndDiscreteDirichletSpaces_wu_version.pdf). I also have some definitions and lemmas regarding Dirichlet forms and Laplacians to PR later, but I tried to pare down this first PR as much as possible. It currently has only 4 main definitions and sufficient API to demonstrate their correctness.
Note that I did not use [SimpleGraph.edgeLabeling](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=SimpleGraph.EdgeLabeling#doc) for the edgeWeight function because it is important that vertices that are not adjacent have an edge weight of zero. That is, the edgeWeight must be defined for all pairs of vertices and respect the underlying adjacency relation on the graph.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
368/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Weighted/Basic.lean,docs/references.bib |
3 |
2 |
['github-actions'] |
b-mehta assignee:b-mehta |
17-33243 17 days ago |
82-30906 82 days ago |
82-30786 82 days |
| 40557 |
xroblot author:xroblot |
feat(RingTheory/Ideal): generalize span_singleton_dvd_span_singleton_iff_dvd and emultiplicity_eq_emultiplicity_span |
Move `Ideal.span_singleton_dvd_span_singleton_iff_dvd` from
`Mathlib.RingTheory.DedekindDomain.Ideal.Lemmas` to
`Mathlib.RingTheory.Ideal.Operations`. The result holds for any `CommSemiring` — the `[IsPrincipalIdealRing R]` hypothesis was not needed.
Generalize `Ideal.emultiplicity_eq_emultiplicity_span` from
`[IsDomain R] [IsPrincipalIdealRing R]` to `[CommRing R]`. The proof simplifies considerably: it follows immediately from `emultiplicity_eq_emultiplicity_iff` and the generalized dvd lemma.
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude. |
t-ring-theory |
30/26 |
Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/Ideal/Operations.lean |
2 |
3 |
['Multramate', 'github-actions', 'xroblot'] |
mattrobball assignee:mattrobball |
17-33242 17 days ago |
18-11281 18 days ago |
80-59863 80 days |
| 42819 |
SnirBroshi author:SnirBroshi |
feat(Order/ConditionallyCompleteLattice/Indexed): a binary function achieves its minimum |
In a `ConditionallyCompleteLinearOrder` with `WellFoundedLT`.
Also spell the existing unary version as `∃ i, f i = ⨅ i, f i` instead of `iInf f ∈ range f`.
---
Dual theorems are blocked by #39438
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
16/10 |
Mathlib/Combinatorics/SimpleGraph/Girth.lean,Mathlib/Data/ENat/Lattice.lean,Mathlib/Dynamics/TopologicalEntropy/CoverEntropy.lean,Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean,Mathlib/SetTheory/Cardinal/Cofinality/Basic.lean,Mathlib/SetTheory/Ordinal/Basic.lean |
6 |
1 |
['github-actions'] |
nobody |
16-77816 16 days ago |
16-80284 16 days ago |
16-80982 16 days |
| 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'] |
nobody |
16-67853 16 days ago |
16-80619 16 days ago |
16-80499 16 days |
| 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$ |
10/0 |
Mathlib/Algebra/MonoidAlgebra/Grading.lean |
1 |
4 |
['github-actions', 'wwylele'] |
nobody |
16-63252 16 days ago |
17-39120 17 days ago |
17-39611 17 days |
| 41866 |
YaelDillies author:YaelDillies |
feat(GroupTheory): `AddSubgroupClass` implies `SMulMemClass` over `ℤ` |
This is useful to talk about lattices in R^n.
Also delete two instances that are now automatically inferred.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
8/6 |
Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Basic.lean,Mathlib/Analysis/Normed/Ring/Basic.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean |
3 |
2 |
['Ruben-VandeVelde', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
16-63183 16 days ago |
16-65422 16 days ago |
38-34185 38 days |
| 39857 |
plp127 author:plp127 |
chore(Order/CompleteLattice/Basic): `Sort*` polymorphism |
Generalize some theorems from `Type*` to `Sort*`. Also make type-variables explicitly either `Type*` or `Sort*`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
15/13 |
Mathlib/Order/CompleteLattice/Basic.lean |
1 |
6 |
['SnirBroshi', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
16-59477 16 days ago |
16-62244 16 days ago |
98-18531 98 days |
| 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 |
101/50 |
Mathlib/Logic/Hydra.lean |
1 |
1 |
['github-actions'] |
nobody |
16-37350 16 days ago |
16-37925 16 days ago |
16-37805 16 days |
| 39553 |
Brian-Nugent author:Brian-Nugent |
feat(Algebra/CategoryTheory/ModuleCat): Locally Free is local |
We define `SheafOfModules.LocalGeneratorsData.bind` just like `SheafOfModules.QuasicoherentData.bind` and use it to show that being locally free is a local condition.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #39544
- [x] depends on: #39399
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
56/4 |
Mathlib/Algebra/Category/ModuleCat/Sheaf/Generators.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/LocallyFree.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean |
3 |
6 |
['Brian-Nugent', 'dagurtomas', 'github-actions', 'mathlib-dependent-issues'] |
alreadydone assignee:alreadydone |
16-33242 16 days ago |
19-61392 19 days ago |
85-51180 85 days |
| 42846 |
mcdoll author:mcdoll |
feat(Analysis/Convex): `egauge` of a seminorm balls |
Prove relations between the seminorm and the `egauge` of the (closed) ball.
This is a step to calculate derivatives of functions with codomain in locally convex spaces.
Co-authored-by: Anatole Dedecker <anatolededecker@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-analysis |
61/24 |
Mathlib/Analysis/Convex/EGauge.lean |
1 |
1 |
['github-actions'] |
nobody |
16-33039 16 days ago |
16-33987 16 days ago |
16-33867 16 days |
| 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 |
22 |
['felixpernegger', 'github-actions', 'luigi-massacci', 'luigimassacci-ax', 'mathlib-merge-conflicts'] |
nobody |
16-32344 16 days ago |
27-81206 27 days ago |
132-74328 132 days |
| 36507 |
BryceT233 author:BryceT233 |
feat(RingTheory/MvPowerSeries): various equivalences for `MvPowerSeries` |
This PR adds a number of equivalences related to power series rings and is patterned after `Mathlib/Algebra/MvPolynomial/Equiv.lean`.
To be specific, it adds:
* `MvPowerSeries.isEmptyEquiv` : The isomorphism between multivariable power series
in no variables and the ground ring.
* `MvPowerSeries.uniqueEquiv` : The isomorphism between multivariable power series
in a single variable and power series over the ground ring.
* `MvPowerSeries.mapEquiv`, `MvPowerSeries.mapAlgEquiv` : The isomorhism between
multivariable power series induced by an isomorphism between the coefficient rings.
* `MvPowerSeries.sumAlgEquiv` : The isomorphism between multivariable power series
in a sum of two types, and multivariable power series in one of the types,
with coefficients in multivariable power series in the other type.
* `MvPowerSeries.commAlgEquiv` : The isomorphism between multivariable power series
in variables `σ` of multivariable power series in variables `τ` and multivariable power series
in variables `τ` of multivariable power series in variables `σ`.
* `MvPowerSeries.optionEquivLeft` : The isomorphism between multivariable power series
in `Option σ` and power series with coefficients in `MvPowerSeries σ R`.
* `MvPowerSeries.optionEquivRight` : The isomorphism between multivariable power series
in `Option σ` and multivariable power series in `σ` with coefficients in `PowerSeries R`
* `MvPowerSeries.finSuccEquiv` : The isomorphism between multivariable power series
in `Fin (n + 1)` and power series over multivariable power series in `Fin 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/)
- [x] depends on: #35329
- [x] depends on: #36506
- [x] depends on: #40205 |
t-ring-theory |
405/11 |
Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Equiv.lean |
2 |
27 |
['AntoineChambert-Loir', 'BryceT233', 'Thmoas-Guan', 'WenrongZou', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
alreadydone assignee:alreadydone |
16-25472 16 days ago |
16-26097 16 days ago |
99-63252 99 days |
| 42783 |
barni120400 author:barni120400 |
feat(Algebra/MvPolynomial): partial derivatives commute |
Add `MvPolynomial.pderiv_comm`: partial derivatives of a multivariate polynomial commute.
🤖 Prepared with Claude Code
|
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
10/0 |
Mathlib/Algebra/MvPolynomial/PDeriv.lean |
1 |
2 |
['github-actions', 'wwylele'] |
nobody |
16-3327 16 days ago |
18-43003 18 days ago |
18-42934 18 days |
| 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 |
15-86272 15 days ago |
22-3582 22 days ago |
25-21654 25 days |
| 42856 |
plp127 author:plp127 |
chore(FieldTheory/IntermediateField/Adjoin): fix recursors |
Name the motive `motive` and name the minor premises according to their contents. Also make the motive implicit.
The motivation for naming the motive `motive` is to make it consistent across all the recursors, and to give it a more descriptive name, and to make it easier to find recursors by a text search. The motivation for renaming the minor premise arguments is to give them more descriptive names, since they are used as the names of `induction` arms and `cases` arms. The motivation for making the motive implicit is that you usually don't want to fill this in yourself, but rather let `induction` or `cases` or `@[elab_as_elim]` fill it in for you. The motive can still be specified explicitly by writing `(motive := ...)`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
51/45 |
Mathlib/FieldTheory/IntermediateField/Adjoin/Algebra.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Defs.lean,Mathlib/FieldTheory/PrimitiveElement.lean,Mathlib/FieldTheory/SeparableDegree.lean |
4 |
4 |
['Vierkantor', 'github-actions', 'plp127'] |
nobody |
15-78450 15 days ago |
15-79547 15 days ago |
16-11196 16 days |
| 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 |
28/0 |
Mathlib/Combinatorics/SimpleGraph/Girth.lean |
1 |
13 |
['IvanRenison', 'SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
15-61226 15 days ago |
17-2 16 days ago |
17-560 17 days |
| 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 |
38/4 |
Mathlib/Combinatorics/SimpleGraph/Girth.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
15-60449 15 days ago |
45-63741 45 days ago |
58-83160 58 days |
| 41896 |
felixpernegger author:felixpernegger |
chore: replace `simp_all` with `simp` whenever possible |
Replaces `simp_all (only)` with `simp (only)` whenever possible. About 5% of total `simp_all` occurences. Excludes MathlibTest.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
|
|
100/104 |
Archive/Arithcc.lean,Archive/Imo/Imo2024Q3.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/Category/Grp/ForgetCorepresentable.lean,Mathlib/Algebra/GroupWithZero/ProdHom.lean,Mathlib/Algebra/Homology/SpectralObject/HasSpectralSequence.lean,Mathlib/Algebra/Module/Torsion/PrimaryComponent.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Expand.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Reduction.lean,Mathlib/Analysis/Analytic/Binomial.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Convex/MetricSpace.lean,Mathlib/Analysis/Meromorphic/Basic.lean,Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Meromorphic/FactorizedRational.lean,Mathlib/Analysis/Polynomial/Fourier.lean,Mathlib/Analysis/SpecialFunctions/BinaryEntropy.lean,Mathlib/Analysis/SpecialFunctions/Integrals/PosLogEqCircleAverage.lean,Mathlib/Analysis/SpecialFunctions/Log/PosLog.lean,Mathlib/CategoryTheory/Action/Basic.lean,Mathlib/CategoryTheory/Functor/TypeValuedFlat.lean,Mathlib/CategoryTheory/Topos/Sheaf.lean,Mathlib/Combinatorics/Quiver/Path/Vertices.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/List/Nodup.lean,Mathlib/Data/List/PeriodicityLemma.lean,Mathlib/Data/List/ProdSigma.lean,Mathlib/Data/List/Sigma.lean,Mathlib/Data/Nat/Digits/Lemmas.lean,Mathlib/Data/PEquiv.lean,Mathlib/Data/PNat/Xgcd.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Data/TypeVec.lean,Mathlib/Data/Vector/Basic.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean,Mathlib/GroupTheory/PushoutI.lean,Mathlib/LinearAlgebra/Basis/Exact.lean,Mathlib/LinearAlgebra/Finsupp/Pi.lean,Mathlib/MeasureTheory/Constructions/Polish/StronglyMeasurable.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Measure/CharacteristicFunction/TaylorExpansion.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/NumberTheory/Height/MvPolynomial.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/Defs.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Order/ScottContinuity/Prod.lean,Mathlib/Order/SetDissipate.lean,Mathlib/Order/SuccPred/Basic.lean,Mathlib/Order/WithBot.lean,Mathlib/Probability/Kernel/Deterministic.lean,Mathlib/Probability/Kernel/Representation.lean,Mathlib/RepresentationTheory/Homological/TateCohomology/Basic.lean,Mathlib/RepresentationTheory/Tannaka.lean,Mathlib/RingTheory/Adjoin/Polynomial/Bivariate.lean,Mathlib/RingTheory/Binomial.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/HahnSeries/Basic.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/Summable.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/RingTheory/Nilpotent/Exp.lean,Mathlib/RingTheory/OrderOfVanishing/Basic.lean,Mathlib/RingTheory/OrderOfVanishing/Noetherian.lean,Mathlib/RingTheory/PowerSeries/Schroder.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/RingTheory/Valuation/IsTrivialOn.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/SetTheory/Lists.lean,Mathlib/Topology/LocallyFinsupp.lean,Mathlib/Topology/MetricSpace/Bounded.lean |
78 |
26 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'themathqueen', 'vlad902'] |
nobody |
15-58351 15 days ago |
15-61539 15 days ago |
44-2991 44 days |
| 41433 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Paths): more path/circuit/cycle lemmas |
- two `(p.append q).IsPath` lemmas (splitting to either `p` & `q.tail` or `p.dropLast` & `q`)
- `p.reverse.IsCircuit`
- `p.IsTrail → p.{take/drop/tail/dropLast}.IsTrail`
- `p.dropLast.IsPath ↔ p.tail.IsPath`
- `p.IsCycle ↔ p.dropLast.IsPath ∧ 3 ≤ p.length`
---
Golfs a few small things using the new lemmas as a drive by.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
50/15 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean |
1 |
1 |
['github-actions'] |
nobody |
15-51992 15 days ago |
54-84122 54 days ago |
57-29488 57 days |
| 42731 |
martinwintermath author:martinwintermath |
feat(LinearAlgebra/Dimension): add corank for submodules |
Adds
```lean4
noncomputable def corank (p : Submodule R M) : Cardinal :=
Module.rank R (M ⧸ p)
```
and basic 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 label:t-algebra$ |
107/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Dimension/Corank.lean |
2 |
1 |
['github-actions'] |
nobody |
15-48552 15 days ago |
19-71359 19 days ago |
19-71239 19 days |
| 40582 |
dennj author:dennj |
feat(Analysis): the one-sided Laplace transform |
Introducing Laplace transform `ℒ(f)(s) = ∫ t in Ioi 0, exp (-s * t) • f t`
It is needed in physlib
I modelled the file following Mellin transform.
## Main definitions
* `LaplaceConvergent f s`: the Laplace integral is well-defined at `s`.
* `laplace f s`: the Laplace transform, a total function
* `HasLaplace f s m`: convergence together with the value `m`.
## Main results
* Linearity: `laplace_add`/`sub`/`const_smul`/`neg`/`zero`/`div_const`, at the `laplace`, `LaplaceConvergent`, and `HasLaplace` levels.
* `laplaceConvergent_iff_norm`, `norm_laplace_le_integral_norm`: reduction of convergence and norm bounds to the real exponential weight.
* `laplaceConvergent_of_isBigO_exp`: existence for functions of exponential order, on the appropriate right half-plane.
* `LaplaceConvergent.of_re_le`/`of_re_lt`: monotonicity of convergence in `s.re` (the half-plane structure).
* `laplace_cexp_smul`: the frequency-shift rule.
* `laplace_indicator_comp_sub`: the time-shift rule.
* `laplace_comp_mul_left`/`right`: behaviour under positive dilation.
* `hasLaplace_const`/`hasLaplace_one`/`hasLaplace_cexp`: basic transform values.
Human made PR |
t-measure-probability
new-contributor
|
653/0 |
Mathlib.lean,Mathlib/Analysis/LaplaceTransform.lean |
2 |
34 |
['AlyciaBHZ', 'EtienneC30', 'dennj', 'github-actions', 'mathlib-splicebot'] |
sgouezel assignee:sgouezel |
15-48347 15 days ago |
26-68326 26 days ago |
79-26853 79 days |
| 42881 |
forxhunter author:forxhunter |
feat(Analysis/SpecialFunctions/Gamma): Mittag-Leffler expansion of the Beta function |
For `0 < re u` and `0 < re v`, the Beta function admits the classical absolutely
convergent partial-fraction (Mittag-Leffler) expansion over its poles in the first
variable:
`Β(u, v) = ∑' n : ℕ, Ring.choose (n - v) n / (n + u)` (`Complex.hasSum_betaIntegral`),
where `Ring.choose (n - v) n = (1 - v)⁽ⁿ⁾ / n!` is the `n`-th binomial-series
coefficient of `x ↦ (1 - x) ^ (v - 1)`. The proof expands the Euler integral
`Complex.betaIntegral` by the binomial series
(`Complex.one_div_one_sub_cpow_hasFPowerSeriesOnBall_zero`) and integrates term by
term via `MeasureTheory.hasSum_integral_of_summable_integral_norm`.
Main new results, in `Mathlib/Analysis/SpecialFunctions/Gamma/BetaMittagLeffler.lean`:
* `Ring.choose_add_natCast_eq_prod_range`:
`Ring.choose (t + n) n = ∏ k < n, (t + k + 1) / (k + 1)` in a characteristic-zero
field (the rising-factorial form `(t + 1)⁽ⁿ⁾ / n!` with the factorial distributed
into the product).
* `Complex.norm_ringChoose_add_natCast_le`: the Stirling-free growth bound
`‖Ring.choose (t + n) n‖ ≤ Real.exp (normSq t) * (n + 1) ^ t.re` for `t.re ≤ 0`.
Mathlib has no complex Stirling formula and no `Γ`-ratio asymptotics, so the
textbook route via `Ring.choose (t + n) n ∼ n ^ t / Γ (t + 1)` is unavailable; the
proof instead applies `Real.log (1 + u) ≤ u` to each factor of the product above and
sums against `Real.log (n + 1) ≤ harmonic n` and the telescoping bound
`∑ k < n, 1 / (k + 1) ^ 2 ≤ 2 - 2 / (n + 1)`. This bound is what makes the pole
series absolutely convergent (`Complex.summable_norm_ringChoose_div`) for
`t.re < 0`, a restriction that is sharp: at `t = 0` the series is harmonic.
* `Complex.hasSum_ringChoose_mul_pow`: the binomial series
`(1 - x) ^ (-t - 1) = ∑' n, Ring.choose (t + n) n * x ^ n` on the open unit disc,
in `HasSum` form.
* `integral_Ioo_cpow` / `integral_Ioo_rpow`: `∫ x in Ioo 0 1, x ^ w = 1 / (w + 1)`,
`Ioo`-restricted versions of `integral_cpow` / `integral_rpow`.
Motivation: this arises from an ongoing Lean formalization of dispersion relations
and positivity bounds in effective field theory, where the Beta function (the
tree-level Veneziano amplitude at fixed momentum transfer) serves as the witness for
a dispersive spectral representation; the expansion above is exactly its pole/residue
form. The material here is the physics-free analytic core, stated purely in terms of
`Complex.betaIntegral` and `Ring.choose`.
**AI disclosure**: this PR was substantially generated with Claude Code (Anthropic) —
proof scripts, the Stirling-free bounding strategy, and the port to current master.
It is opened as a **draft** while the human author reviews the content; it will be
marked ready only after that review, per the policy that contributors must understand
and be able to defend AI-assisted contributions. The `LLM-generated` label applies
and should be added by a maintainer.
awaiting-author items (will be resolved before marking ready):
- [x] Author review of the full file per the AI-contribution policy: done.
- [x] The `Authors:` line is finalized as `Tianyu (forxhunter)`
- [ ] If reviewers prefer, `Ring.choose_add_natCast_eq_prod_range` can move to
`Mathlib/RingTheory/Binomial.lean` and `integral_Ioo_cpow` / `integral_Ioo_rpow`
to `Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean`; they are kept in the
new file for now to keep the PR single-file.
---
Possible follow-ups (not in this PR): positivity of `Ring.choose (t + n) n` for real
`t > -1` (and its sharpness at `t < -1`), and the residue identification of
`u ↦ Β(u, v)` at `u = -n` as a `Tendsto`/`meromorphicAt` statement.
|
new-contributor
t-analysis
|
425/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Gamma/BetaMittagLeffler.lean |
2 |
2 |
['github-actions'] |
nobody |
15-47537 15 days ago |
15-48131 15 days ago |
15-48201 15 days |
| 42365 |
hawkrobe author:hawkrobe |
feat(LinearAlgebra/TensorProduct): tensor product of graded modules is graded |
---
Split from #39849, also a first step toward the TODO in `LinearAlgebra/TensorProduct/Graded/Internal.lean` (the tensor product of graded algebras is graded.) I tried to model it after [AddMonoidAlgebra.gradeBy](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/MonoidAlgebra/Grading.html#AddMonoidAlgebra.gradeBy).
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
158/0 |
Mathlib/Data/DFinsupp/Defs.lean,Mathlib/LinearAlgebra/TensorProduct/Decomposition.lean,Mathlib/LinearAlgebra/TensorProduct/Map.lean |
3 |
2 |
['github-actions'] |
nobody |
15-43211 15 days ago |
15-52700 15 days ago |
30-46187 30 days |
| 41872 |
plp127 author:plp127 |
chore(NumberTheory/Niven): generalize theorems |
Move some theorems out of the Niven's theorem file and generalize 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/)
|
|
30/19 |
Mathlib/NumberTheory/Niven.lean,Mathlib/RingTheory/IntegralClosure/IsIntegral/Basic.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean,Mathlib/RingTheory/Polynomial/RationalRoot.lean |
4 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
15-41336 15 days ago |
15-42429 15 days ago |
46-44375 46 days |
| 42873 |
teorth author:teorth |
feat(Algebra/Order/Chebyshev): the Cauchy–Schwarz inequality for multisets |
Add `Multiset.sq_sum_le_card_mul_sum_sq`, the multiset analogue of the existing `sq_sum_le_card_mul_sum_sq`: `m.sum ^ 2 ≤ m.card * (m.map (· ^ 2)).sum`. It is derived from the `Finset` version via `Multiset.toEnumFinset`, combined with a new helper lemma `Multiset.sum_map_eq_sum_toEnumFinset` to convert between `Multiset.sum` and `Finset.sum` when a `Multiset.map` is involved.
---
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-algebra label:t-algebra$ |
15/0 |
Mathlib/Algebra/Order/Chebyshev.lean,Mathlib/Data/Multiset/Fintype.lean |
2 |
8 |
['felixpernegger', 'github-actions', 'teorth'] |
nobody |
15-40958 15 days ago |
15-44908 15 days ago |
15-61525 15 days |
| 42069 |
plp127 author:plp127 |
feat: isomorphism of `AdjoinRoot (f.comp g)` |
Prove that adjoining a root of `f.comp g` (this is `f(g(x))`) is the same as adjoining a root of `f` first, and then adjoining a root of `g - root 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-ring-theory |
74/0 |
Mathlib/RingTheory/AdjoinRoot.lean |
1 |
1 |
['github-actions'] |
nobody |
15-40669 15 days ago |
39-49384 39 days ago |
39-50283 39 days |
| 40534 |
mcdoll author:mcdoll |
feat(Algebra): introduce notation typeclass for composition of functions |
This PR defines two new typeclasses: `FComp` and `IsCompApply`. The former is just a notation typeclass with notation `(g ∘ᶠ f)` and the second one asserts that `(g ∘ᶠ f) x = g (f x)`.
---
There are two PRs that illustrate the use of these classes: #41169 and #41224
The second one is closer to what we actually implement here, but not sorry-free (because I ran into unrelated defeq abuse pretty far down the line)
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
108/15 |
Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Data/FunLike/IsApply.lean,Mathlib/Geometry/Manifold/GroupLieAlgebra.lean,Mathlib/Geometry/Manifold/VectorField/LieBracket.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Independence.lean,Mathlib/RingTheory/Coalgebra/Basic.lean,Mathlib/Topology/VectorBundle/Hom.lean |
10 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
15-34102 15 days ago |
15-37276 15 days ago |
55-9569 55 days |
| 37723 |
xgenereux author:xgenereux |
feat(Adjoin/Polynomial/Transcendental): Adjoining transcendental elements |
This PR establishes some basic properties about `A[y]` when `y` is transcendental over `A`. These are mostly just carried over from `A[X]`.
- Move `algEquivOfTranscendental` in the newly created file `Mathlib.RingTheory.Adjoin.Polynomial.Transcendental`
- Add `Algebra.adjoin.evalOfTranscendental`. This is technically very similar to `Algebra.adjoin.liftSingleton` but the definition is much simpler. It is also currently more general in the sense that it doesn't require `A` to be a field.
- Some basic instances from `Polynomial`. Note that these are actually theorems because of the hypothesis `(h : Transcendental R s)` everywhere. I've also added a `Fact` version to allow the possibility of instances.
Last note : I initially considered adding some results in `RingTheory.Polynomial.Quotient` where I golfed the file a tiny bit. I removed the unused results but kept the golf.
AI disclaimer : I used Claude to give me some feedback on the PR.
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]
-->
- [x] depends on: #36439
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
167/69 |
Mathlib.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/RingTheory/Adjoin/Polynomial/Basic.lean,Mathlib/RingTheory/Adjoin/Polynomial/Bivariate.lean,Mathlib/RingTheory/Adjoin/Polynomial/Transcendental.lean,Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/Polynomial/Quotient.lean |
7 |
6 |
['github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] |
mattrobball assignee:mattrobball |
15-33246 15 days ago |
37-84648 37 days ago |
80-45203 80 days |
| 42563 |
thorimur author:thorimur |
feat: `private` elaborator for proofs |
This PR adds the `private <term>` term elaborator which wraps term-mode proofs in a public auxiliary declaration so that they can use private constants in public positions. For example, a term-mode proof appearing in a public declaration's type will error if it uses a private declaration.
Currently, `by exact` will wrap the proof in a private declaration as `private` does, but sprinkling code with `by exact`s hurts readability, since it's difficult to tell at a glance what motivated its presence. Also, `private` reports when it's unnecessary, unlike `by exact`.
Disclosure: I had Claude review this before PRing, seeing if I could get rid of elaborating `by`. It found a good reason to do so, and made some changes, which I then reviewed and iterated on myself. I've preserved the (only) LLM-generated changes via the authorship of the commit history.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
285/0 |
Mathlib.lean,Mathlib/Init.lean,Mathlib/Util/PrivateProof.lean,MathlibTest/Util/PrivateProof.lean |
4 |
5 |
['JovanGerb', 'github-actions', 'thorimur'] |
JovanGerb assignee:JovanGerb |
15-33236 15 days ago |
19-16402 19 days ago |
25-16211 25 days |
| 41539 |
rmhi author:rmhi |
chore(RepresentationTheory/Homological/ContCohomology): refactor functoriality |
Currently, functoriality of continuous cohomology is given by `ContCohomology.map`, which takes
a continuous group homomorphism \phi and an intertwining map f: res \phi X \to Y and returns a map from the
continuous cohomology of X to the continuous cohomology of Y.
The problem with this is that `ContCohomology.map` does not have a natural type such as Functor or NatTrans.
In this PR, we split `ContCohomology.map` as a composition of `(continuousCohomologyFunctor _ _ _).map` and a restriction map in continuous cohomology, which is defined as a natural transformation `resNatTrans`.
co-authored-by: Edison Xie @Whysoserioushah
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
499/74 |
Mathlib/RepresentationTheory/Continuous/Basic.lean,Mathlib/RepresentationTheory/Continuous/TopRep.lean,Mathlib/RepresentationTheory/Homological/ContCohomology/Functoriality.lean,Mathlib/Topology/CompactOpen.lean |
4 |
13 |
['JX-Mo', 'github-actions', 'riccardobrasca', 'rmhi'] |
nobody |
15-32337 15 days ago |
36-63535 36 days ago |
48-51580 48 days |
| 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 |
7 |
['EzequielS2', 'github-actions', 'themathqueen', 'wwylele'] |
nobody |
15-30529 15 days ago |
15-32808 15 days ago |
56-49651 56 days |
| 42880 |
plp127 author:plp127 |
feat(Data/EReal): prove theorem `EReal.recENNReal_neg_coe_ennreal` |
Prove the theorem `EReal.recENNReal_neg_coe_ennreal`. This cleans up a `proof_wanted`. Also unexpose `EReal.recENNReal` because it uses an if-then-else block on a classical decidability instance, which will not reduce.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
|
file-removed
t-data
|
14/26 |
Mathlib/Data/EReal/Operations.lean,Wanted.lean,Wanted/Data/EReal/Operations.lean |
3 |
2 |
['FrankieNC', 'github-actions'] |
nobody |
15-4784 15 days ago |
15-53147 15 days ago |
15-53027 15 days |
| 42890 |
tb65536 author:tb65536 |
feat(GroupTheory/SpecificGroups/Alternating/Simple): small symmetric groups and alternating groups are solvable |
This PR proves that A_n and S_n is solvable for n <= 4.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-group-theory
label:t-algebra$ |
42/13 |
Mathlib/GroupTheory/Abelianization/Defs.lean,Mathlib/GroupTheory/Commutator/Basic.lean,Mathlib/GroupTheory/CommutingProbability.lean,Mathlib/GroupTheory/Solvable.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/Simple.lean |
5 |
2 |
['github-actions'] |
nobody |
15-4371 15 days ago |
15-4420 15 days ago |
15-4302 15 days |
| 42775 |
hawkrobe author:hawkrobe |
feat(RingTheory/HopfAlgebra): construct Hopf algebras from generators |
Upgrade a bialgebra to a Hopf algebra from antipode data on an algebra-generating set (`HopfAlgebra.ofGenerators`), plus the primitive-element form `HopfAlgebra.ofPrimitives`. Split out of #39841.
This looks more elegant using Sweedler notation (this proof was taken from a comment in #31898) but mathlib doesn't have the notation available as far as I know.
- [x] depends on: #39841 |
t-ring-theory
new-contributor
|
153/6 |
Mathlib.lean,Mathlib/RingTheory/HopfAlgebra/Generators.lean,Mathlib/RingTheory/HopfAlgebra/Primitive.lean |
3 |
3 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
15-1695 15 days ago |
16-14683 16 days ago |
16-29439 16 days |
| 42872 |
JovanGerb author:JovanGerb |
chore(CategoryTheory/Limits/HasLimits): use `to_dual` more |
This PR continues the work of #41017 to use `to_dual` in `CategoryTheory.Limits.HasLimits`.
Notes:
- A few theorems like `ι_isoOfEquivalence_hom` has their type changed, because the old version wasn't actually dual to the supposed dual version. As a result, a proof in `Mathlib/CategoryTheory/Limits/Shapes/Products.lean` could be simplified.
- A few theorems like `isoOfNatIso_ι_hom` were renamed to `ι_isoOfNatIso_hom`, which is a more accurate 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]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
t-category-theory
|
104/378 |
Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Fubini.lean,Mathlib/CategoryTheory/Limits/HasLimits.lean,Mathlib/CategoryTheory/Limits/Preserves/Grothendieck.lean,Mathlib/CategoryTheory/Limits/Preserves/Presheaf.lean,Mathlib/CategoryTheory/Limits/Shapes/Products.lean,Mathlib/CategoryTheory/Sites/CompatiblePlus.lean,Mathlib/CategoryTheory/Sites/LeftExact.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean |
9 |
1 |
['github-actions'] |
nobody |
14-75566 14 days ago |
14-76945 14 days ago |
14-79401 14 days |
| 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'] |
nobody |
14-66866 14 days ago |
14-70220 14 days ago |
14-70102 14 days |
| 42451 |
FawadHa1der author:FawadHa1der |
perf(Analysis/Distribution/SchwartzSpace): split denseRange_toLpCLM off Basic to shorten the longest pole |
Shortening the "longest pole" in the mathlib build. LLM help was used.
Per [lake prof report](https://speed.lean-lang.org/mathlib4-out/c8830a1d9ceaffabd7c8c7493d9a9be3ead6ea74/) SchwartzSpace/Basic.lean sits on the longest pole. With this change SchwartzSpace/Basic no longer imports SmoothApprox( which imported the whole manifold chain) hence shortening the longest pole by **23s** of ~502 s
denseRange_toLpCLM is moved to a new file SchwartzSpace/DenseLp.lean. |
t-analysis
new-contributor
longest-pole
|
58/16 |
Mathlib.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/DenseLp.lean,Mathlib/Analysis/Fourier/LpSpace.lean |
4 |
8 |
['FawadHa1der', 'github-actions', 'luigi-massacci', 'mathlib-merge-conflicts'] |
nobody |
14-66675 14 days ago |
14-68207 14 days ago |
21-82864 21 days |
| 42843 |
than4213 author:than4213 |
feat(Combinatorics/SimpleGraph): transition matrix of the simple random walk |
Adds SimpleGraph.walkMatrix, the transition matrix of the simple random walk on a graph: row v is the uniform distribution on the neighbours of v. This is SimpleGraph.adjMatrix with each row divided by G.degree v, turning adjacency counts into transition probabilities.
Main results are that the matrix is row stochastic, and hence so is G.walkMatrix ^ n — the latter follows immediately from Matrix.rowStochastic being a Submonoid.
Two choices worth flagging:
- Valued in ℚ. Every entry is (G.degree v)⁻¹, so nothing irrational arises. This keeps entries computable — #eval evaluates G.walkMatrix ^ n on a concrete graph.
- Placed in Combinatorics/SimpleGraph. The file imports no probability theory, only Mathlib.LinearAlgebra.Matrix.Stochastic, and sits alongside adjMatrix, incMatrix and lapMatrix.
The walk is undefined at isolated vertices, so the results take ∀ v, ¬ G.IsIsolated v.
Used Claude Code in the creation of this PR. |
t-combinatorics
new-contributor
LLM-generated
|
107/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/RandomWalk.lean |
2 |
8 |
['SnirBroshi', 'github-actions', 'than4213'] |
nobody |
14-66498 14 days ago |
14-67841 14 days ago |
15-37542 15 days |
| 41362 |
JovanGerb author:JovanGerb |
perf(Algebra/MonoidAlgebra): `no_expose` the `Add` instance |
This PR uses `no_expose` for the `Add` instance of `MonoidAlgebra`. This improve performance a bit. Other operations may be `no_exposed` analogously in the future.
This requires a change in `fast_instance%`, namely to let it unfold private definitions in its defeq checks. This is a bit hacky, but it does work.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
|
|
55/36 |
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/Eval.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/Tactic/FastInstance.lean |
15 |
11 |
['JovanGerb', 'github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
14-65751 14 days ago |
14-71149 14 days ago |
14-71123 14 days |
| 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 |
355/0 |
Mathlib.lean,Mathlib/Topology/MetricSpace/Cover.lean,Mathlib/Topology/MetricSpace/CoveringNumbers.lean,Mathlib/Topology/MetricSpace/MinkowskiDimension.lean,docs/references.bib |
5 |
2 |
['github-actions'] |
CoolRmal assignee:CoolRmal |
14-61967 14 days ago |
40-39189 40 days ago |
40-39200 40 days |
| 42895 |
cameronfreer author:cameronfreer |
feat(SetTheory/Ordinal): add lift_sSup and lift_iSup |
Add `InitialSeg.map_sSup` and `InitialSeg.map_iSup` for conditionally complete linear orders with bottom. Specializing these to `Ordinal.liftInitialSeg` gives `Ordinal.lift_sSup`, `Ordinal.lift_iSup`, `Ordinal.lift_iSup_le`, and `Ordinal.lift_iSup_le_iff`.
The `sSup` theorem handles the empty set using preservation of bottom and the nonempty case using normality. The `iSup` theorem is derived from it. Both use an explicit boundedness hypothesis; in particular, `lift_iSup` assumes `BddAbove (Set.range f)` rather than requiring the index type to be small.
🤖 This PR was developed with assistance from Claude and GPT models, using [lean4-skills](https://github.com/cameronfreer/lean4-skills) and [lean-lsp-mcp](https://github.com/oOo0oOo/lean-lsp-mcp).
|
t-set-theory
new-contributor
LLM-generated
|
40/0 |
Mathlib/Order/IsNormal.lean,Mathlib/SetTheory/Ordinal/Family.lean |
2 |
11 |
['cameronfreer', 'github-actions', 'plp127', 'vihdzp'] |
nobody |
14-59710 14 days ago |
14-76812 14 days ago |
14-77646 14 days |
| 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 |
46/5 |
Mathlib/RingTheory/MvPolynomial/Symmetric/Defs.lean |
1 |
8 |
['felixpernegger', 'github-actions', 'teorth', 'vlad902'] |
nobody |
14-55201 14 days ago |
14-57012 14 days ago |
15-60183 15 days |
| 42919 |
tb65536 author:tb65536 |
feat(NumberTheory/RamificationInertia/Unramified): generalize `IsUnramifiedAt.of_liesOver` to flat algebras |
This PR generalizes `IsUnramifiedAt.of_liesOver` to flat algebras and deprecates the technical auxiliary lemma `IsUnramifiedAt.of_liesOver_of_ne_bot` for the previous proof.
This also avoids the usage of the old `Ideal.ramificationIdx'`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
t-algebra
label:t-algebra$ |
24/6 |
Mathlib/NumberTheory/RamificationInertia/Unramified.lean,Mathlib/RingTheory/Flat/FaithfullyFlat/Algebra.lean,Mathlib/RingTheory/Ideal/GoingDown.lean,Mathlib/RingTheory/Unramified/LocalRing.lean |
4 |
1 |
['github-actions'] |
nobody |
14-39471 14 days ago |
14-44750 14 days ago |
14-44632 14 days |
| 42921 |
tb65536 author:tb65536 |
chore(RingTheory/RamificationInertia/Ramification): reorganize proofs |
This PR reorganizes the proofs in `RingTheory/RamificationInertia/Ramification.lean` so that `ramificationIdx_eq_normalizedFactors_count` is proved directly rather than relying on `IsDedekindDomain.ramificationIdx'_eq_normalizedFactors_count` which will soon be deprecated.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
t-algebra
label:t-algebra$ |
42/39 |
Mathlib/RingTheory/RamificationInertia/Ramification.lean |
1 |
1 |
['github-actions'] |
nobody |
14-38676 14 days ago |
14-38735 14 days ago |
14-38616 14 days |
| 42154 |
plp127 author:plp127 |
feat(RingTheory,FieldTheory): add instances for `adjoin` |
Provide instances of `Algebra.FiniteType` and `Module.Finite` and `Algebra.IsIntegral` for `Algebra.adjoin`. Provide instances of `Algebra.EssFiniteType` and `FiniteDimensional` for `IntermediateField.adjoin`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
16/1 |
Mathlib/FieldTheory/IntermediateField/Adjoin/Algebra.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean |
4 |
5 |
['github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'plp127'] |
nobody |
14-36967 14 days ago |
14-38533 14 days ago |
36-59118 36 days |
| 40899 |
mcdoll author:mcdoll |
feat(Data/FunLike): add `abbrev`s for pointwise multiplication |
We add `abbrev`s that provide easy access to instances that involve multiplication as a pointwise operation for `FunLike` classes. This is for example needed for `ZeroAtInftyContinuousMap`
Moreover, we
- move `NatCast` instance for `Pi` to new file `Data/Nat/Cast/Pi`
- rename `IsNatCastApply` to `IsNatCastApplyEqSMul` for the composition variant (same for `IntCast`)
- add `IsNatCast` for pointwise multiplication (same for `IntCast`)
- rename `abbrev` that apply to composition versions to `compSemiring` etc
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
337/71 |
Mathlib.lean,Mathlib/Algebra/Ring/Pi.lean,Mathlib/Data/FunLike/GroupWithZero.lean,Mathlib/Data/FunLike/IsApply.lean,Mathlib/Data/FunLike/Ring.lean,Mathlib/Data/Nat/Cast/Basic.lean,Mathlib/Data/Nat/Cast/Pi.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean |
8 |
5 |
['eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] |
ocfnash assignee:ocfnash |
14-33243 14 days ago |
17-81971 17 days ago |
70-25292 70 days |
| 40975 |
bwangpj author:bwangpj |
feat(LinearAlgebra): complex structures on real vector spaces |
Define complex structures,i .e. an `ℝ`-linear endomorphism `J` of a real vector space `V` with `J * J = -1`. |
t-algebra label:t-algebra$ |
93/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Complex/Structure.lean |
2 |
5 |
['bwangpj', 'github-actions', 'grunweg', 'themathqueen', 'wwylele'] |
ocfnash assignee:ocfnash |
14-33240 14 days ago |
70-42212 70 days ago |
70-42092 70 days |
| 41260 |
SnirBroshi author:SnirBroshi |
feat(GroupTheory/Exponent): the order of a group divides a power of its exponent |
For finite groups:
- `(Monoid.exponent G).primeFactors = (Nat.card G).primeFactors`
- `Nat.card G ∣ Monoid.exponent G ^ Nat.card G`
---
This requires importing Cauchy's theorem (`GroupTheory.Perm.Cycle.Type`) in `Exponent.lean` which I'm not sure about, but the alternatives are either moving the theorems to `PGroup.lean`, or creating a new file with a strange name like `ExponentLemmas.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-group-theory
large-import
|
27/5 |
Mathlib/GroupTheory/Exponent.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean |
2 |
13 |
['SnirBroshi', 'github-actions', 'ocfnash', 'tb65536'] |
mattrobball assignee:mattrobball |
14-33239 14 days ago |
61-54879 61 days ago |
62-2006 62 days |
| 41961 |
loefflerd author:loefflerd |
feat(NumberTheory/Padics): ring structure on nonarchimedean measures |
Define the Iwasawa algebra of measures on a profinite group G, and show it's an algebra (and commutative if G is).
---
For simplicity, I did not attempt to optimise exactly the minimal typeclass assumptions on `G` required to obtain each typeclass property of `D(G, R)`, as this led to much lengthier code for no clear benefit; I am not aware of interesting examples where `G` is not at a monoid.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
164/0 |
Mathlib.lean,Mathlib/NumberTheory/Padics/Measure/Group.lean |
2 |
2 |
['github-actions'] |
tb65536 assignee:tb65536 |
14-33236 14 days ago |
43-52354 43 days ago |
43-52234 43 days |
| 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
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-analysis
label:t-algebra$ |
177/0 |
Mathlib/LinearAlgebra/LinearPMap.lean |
1 |
13 |
['github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'mcdoll'] |
kim-em assignee:kim-em |
14-30781 14 days ago |
14-32429 14 days ago |
79-7233 79 days |
| 42649 |
vlad902 author:vlad902 |
chore: delete outdated `proof_wanted` |
[`MvPolynomial.ringKrullDim_of_isNoetherianRing`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/KrullDimension/Polynomial.html#MvPolynomial.ringKrullDim_of_isNoetherianRing) was added two years after this `proof_wanted` and is nearly identical. The difference is that it is defined for arbitrary index sets instead of `Fin` and for `CommRing` instead of `CommSemiring`. This is an artifact of `Ideal.height` being defined for `CommRing`s and `ringKrullDim` for `CommSemiring`s. Otherwise I think the original intention of this `proof_wanted` has already been satisfied.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
|
file-removed
t-ring-theory
|
0/16 |
Wanted.lean,Wanted/RingTheory/KrullDimension/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
14-5452 14 days ago |
21-70784 21 days ago |
21-70664 21 days |
| 41485 |
luigi-massacci author:luigi-massacci |
feat: multiplication by a regular function in D^n as a CLM (bilin version) |
Preliminary lemma for multiplication of a classical distribution by a regular function (PR #41634).
The `def` is mutatis mutandis the exact same construction as the existing `ContDiffMapSupportedin.fderivCLM`-> `TestFunction.fderivCLM` topology-wise, and algebra-wise it mirrors the existing API for `TemperedDistribution` (`simp` lemma included).
Note that this is a helper definition not meant to be used directly, hence the regularity assumption in the type for simplicity, as in the existing `ContDiffMapSupprotedIn.bilinLefCLM`. The consumer definitions (`TestFunction.smul`in PR #41531 and `Distribution.smul` in #41634) take junk values 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]
-->
- [x] depends on: #41324
[](https://gitpod.io/from-referrer/)
|
t-analysis |
34/2 |
Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/TestFunction.lean |
2 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
14-5083 14 days ago |
27-3530 27 days ago |
27-21269 27 days |
| 40498 |
wangying11123 author:wangying11123 |
feat(Geometry/Euclidean): unoriented angle eq of oriented angle eq |
This PR adds two theorems to Mathlib/Geometry/Euclidean/Angle/Oriented/Affine.lean
`angle_eq_of_oangle_eq`: If two oriented angles are equal, and the four endpoint pairs are nondegenerate, then the
corresponding unoriented angles are equal.
`angle_eq_of_oangle_eq_not_collinear`: If two oriented angles are equal, and the first triple is not collinear, then the
corresponding unoriented angles are equal. |
new-contributor |
22/0 |
Mathlib/Geometry/Euclidean/Angle/Oriented/Affine.lean |
1 |
6 |
['github-actions', 'plp127', 'wangying11123'] |
nobody |
13-65896 13 days ago |
13-68227 13 days ago |
67-60387 67 days |
| 38966 |
smmercuri author:smmercuri |
chore(Algebra): `coe_ringHom` -> `coe_toRingHom` |
---
- [x] depends on: #38950
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
|
|
106/65 |
Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/Order/Hom/Ring.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/AlgebraicGeometry/Group/Affine.lean,Mathlib/AlgebraicGeometry/Morphisms/UniversallyInjective.lean,Mathlib/AlgebraicGeometry/Spec.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/FieldTheory/Extension.lean,Mathlib/FieldTheory/IsAlgClosed/Basic.lean,Mathlib/FieldTheory/PurelyInseparable/Basic.lean,Mathlib/NumberTheory/Cyclotomic/CyclotomicCharacter.lean,Mathlib/NumberTheory/NumberField/CMField.lean,Mathlib/NumberTheory/NumberField/Ideal/KummerDedekind.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/DedekindDomain/Instances.lean,Mathlib/RingTheory/FinitePresentation.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/RingTheory/GradedAlgebra/AlgHom.lean,Mathlib/RingTheory/GradedAlgebra/RingHom.lean,Mathlib/RingTheory/IntegralClosure/IntegralRestrict.lean,Mathlib/RingTheory/Jacobson/Ring.lean,Mathlib/RingTheory/LocalRing/ResidueField/Ideal.lean,Mathlib/RingTheory/LocalRing/ResidueField/Polynomial.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/RingHom/StandardSmooth.lean,Mathlib/RingTheory/RingInvo.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Trace/Quotient.lean,Mathlib/RingTheory/Unramified/Basic.lean |
36 |
11 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'smmercuri', 'themathqueen'] |
nobody |
13-63491 13 days ago |
13-66054 13 days ago |
19-32042 19 days |
| 42871 |
WilliamCoram author:WilliamCoram |
feat: multivariate gauss norm API and a lemma to discharge hdom in mul_eq_mul |
We add some missing API as well as lemmas that compute explicit values of the gauss norm (e.g. on monomials, X, C). Finally, we add a lemma that will be used to discharge `hdom` in `mul_eq_mul` in applications.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
119/4 |
Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean |
1 |
10 |
['WilliamCoram', 'github-actions', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
13-59186 13 days ago |
15-71826 15 days ago |
15-71706 15 days |
| 42867 |
WilliamCoram author:WilliamCoram |
feat: restricted multivariate power series as its own type and some missing API lemmas |
We add some missing API lemmas for restricted multivariate power series, as well as promoting them to their own type `MvPowerSeries.Restricted`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
204/2 |
Mathlib/RingTheory/MvPowerSeries/Restricted.lean |
1 |
13 |
['WilliamCoram', 'github-actions', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
13-58118 13 days ago |
15-76469 15 days ago |
15-76349 15 days |
| 42366 |
vihdzp author:vihdzp |
chore: use `to_dual` for `IsAtom` and `IsCoatom` |
I haven't translated `IsStronglyAtomic` nor anything below in that file. I ran into problems trying to use `to_dual` on that declaration.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #42364
[](https://gitpod.io/from-referrer/)
|
t-order |
58/145 |
Mathlib/Order/Atoms.lean,Mathlib/Tactic/Translate/ToDual.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
13-54428 13 days ago |
13-78649 13 days ago |
13-82633 13 days |
| 41462 |
felixpernegger author:felixpernegger |
perf: lower priority of `sheafToPresheaf_isRightAdjoint` |
This was found in the course of #41222 (where this is needed to avoid big increases) by Fable 5, but should already be beneficial now.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
|
|
2/1 |
Mathlib/CategoryTheory/Sites/ConcreteSheafification.lean |
1 |
11 |
['felixpernegger', 'github-actions', 'grunweg', 'kbuzzard', 'leanprover-radar', 'mathlib-splicebot'] |
nobody |
13-34444 13 days ago |
13-49524 13 days ago |
14-30102 14 days |
| 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 (0 : Fin (n + 1)) ⊑ G ↔ n ≤ G.maxDegree`
- `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 |
82/1 |
Mathlib/Combinatorics/SimpleGraph/Star.lean |
1 |
1 |
['github-actions'] |
nobody |
13-26976 13 days ago |
15-56566 15 days ago |
15-56446 15 days |
| 41981 |
YaelDillies author:YaelDillies |
refactor(Algebra/Polynomial): make into an `abbrev` of `AddMonoidAlgebra` |
... and deprecate the declarations that are now tautological (`toFinsupp`/`ofFinsupp` and their API). For some of the `Polynomial` declarations that needed changing, it was simplest to replace them with the corresponding `AddMonoidAlgebra` one. Note that this replacement is far from exhaustive (a majority of the `Polynomial` API could be replaced this way).
Note that `algebraMap R R[X]` has changed defeq.
[Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Reworking.20Finsupp.2C.20MonoidAlgebra.2C.20HahnSeries.2E.20PowerSeries/with/609275708)
Generated through several rounds of manual review with Claude Opus. Heavily edited by hand 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/)
|
tech debt
t-algebra
LLM-generated
label:t-algebra$ |
337/533 |
Mathlib/Algebra/MonoidAlgebra/MapDomain.lean,Mathlib/Algebra/MonoidAlgebra/Support.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Basis.lean,Mathlib/Algebra/Polynomial/Cardinal.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/Algebra/Polynomial/Degree/Defs.lean,Mathlib/Algebra/Polynomial/Degree/IsMonicOfDegree.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Algebra/Polynomial/Degree/Support.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Eval/Coeff.lean,Mathlib/Algebra/Polynomial/Eval/Defs.lean,Mathlib/Algebra/Polynomial/Eval/Degree.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/GroupRingAction.lean,Mathlib/Algebra/Polynomial/Inductions.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/Monomial.lean,Mathlib/Algebra/Polynomial/OfFn.lean,Mathlib/Algebra/Polynomial/Reverse.lean,Mathlib/Algebra/Polynomial/Splits.lean,Mathlib/Algebra/Polynomial/UnitTrinomial.lean,Mathlib/Algebra/Ring/Subring/IntPolynomial.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/LinearAlgebra/Finsupp/VectorSpace.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/RingTheory/IsAdjoinRoot.lean,Mathlib/RingTheory/KrullDimension/Polynomial.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/Opposites.lean,Mathlib/RingTheory/PowerBasis.lean,Mathlib/RingTheory/PowerSeries/Derivative.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean,Mathlib/RingTheory/ZariskisMainTheorem.lean,Mathlib/Tactic/ReduceModChar.lean,MathlibTest/InstanceDiamonds.lean |
40 |
9 |
['NoahW314', 'YaelDillies', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'tb65536'] |
nobody |
13-275 13 days ago |
13-2146 13 days ago |
39-63859 39 days |
| 41831 |
YaelDillies author:YaelDillies |
chore(RingTheory/TwoSidedIdeal): rid the `SMulMemClass (TwoSidedIdeal R) Rᵐᵒᵖ R` non-instance from its `inst` |
See https://github.com/leanprover-community/mathlib4/pull/40718#discussion_r3573863027.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
3/1 |
Mathlib/RingTheory/TwoSidedIdeal/Basic.lean |
1 |
3 |
['Ruben-VandeVelde', 'YaelDillies', 'github-actions'] |
nobody |
12-86102 12 days ago |
13-2016 13 days ago |
47-53186 47 days |
| 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.
---
- [ ] 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'] |
nobody |
12-82582 12 days ago |
13-76427 13 days ago |
13-76604 13 days |
| 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 |
25/1 |
Mathlib/Combinatorics/SimpleGraph/Hasse.lean |
1 |
1 |
['github-actions'] |
nobody |
12-68828 12 days ago |
12-69422 12 days ago |
12-70005 12 days |
| 42165 |
bocowgill author:bocowgill |
feat(Probability/HasCondDistrib): characterize independence using conditional distributions |
This PR uses conditional distributions to characterize independence of two random variables.
It adds eight public declarations to `Mathlib/Probability/HasCondDistrib.lean`, which is the only file modified:
- `indepFun_iff_hasCondDistrib_const_of_hasLaw`: characterizes independence using a constant conditional-distribution kernel when the laws are specified.
- `indepFun_iff_hasCondDistrib_const`: specializes this characterization to the marginal laws `P.map X` and `P.map Y`.
- `IndepFun.hasCondDistrib_const`: the forward implication of the preceding equivalence.
- `HasCondDistrib.indepFun_of_const`: the reverse implication.
- `hasCondDistrib_condDistrib`: shows that the regular conditional distribution `condDistrib Y X P` satisfies `HasCondDistrib`.
- `hasCondDistrib_iff_condDistrib_ae_eq`: characterizes finite kernels satisfying `HasCondDistrib` by almost-everywhere equality with `condDistrib`.
- `indepFun_iff_condDistrib_ae_eq_const_of_hasLaw`: characterizes independence by almost-everywhere equality of `condDistrib` with the constant kernel at the specified law.
- `indepFun_iff_condDistrib_ae_eq_const`: specializes this characterization to the marginal laws.
The PR adds no new file and makes no change to the root `Mathlib.lean` imports.
---
### Motivation
These results provide a basic building block for formalizing randomized experiments and causal identification. The main result provides a starting point for later ignorability and conditional-independence results in causal inference.
### LLM disclosure
For theorem planning and Lean implementation, I substantially used Codex by OpenAI. I also used it for suggestions around naming and documentation, for iterating on the proofs, and for validating my commits locally.
I manually searched for the best locations and earlier results to build upon. I personally reviewed both the mathematical statements and Lean code (line-by-line), as well as the suggestions around naming and API choices. I also reviewed and confirmed that I can explain each step of the results (both Mathematics and Lean syntax).
To validate the change, I directly compiled the modified file and ran a targeted build. I also ran the style linter, and completed a full `lake build` and a full `lake test`.
Please note: This is one of my first mathlib contributions. I welcome corrections or suggestions about all aspects of this PR. I'm prepared to revise it as necessary, and to learn from the review.
|
t-measure-probability
LLM-generated
new-contributor
large-import
maintainer-merge
|
73/3 |
Mathlib/Probability/HasCondDistrib.lean |
1 |
29 |
['CoolRmal', 'EtienneC30', 'bocowgill', 'github-actions', 'leanprover-radar'] |
kex-y assignee:kex-y |
12-65982 12 days ago |
13-24250 13 days ago |
36-16022 36 days |
| 42246 |
marcelolynch author:marcelolynch |
perf(Analysis/Normed/Affine/Isometry): scope the V₄/P₄ and V₁'/P₁' variables to their users |
The section variable block of this file declares six torsor pairs. Each pair has four instance binders. Only two declarations use the `V₄`/`P₄` pair: `comp_assoc` and `trans_assoc`. Only seven declarations use the `V₁'`/`P₁'` pair: `AffineIsometry.injective`, `map_eq_iff`, `map_ne`, and the four `AffineSubspace.isometryEquivMap` declarations. All other declarations carry these eight instance binders in their local context. Every typeclass search must examine them.
This PR removes the two pairs from the block. Four small sections declare each pair again, around the declarations that use it.
The nine statements do not change. A dump of all constant types in the module shows that every other declaration keeps its exact type. The nine declarations keep the same hypotheses and the same explicit arguments. Only the order of their implicit and instance binders changes. Mathlib contains no `@`-application of any of the nine.
Standalone elaboration of the file goes from 4.89 s to 4.58 s (medians of 6 interleaved runs, −6 %).
Same restructure as #42238, which measured −26 % instructions on the sibling file `LinearIsometry.lean` under `!bench`.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-analysis |
30/4 |
Mathlib/Analysis/Normed/Affine/Isometry.lean |
1 |
1 |
['github-actions'] |
nobody |
12-60367 12 days ago |
21-23071 21 days ago |
21-22951 21 days |
| 42961 |
D-Thomine author:D-Thomine |
feat(SpecialFunctions/Pow): versions of `le_rpow_inv_iff` for negative exponents |
This PR introduces negative exponent versions of `le_rpow_inv_iff` and `rpow_le_inv_iff`, and golfs a few adjacent 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-analysis |
24/24 |
Mathlib/Analysis/SpecialFunctions/Pow/Asymptotics.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean |
2 |
15 |
['D-Thomine', 'felixpernegger', 'github-actions'] |
nobody |
12-44575 12 days ago |
12-45727 12 days ago |
12-51179 12 days |
| 42965 |
arihallak author:arihallak |
feat(Analysis/Normed/Group/Pointwise): diameter of pointwise inversion, multiplication, and division |
This PR adds API lemmas for extended and real diameters (`EMetric.ediam` and `Metric.diam`) of pointwise inversion, multiplication, and division of sets in a `SeminormedCommGroup` (and automatically generates the additive counterparts via `@[to_additive]`).
### New declarations
- `ediam_inv` (additive: `ediam_neg`): `ediam s⁻¹ = ediam s`
- `ediam_div_le` (additive: `ediam_sub_le`): `ediam (s / t) ≤ ediam s + ediam t`
- `diam_inv` (additive: `diam_neg`): `diam s⁻¹ = diam s`
- `diam_mul_le` (additive: `diam_add_le`): `diam (s * t) ≤ diam s + diam t` (for bounded sets)
- `diam_div_le` (additive: `diam_sub_le`): `diam (s / t) ≤ diam s + diam t` (for bounded sets)
Tested with all 14 `#lint` linters. |
t-analysis
new-contributor
|
26/0 |
Mathlib/Analysis/Normed/Group/Pointwise.lean |
1 |
6 |
['github-actions', 'wwylele'] |
nobody |
12-34104 12 days ago |
13-31240 13 days ago |
13-31120 13 days |
| 40973 |
certik author:certik |
feat: multiplicative automatic continuity on ℝ |
This PR adds the multiplicative companion of the existing additive automatic-continuity theorem `AddMonoidHom.continuous_of_measurable`. See the git commit descriptions for all the details.
Depends on https://github.com/leanprover-community/mathlib4/pull/40976.
AI usage disclosure: I used Claude Opus 4.8 to create the theorems and proofs in my own Lean project, then extracted them into this PR since I think they are general purpose and would be useful for other people. I iterated on the proofs until they are as simple as I could get them. I am new to Lean, so if something should be reworked, please let me know. Lean is amazing, I was able to use it to prove various theorems and check my derivations. This is my little contribution back to the project. |
t-measure-probability
LLM-generated
new-contributor
|
159/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/Haar/AutomaticContinuity.lean |
2 |
10 |
['certik', 'github-actions', 'mathlib-merge-conflicts', 'wwylele'] |
RemyDegenne assignee:RemyDegenne |
12-33241 12 days ago |
67-10771 67 days ago |
69-34348 69 days |
| 41523 |
Harmenszoon author:Harmenszoon |
feat(Analysis/SpecialFunctions): add the Chase-Lovett diagonal reduction for binEntropy |
This PR adds the two-variable entropy inequality of Chase and Lovett ([arXiv:2211.11689](https://arxiv.org/abs/2211.11689), Lemma 2.2): for `x, y ∈ [0, 1]`,
```
x * binEntropy y + y * binEntropy x ≤ 2 * sqrt (x * y) * binEntropy (sqrt (x * y))
```
in a new leaf file `Mathlib/Analysis/SpecialFunctions/BinaryEntropy/Diagonal.lean`, together with its `negMulLog (1 - ·)` half (`Real.mul_negMulLog_one_sub_add_le`) and a `private` concavity layer for the comparison function `η u = exp u * negMulLog (1 - exp (-u))`. Two entries are added to `docs/references.bib` (Chase–Lovett arXiv:2211.11689, Boppana arXiv:2301.09664).
**Motivation.** This inequality is the reusable reduction step behind the recent entropic lower bounds for Frankl's union-closed sets conjecture (Gilmer; Alweiss–Huang–Sellke; Chase–Lovett; Sawin; Boppana): it reduces two-variable inequalities of Boppana type `K * (x * h y + y * h x) ≤ h (x * y)` to one-variable inequalities `2 * K * t * h t ≤ h (t ^ 2)`. `Mathlib/Analysis/SpecialFunctions/BinaryEntropy.lean` currently contains calculus basics for `binEntropy` only, and no inequality of this family; I checked current master for collisions before opening this. A kernel-checked downstream application — a complete Lean formalization of the union-closed lower bound at the constant `(3 - √5)/2` that uses exactly this reduction — is public at https://github.com/demonstrandum-research/artifacts (the `UCFrankl` development), which I maintain.
**Proof shape** (one page of calculus): substituting `x = exp (-u)`, the inequality becomes midpoint concavity of `η` on `[0, ∞)`; the `negMulLog (x * y)` parts of the two sides cancel exactly, the `negMulLog (1 - ·)` parts transfer to `η` via the identity `x * η (-log x) = negMulLog (1 - x)`, and `η'' ≤ 0` reduces to `log t ≤ t - 1`. Stating `η` through `negMulLog` absorbs the `0 * log 0` boundary behaviour, so no separate edge-case argument is needed at `x = 1`.
**Design notes / open questions for reviewers.**
- Hypotheses are stated as `0 ≤ x`/`x ≤ 1` pairs rather than `x ∈ Set.Icc 0 1`; happy to convert if the membership form is preferred.
- The `η`-machinery is `private`; it could be exposed if judged independently useful.
- File placement: a new `BinaryEntropy/Diagonal.lean` leaf keeps the import footprint of `BinaryEntropy.lean` unchanged (the proof needs `Analysis.Convex.Deriv`); merging into the main file is also possible if preferred.
- Naming: `mul_binEntropy_add_mul_binEntropy_le` / `mul_negMulLog_one_sub_add_le` follow the conclusion-based convention but I am glad to rename.
**AI disclosure** (per the [mathlib AI policy](https://leanprover-community.github.io/contribute/index.html)): the Lean code in this PR was generated by LLM agents (Anthropic's Claude, running in an agent pipeline that I operate under the name Demonstrandum), and was then compile-verified against mathlib and reviewed by me. This PR description was also prepared with AI assistance and reviewed by me. The proof is elementary calculus as summarized above; I understand it and take full responsibility for the contribution. I am adding the `LLM-generated` label as required. The downstream `UCFrankl` development linked above (kernel-checked, axioms `[propext, Classical.choice, Quot.sound]` only) is the evidence that the lemma carries real weight in applications.
---
- [x] depends on: nothing
|
t-analysis
LLM-generated
new-contributor
|
227/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/BinaryEntropy/Diagonal.lean,docs/references.bib |
3 |
5 |
['Harmenszoon', 'Timeroot', 'github-actions'] |
urkud assignee:urkud |
12-33240 12 days ago |
55-21146 55 days ago |
55-21026 55 days |
| 42833 |
YaelDillies author:YaelDillies |
feat(Combinatorics/SimpleGraph/Connnectivity): 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
|
138/31 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean |
2 |
1 |
['github-actions'] |
nobody |
12-4986 12 days ago |
16-61522 16 days ago |
16-61577 16 days |
| 42823 |
attilavjda author:attilavjda |
chore: let `to_additive` generate hand-written additive twins |
In eight `to_additive` sites the additive declaration is written out by hand, but `@[to_additive]` on the multiplicative one generates the same statement.
This PR replaces the glue with a tag, deletes the twins, and `(attr := simp)` is used where the additive side must stay a simp lemma.
Aristotle AI found these duplicates, and suggested the solution.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-group-theory
new-contributor
|
8/60 |
Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/Category/Grp/Limits.lean,Mathlib/Algebra/Category/MonCat/Limits.lean,Mathlib/Algebra/Group/DivInvMonoid.lean,Mathlib/Algebra/Symmetrized.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfStabilizer.lean,Mathlib/GroupTheory/Nilpotent.lean |
7 |
5 |
['attilavjda', 'github-actions', 'mathlib-merge-conflicts', 'wwylele'] |
nobody |
11-84521 11 days ago |
12-1068 12 days ago |
16-42329 16 days |
| 43015 |
tb65536 author:tb65536 |
refactor(Analysis/Normed/Unbundled/SpectralNorm): extract, generalize, and golf uniqueness of power-multiplicative norms |
This PR extracts uniqueness of power-multiplicative norms to a separate file so that it can be used in a non-archimedean context.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
65/69 |
Mathlib.lean,Mathlib/Analysis/Normed/Unbundled/IsPowMulUnique.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean |
3 |
1 |
['github-actions'] |
nobody |
11-73523 11 days ago |
11-73880 11 days ago |
11-73760 11 days |
| 34078 |
joneugster author:joneugster |
feat(scripts/autolabel): add more label dependencies |
Add more label dependencies.
If a label has another one in the dependencies, the other one will be removed if the first one is present.
---
- [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 |
11-66065 11 days ago |
14-41041 14 days ago |
14-41206 14 days |
| 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 |
11-58341 11 days ago |
13-46889 13 days ago |
13-46769 13 days |
| 41522 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Paths): existence of longest paths/trails/cycles/circuits |
We already have the existence of a longest path/trail. This adds:
- the existence of a longest cycle/circuit
- the existence of a longest path/trail from a specific vertex
- the existence of a longest path/trail between specific endpoints
- the existence of a longest cycle/circuit at a specific vertex
---
`exists_isTrail_forall_length_le_of_pred` is the common argument that works for any predicate on trails, which is then used to prove the 10 versions mentioned above.
I know this looks a bit ugly, but taking a longest path/trail/cycle/circuit is a useful proof technique.
Also, that predicate version might be useful to get Kempe chains, although I haven't tried 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
128/22 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean |
3 |
1 |
['github-actions'] |
nobody |
11-58295 11 days ago |
11-62189 11 days ago |
55-18749 55 days |
| 43028 |
j-loreaux author:j-loreaux |
feat(Analysis/CStarAlgebra): `@[congr]` lemmas for `cfc` |
This PR adds variants of `cfc_congr`/`cfcₙ_congr` that use the `∀ x ∈ _, ...` spelling instead of `Set.EqOn` and marks them `@[congr]` so that they can be used with `simp`, `conv` and `congr!`. There is some minor fallout, but I think it is net positive (and by some margin > ε).
The lemmas `cfc_zero` and `cfcₙ_zero` are no longer marked `@[simp]` because it can now prove 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-analysis |
71/65 |
Mathlib/Analysis/CStarAlgebra/ApproximateUnit.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/NonUnital.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/RealImaginaryPart.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Restrict.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/CStarAlgebra/Unitary/Connected.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog/Basic.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/PosPart/Basic.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/IntegralRepresentation.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/RingInverseOrder.lean |
13 |
1 |
['github-actions'] |
nobody |
11-53684 11 days ago |
11-54834 11 days ago |
11-55023 11 days |
| 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
|
31/11 |
Mathlib/Data/List/Sort.lean |
1 |
2 |
['github-actions'] |
nobody |
11-49777 11 days ago |
12-23606 12 days ago |
12-23486 12 days |
| 42605 |
tb65536 author:tb65536 |
feat(Analysis/Subadditive): multiplicative Fekete's lemma |
This PR proves Fekete's lemma for nonnegative submultiplicative sequences (the nth roots of a submultiplicative sequence converge). This will be applied to the sequence `‖a ^ k‖ ^ (k : ℝ)⁻¹` in a normed ring.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
large-import
|
83/16 |
Mathlib/Analysis/Subadditive.lean |
1 |
3 |
['ADedecker', 'github-actions', 'tb65536'] |
nobody |
11-42942 11 days ago |
23-3090 23 days ago |
23-2971 23 days |
| 42245 |
plp127 author:plp127 |
chore(FreeRing): use `MonoidAlgebra ℤ` instead of `FreeAbelianGroup` |
Replace `FreeAbelianGroup` with `MonoidAlgebra ℤ` in the definition of `FreeRing` and `FreeCommRing`. The intent is to deprecate and remove the multiplication on `FreeAbelianGroup` so it can be `@[to_additive]`-ized.
---
- [x] depends on: #42239
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
large-import
|
79/83 |
Mathlib/RingTheory/FreeCommRing.lean,Mathlib/RingTheory/FreeRing.lean,Mathlib/SetTheory/Cardinal/Free.lean |
3 |
3 |
['github-actions', 'mathlib-dependent-issues', 'vlad902'] |
nobody |
11-38186 11 days ago |
11-41644 11 days ago |
11-42596 11 days |
| 40197 |
plp127 author:plp127 |
feat: valuation of an algebraic element |
We prove that if `x` is algebraic over `K` then there exists some `n ≠ 0` such that the valuation of `x` raised to the `n`-th power is equal to the valuation of some element of `K`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
67/0 |
Mathlib.lean,Mathlib/RingTheory/Valuation/Algebraic.lean |
2 |
1 |
['github-actions'] |
joneugster assignee:joneugster |
11-33241 11 days ago |
90-52500 90 days ago |
90-52380 90 days |
| 40579 |
jcreinhold author:jcreinhold |
feat(Algebra/Category/Ring): preserve limits to CommMonCat |
Adds the missing instance saying that forgetting a commutative ring to its multiplicative commutative monoid preserves limits. |
t-algebra
new-contributor
label:t-algebra$ |
7/0 |
Mathlib/Algebra/Category/Ring/Limits.lean |
1 |
8 |
['felixpernegger', 'github-actions', 'jcreinhold'] |
joneugster assignee:joneugster |
11-33240 11 days ago |
80-155 80 days ago |
80-8509 80 days |
| 41946 |
Hilbert-beinghappy author:Hilbert-beinghappy |
feat(SetTheory/Descriptive/Tree): add infinite branches and bodies |
Motivation
The existing `tree A` API models trees as prefix-closed sets of finite
lists, together with some basic node operations (`take`, `subAt`,
`pullSub`). It had no notion of an infinite branch through such a
tree. Infinite branches and their collection, the body of a tree, are
basic vocabulary in descriptive set theory (e.g. to state that a tree
is well-founded iff its body is empty, or to talk about closed subsets
of Baire space as bodies of trees), so this is a natural extension of
the file.
Changes
* `initialSegment x n` is the list of the first `n` values of an
infinite sequence `x : ℕ → A`, with lemmas relating its length and
its behaviour when passing from `n` to `n + 1`.
* `IsBranch T x` says that `x : ℕ → A` is an infinite branch of `T`:
every finite initial segment of `x` lies in `T`.
* `body T` is the set of infinite branches of `T`, defined via
`IsBranch`.
* The auxiliary lemmas `nil_mem_of_isBranch` (a branch forces the root
`[]` to lie in `T`) and `body_mono` (`body` is monotone in the tree,
tagged `@[gcongr]`) round out the basic API.
Scope
This PR intentionally does not add closedness of `body T` (which
would require `A` to carry the discrete topology, so that `body T` is
closed in the product topology on `ℕ → A`), well-foundedness of trees
(which needs well-founded relations and descending chains), or rank
(which needs ordinal-valued rank API). These are left for follow-up
PRs, since each pulls in its own dependencies and deserves separate
review.
Verification
* `lake build Mathlib.SetTheory.Descriptive.Tree`
* `lake exe lint-style Mathlib.SetTheory.Descriptive.Tree`
* `lake build Mathlib`
AI use
I used Codex to help select this item from the
backlog, adapt the definitions to the existing `tree A` API and to the
`Descriptive.Tree` namespace and current module system (e.g. adding
the `public import` for `Mathlib.Data.List.OfFn`), draft the
implementation, and run the three verification commands above. I
checked every definition and lemma statement against its intended
mathematical meaning, and went through each proof term individually,
unfolding `initialSegment`, `IsBranch`, and `body` to confirm the
`simp`/`simpa` calls actually close the resulting goals rather than
just trusting that they compiled. |
t-set-theory |
42/1 |
Mathlib/SetTheory/Descriptive/Tree.lean |
1 |
1 |
['github-actions'] |
alreadydone assignee:alreadydone |
11-33238 11 days ago |
44-29496 44 days ago |
44-29376 44 days |
| 42369 |
SnirBroshi author:SnirBroshi |
fix: remove `DecidableEq Prop` instance |
Convert the `LinearOrder Prop` and `CompleteLinearOrder Prop` instances into `def`s, to avoid providing a global `DecidableEq Prop` instance.
We can convert them back when the decidability fields are removed from `LinearOrder`, but very few places need `LinearOrder Prop` so this seems like a good fix until that happens.
Note that the `DecidableEq Prop` instance causes diamonds with [`instDecidableEqOfIff`](https://leanprover-community.github.io/mathlib4_docs/Init/Core.html#instDecidableEqOfIff).
See [#mathlib4 > leaked `DecidableEq Prop`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/leaked.20.60DecidableEq.20Prop.60/with/564769361)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
47/9 |
Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Data/Fintype/Sets.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Nat/Periodic.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/PropInstances.lean,Mathlib/RingTheory/Norm/Transitivity.lean,Mathlib/Topology/OmegaCompletePartialOrder.lean,Mathlib/Topology/Order/LowerUpperTopology.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Separation/LinearUpperLowerSetTopology.lean,MathlibTest/Instances/DecidableEqProp.lean |
12 |
1 |
['github-actions'] |
JovanGerb assignee:JovanGerb |
11-33236 11 days ago |
30-71730 30 days ago |
30-71610 30 days |
| 42781 |
alreadydone author:alreadydone |
feat(Algebra/Category): `AddCommGrpCat` is monoidal closed |
Co-authored-by: Aristotle (Harmonic) [aristotle-harmonic@harmonic.fun](mailto:aristotle-harmonic@harmonic.fun)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-category-theory
label:t-algebra$ |
196/43 |
Mathlib.lean,Mathlib/Algebra/Category/Grp/Monoidal.lean,Mathlib/Algebra/Category/Grp/Yoneda.lean,Mathlib/Algebra/Category/Grp/ZModuleEquivalence.lean,Mathlib/CategoryTheory/Monoidal/Closed/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean |
6 |
14 |
['alreadydone', 'github-actions', 'joelriou', 'robin-carlier'] |
kim-em assignee:kim-em |
11-33235 11 days ago |
15-9306 15 days ago |
15-57421 15 days |
| 41982 |
scholzhannah author:scholzhannah |
feat: generalize `OpenPartialHomeomorph/IsImage` to `PartialHomeomorph` |
This is a continuation of #41045.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
355/11 |
Mathlib.lean,Mathlib/Topology/OpenPartialHomeomorph/IsImage.lean,Mathlib/Topology/PartialHomeomorph/IsImage.lean |
3 |
6 |
['fpvandoorn', 'github-actions', 'scholzhannah'] |
nobody |
11-32344 11 days ago |
33-861 33 days ago |
33-5511 33 days |
| 43032 |
SnirBroshi author:SnirBroshi |
chore(Order/Fin/Basic): add missing simp lemmas for coercing order embeddings into 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
24/1 |
Mathlib/Order/Fin/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
11-28418 11 days ago |
11-32770 11 days ago |
11-35416 11 days |
| 43037 |
kim-em author:kim-em |
feat(Tactic/NormNum): add `norm_num_simproc` and use it for `Nat.fib` |
This PR adds a `norm_num_simproc` command that declares a `norm_num` extension and registers it as a simproc in the given simproc sets from a single declaration. We then try this out for `Nat.fib`, converting the existing `norm_num` extension.
```lean
norm_num_simproc [simp, seval] evalNatFib (Nat.fib _) where
eval {_ _} e := ...
```
declares `evalNatFib : NormNumExt` tagged `@[norm_num Nat.fib _]`, plus `evalNatFib.simproc` registered under `[simp, seval]`. Registering in `seval` makes the procedure reachable from `grind`, which previously could not evaluate `Nat.fib` at all. (`simp` couldn't either.)
`NormNum.derive` walks the extension `DiscrTree` and performs no traversal of its own, so an extension is responsible for normalising its own operands via a recursive `derive`. Consumers that call `derive` directly rather than through `simp` (in particular `ring`, `positivity`, `field_simp`'s discharger, `interval_cases`, and `reduce_mod_char`) depend on that. A simproc only rewrites the expression it is handed, so generating the extension from a simproc instead would silently fail for those consumers as soon as the operands are not already literals. `MathlibTest/Tactic/NormNum/NatFib.lean` verifies that we still get this right with `positivity` on `0 < Nat.fib (Nat.sqrt 144)`.
`Nat.fib` is a deliberately conservative first case. `proveNatFib` is fast doubling, so evaluation is O(log n) big-number multiplications: `Nat.fib 50000` takes 126µs and the only thing that grows is the resulting literal, which is the answer the caller asked for. Around 30 further extensions are candidates for the same treatment, but several of them (e.g. `Nat.factorial`, `Nat.Prime`, the Jacobi and Legendre symbols) are not bounded that way, and a globally registered `[simp]` simproc runs on every `simp` call in the library. Those want per-extension `[simp]` versus `[seval]` decisions and their own benchmarks.
🤖 Prepared with Claude Code
|
t-meta |
78/9 |
Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/NormNum/NatFib.lean,MathlibTest/Tactic/NormNum/NatFib.lean |
3 |
1 |
['github-actions'] |
nobody |
11-16310 11 days ago |
11-18591 11 days ago |
11-20823 11 days |
| 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
|
150/6 |
Mathlib/Order/RelSeries.lean |
1 |
1 |
['github-actions'] |
nobody |
11-9831 11 days ago |
25-7298 25 days ago |
25-19825 25 days |
| 43040 |
Qinghev author:Qinghev |
feat(Analysis/Convex): add center mass residual identity |
This adds `Finset.sum_smul_sub_centerMass_eq_zero`, stating that the weighted sum of displacements from a finite center of mass is zero whenever the total weight is nonzero.
---
Codex assisted with drafting and verification. |
t-analysis
new-contributor
|
5/0 |
Mathlib/Analysis/Convex/Combination.lean |
1 |
2 |
['github-actions'] |
nobody |
11-8196 11 days ago |
11-9353 11 days ago |
11-9233 11 days |
| 40663 |
Vierkantor author:Vierkantor |
feat: solve equalities of instances in `convert` |
This PR sets the `preTransparency` of `convert` to `.instances`, which means it will not run congruence on goals that already are equal at `.instances` transparency. In other words, `convert` (without exclamation) should leave no goals of the form `instA.toC = instB.toC`.
There are 387 (~ 8.5%) additional `convert!` calls in Mathlib that could become `convert` after this change, in addition to 2626 (~ 57,8%) where `convert` already succeeds at reducible transparency. I found no cases where `postTransparency := .instances` would be needed instead.
Full breakdown of stats, according to the test script below and passing the captured log messages to `sort | uniq -c`:
* 2626 `convert` would work
* 1513 `convert!` (i.e. `convert (postTransparency := .default)`) is required
* 387 `convert (preTransparency := .instances)` is required
* 16 cause an error in the test script
The test script consists of replacing the elaborator for `convert` with:
```lean
def sameGoals (gs₁ gs₂ : List MVarId) : MetaM Bool := do
if gs₁.length == gs₂.length then
try
(gs₁.zip gs₂).allM fun (g₁, g₂) => do
-- Check that they agree on the set of free variables, otherwise we get errors.
-- We assume the context in the `convert` case is a subset of the `convert!` case
-- since `convert!` can more agressively unfold and introduce more variables.
if !(← g₁.getDecl).lctx.isSubPrefixOf (← g₂.getDecl).lctx then return false
g₂.withContext <| withReducible <| isDefEq (← g₁.getType) (← g₂.getType)
catch _ => return false
else
return false
elab_rules : tactic
| `(tactic| convert $[!%$expensive]? $cfg $[←%$sym]? $term $[using $n]? $[with $ps?*]?) =>
withMainContext do
let actualConfig ← Convert.elabConfig expensive.isSome cfg
let cheapConfig ← Convert.elabConfig false cfg
let redConfig := { cheapConfig with
preTransparency := .reducible, postTransparency := .reducible }
let preInstConfig := { cheapConfig with
preTransparency := .instances, postTransparency := .reducible }
let postInstConfig := { cheapConfig with
postTransparency := .instances, preTransparency := .reducible }
let patterns := (ps?.getD #[]).toList
let expectedType ← mkFreshExprMVar (mkSort (← getLevel (← getMainTarget)))
let (e, gs) ← elabTermForConvert term expectedType
liftMetaTactic fun g ↦ do
-- Don't retain metavar assignments but do retain messages.
let msgs ← withoutModifyingState do
try
let actualGoals ← g.convert e sym.isSome (n.map (·.getNat)) actualConfig patterns
let redGoals ← g.convert e sym.isSome (n.map (·.getNat)) redConfig patterns
if ← sameGoals actualGoals redGoals then
logInfo m!"convert(reducible)"
else
let preInstGoals ← g.convert e sym.isSome (n.map (·.getNat)) preInstConfig patterns
if ← sameGoals actualGoals preInstGoals then
logInfo m!"convert(preInst)"
else
let postInstGoals ← g.convert e sym.isSome (n.map (·.getNat)) postInstConfig patterns
if ← sameGoals actualGoals postInstGoals then
logInfo m!"convert(postInst)"
else if expensive.isSome then
logInfo m!"convert(expensive)"
else
logInfo m!"convert(error)"
catch e =>
logInfo m!"convert(error {e.toMessageData})"
pure ()
Core.getMessageLog
Core.setMessageLog msgs
return (← g.convert e sym.isSome (n.map (·.getNat)) actualConfig patterns) ++ gs
```
---
Ideally we'd run a benchmark on this PR, or even better one that compares `preTransparency` and `postTransparency`. But we don't have a lot of calls to plain `convert` yet, since I'd want to wait for the migration until #38071 is merged.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
46/7 |
Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/InvLog.lean,Mathlib/Geometry/Euclidean/Incenter.lean,Mathlib/NumberTheory/ClassNumber/AdmissibleCardPowDegree.lean,Mathlib/Tactic/Convert.lean,MathlibTest/Tactic/Convert/Instances.lean |
6 |
21 |
['JovanGerb', 'Vierkantor', 'github-actions', 'joneugster', 'leanprover-radar'] |
JovanGerb assignee:JovanGerb |
11-1380 11 days ago |
15-68348 15 days ago |
51-69857 51 days |
| 43041 |
ajirving author:ajirving |
feat(Analysis/Analytic): analytic order of a constant function and multiplying by constants |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 analyticOrderAt_const (which matches the meromorphic version) as well as various forms of analyticOrderAt_mul_const and analyticOrderNatAt variants. |
t-analysis |
42/0 |
Mathlib/Analysis/Analytic/Order.lean |
1 |
1 |
['github-actions'] |
nobody |
10-77240 10 days ago |
10-77871 10 days ago |
10-78428 10 days |
| 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 label:t-algebra$ |
183/0 |
Counterexamples.lean,Counterexamples/CommSemiring7InvertibleModule6.lean,Mathlib/RingTheory/Spectrum/Maximal/Basic.lean |
3 |
1 |
['github-actions'] |
nobody |
10-50930 10 days ago |
10-53063 10 days ago |
10-52943 10 days |
| 43051 |
j-loreaux author:j-loreaux |
feat: the non-unital Stone–Weierstrass theorem |
Taken from the module documentation:
The Stone-Weierstrass theorem
(`ContinuousMap.subalgebra_topologicalClosure_eq_top_of_separatesPoints`) guarantees that a
(star) subalgebra of `C(X, 𝕜)`, for `X` compact and `RCLike 𝕜`, which separates points is dense.
The non-unital version is a statement about non-unital (star) subalgebras of `C₀(X, 𝕜)`, the
continuous functions vanishing at infinity on a not-necessarily-compact space `X`. In particular,
a non-unital (star) subalgebra of `C₀(X, 𝕜)` which separates points and is **nowhere vanishing**
(see `Set.NowhereVanishing`) is dense.
We deduce these from the unital versions by passing to the one-point compactification. There
are natural maps `ZeroAtInftyContinuousMap.toOnePoint : C₀(X, R) → C(OnePoint X, R)` sending
`f : C₀(X, R)` to the extension to `OnePoint X` that takes the value `f ∞ = 0`, and in the reverse
direction `ContinuousMap.toZeroAtInfty : C(OnePoint X, R) → C₀(X, R)` sending `f : C(OnePoint X, R)`
to the restriction `fun x : X ↦ f ↑x - f ∞`. The former is a non-unital algebra homomorphism, and
the latter is a continuous linear map (Lipschitz with constant `2`) which maps all the constant
functions to zero. Given a subalgebra `S` of `C₀(X, R)` which is nowhere vanishing and separates
points, the (non-unital) subalgebra `S' := map toOnePoint S` also separates points so the (unital)
subalgebra `adjoin R S'` also separates points, and by the unital version of Stone–Weierstrass
is dense in `C(OnePoint X, R)`. As a submodule, the `adjoin R S' = R ∙ 1 ⊔ S'`. Mapping this
back to `C₀(X, R)` we find that `toZeroAtInfty (adjoin R S') = ⊥ ⊔ toZeroAtInfty S' = S`
since `f.toOnePoint.toZeroAtInfty = f` for all `f : C₀(X, R)`. Since `toZeroAtInfty` is a continuous
surjection, `S` must be dense because `adjoin R S'` is dense.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
285/1 |
Mathlib.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Notation/Support.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Topology/Algebra/Algebra.lean,Mathlib/Topology/Algebra/NonUnitalAlgebra.lean,Mathlib/Topology/Algebra/NonUnitalStarAlgebra.lean,Mathlib/Topology/Algebra/StarSubalgebra.lean,Mathlib/Topology/ContinuousMap/NonUnitalStoneWeierstrass.lean,Mathlib/Topology/ContinuousMap/ZeroAtInftyUnitization.lean |
10 |
1 |
['github-actions'] |
nobody |
10-46221 10 days ago |
10-48863 10 days ago |
10-48783 10 days |
| 41443 |
alreadydone author:alreadydone |
feat(RingTheory/AdjoinRoot): add AdjoinRoot.isFractionRing |
Co-authored-by: Sriram Chinthalagiri Venkata @sriram3301
Co-authored-by: David Kurniadi Angdinata @Multramate
This contribution was created as part of the Heidelberg Lean workshop "Formalising algebraic geometry" in November 2025.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
97/9 |
Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Algebraic/Integral.lean,Mathlib/RingTheory/IsAdjoinRoot.lean,Mathlib/RingTheory/Localization/Algebra.lean |
4 |
6 |
['alreadydone', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'tb65536'] |
nobody |
10-46040 10 days ago |
10-47193 10 days ago |
45-75199 45 days |
| 42404 |
Robertboy18 author:Robertboy18 |
chore(downstream_repos): add TorchLean |
This PR adds [TorchLean](https://github.com/lean-dojo/TorchLean) to `scripts/downstream_repos.yml`!
TorchLean is the first unified Lean 4 framework for neural-network specification,
execution, training, and formal verification. It depends on Mathlib and maintains
build and documentation workflows on its default branch! Let me know if something else is needed:)
|
CI
new-contributor
|
7/0 |
scripts/downstream_repos.yml |
1 |
2 |
['copilot-pull-request-reviewer', 'github-actions'] |
nobody |
10-39480 10 days ago |
27-32613 27 days ago |
27-32493 27 days |
| 36428 |
wrenna-robson author:wrenna-robson |
feat(Logic/Equiv/Fin): Streamline equiv definitions using mkDivMod |
This PR uses Fin.mkDivMod to streamline the related equivalence and introduces Nat.mkDivMod to a similar end.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
64/67 |
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 |
6 |
['JovanGerb', 'github-actions', 'mathlib-merge-conflicts', 'wrenna-robson'] |
joneugster assignee:joneugster |
10-33246 10 days ago |
49-1397 49 days ago |
76-42018 76 days |
| 41710 |
WenrongZou author:WenrongZou |
feat(FormalGroup): generalize the definition of `FormalGroup.Point` |
This PR generalizes the definition of the point of formal group. This will fit into more cases of applications.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
120/75 |
Mathlib/RingTheory/FormalGroup/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
10-20006 10 days ago |
10-20627 10 days ago |
48-62419 48 days |
| 42434 |
kebekus author:kebekus |
chore: rename files |
Rename files in `Mathlib/Analysis/SpecialFunctions/Integrability` and `Mathlib/Analysis/SpecialFunctions/Integrals` to better reflect their contents, and update docstrings. The current file names are somewhat unsystematic, very specialized, and will be seen as misleading once more material is 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/)
|
file-removed
t-analysis
|
116/62 |
Mathlib.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Complex/ValueDistribution/Proximity/Basic.lean,Mathlib/Analysis/Complex/ValueDistribution/Proximity/IntegralPresentation.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/SpecialFunctions/Integrability/Log.lean,Mathlib/Analysis/SpecialFunctions/Integrability/PosLog.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Log.lean,Mathlib/Analysis/SpecialFunctions/Integrals/PosLog.lean |
9 |
5 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
10-16769 10 days ago |
10-17428 10 days ago |
26-51058 26 days |
| 35504 |
JoaBjo author:JoaBjo |
feat(Probability/Distributions/Exponential): add MGF, moments, and memoryless property |
Add the main analytic results for the exponential distribution:
- moment-generating function `mgf id (expMeasure r) t = r / (r - t)` for `t < r`
- mean `∫ x, x ∂(expMeasure r) = r⁻¹`
- variance `Var[id; expMeasure r] = r⁻¹ ^ 2`
- `ℒp` membership for all `p`
- tail probability `P(X > x) = exp (-(r * x))`
- memoryless property `P(X > s + t | X > s) = P(X > t)`
The MGF is computed by reducing to the known improper integral `∫ exp(c * x)` on `Ioi`, and integrability is deduced by contradiction from the positive closed-form value. The mean and variance are computed via the Gamma function integral `∫₀^∞ x^(n-1) exp(-r x) dx = Γ(n) / rⁿ`. The memoryless property follows from the exponential identity `exp(-(r(s+t))) = exp(-rt) * exp(-rs)`.
🤖 Claude Code (Fable) was used in this PR to resolve a merge with master. It adapted the branch's code to upstream renames/deprecations. It also restructured a proof that broke in the merge.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-measure-probability
large-import
|
199/0 |
Mathlib/Probability/Distributions/Exponential.lean |
1 |
11 |
['EtienneC30', 'JoaBjo', 'Timeroot', 'github-actions', 'mathlib-merge-conflicts'] |
EtienneC30 assignee:EtienneC30 |
9-77769 9 days ago |
9-77863 9 days ago |
52-2268 52 days |
| 43067 |
yuanyi-350 author:yuanyi-350 |
feat(Topology/Metrizable): generalize compact separability |
migrate from #42470 |
t-topology |
15/10 |
Mathlib/Topology/EMetricSpace/Basic.lean,Mathlib/Topology/Metrizable/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
9-69031 9 days ago |
9-70357 9 days ago |
9-70237 9 days |
| 43066 |
joelriou author:joelriou |
chore(AlgebraicTopology/SimplicialSet/AnodyneExtensions): removing some `set_option` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
40/103 |
Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/IsUniquelyCodimOneFace.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Op.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Pairing.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/PairingCore.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Rank.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/RelativeCellComplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/UnionProd.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplicesSubcomplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/Simplices.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/CategoryTheory/Limits/Shapes/Preorder/PrincipalSeg.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Sites/Subsheaf.lean,Mathlib/CategoryTheory/Subfunctor/Basic.lean,Mathlib/CategoryTheory/Types/Basic.lean,Mathlib/Order/Interval/Set/InitialSeg.lean |
17 |
1 |
['github-actions'] |
nobody |
9-64881 9 days ago |
9-66747 9 days ago |
9-69107 9 days |
| 42474 |
joelriou author:joelriou |
feat(AlgebraicTopology/SimplicialSet): `MulStruct.nonempty` |
In this PR, we show that for `SSet.PtSimplex.MulStruct`, it is possible to multiply two `SSet.PtSimplex` and that left inverses exist. This will be used in the construction of homotopy groups of Kan complexes.
---
- [x] depends on: #38216
- [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
|
135/0 |
Mathlib/AlgebraicTopology/SimplicialSet/Boundary.lean,Mathlib/AlgebraicTopology/SimplicialSet/KanComplex/MulStruct.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
9-62978 9 days ago |
19-82389 19 days ago |
19-84300 19 days |
| 41655 |
joelriou author:joelriou |
feat(AlgebraicTopology): filtration of `Δ[p] ⊗ Δ[1]` |
Previously, we defined an enumeration of the non-degenerate `p + 1`-dimensional simplices of `Δ[p] ⊗ Δ[1]`. They "cover" `Δ[p] ⊗ Δ[1]`, and we use the enumeration to define a filtration of `Δ[p] ⊗ Δ[1]` by subcomplexes.
In a future PR, it will be used in order to define a constructor for morphisms from `Δ[p] ⊗ Δ[1]` which shall take as inputs a morphism on each of these `p + 1`-simplices, with a compatibility condition on the intersection of two consecutive simplices in the enumeration.
From https://github.com/joelriou/topcat-model-category
---
- [x] depends on: #41624
- [x] depends on: #41617
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology |
114/21 |
Mathlib/AlgebraicTopology/SimplicialSet/Boundary.lean,Mathlib/AlgebraicTopology/SimplicialSet/Degenerate.lean,Mathlib/AlgebraicTopology/SimplicialSet/FiniteColimits.lean,Mathlib/AlgebraicTopology/SimplicialSet/FiniteProd.lean,Mathlib/AlgebraicTopology/SimplicialSet/Homotopy.lean,Mathlib/AlgebraicTopology/SimplicialSet/ProdStdSimplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/ProdStdSimplexOne.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/Subcomplex.lean,Mathlib/CategoryTheory/Sites/LocallySurjective.lean,Mathlib/CategoryTheory/Subfunctor/Basic.lean,Mathlib/CategoryTheory/Subfunctor/Finite.lean |
12 |
5 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
robin-carlier assignee:robin-carlier |
9-62575 9 days ago |
11-8138 11 days ago |
19-49263 19 days |
| 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 simp 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 |
8 |
['ashebson', 'github-actions', 'grunweg', 'mathlib-bors'] |
nobody |
9-57572 9 days ago |
10-78885 10 days ago |
11-25620 11 days |
| 42023 |
lakesare author:lakesare |
feat(Topology/Instances/AddCircle/Defs): add liftIco_coe_apply_of_periodic, liftIoc_coe_apply_of_periodic (5 more lemmas) |
**Upstreaming from Carleson: [/Carleson/ToMathlib/Topology/Instances/AddCircle/Defs.lean](https://github.com/fpvandoorn/carleson/blob/master/Carleson/ToMathlib/Topology/Instances/AddCircle/Defs.lean)**
___
### Changes from carleson
- **liftIco_coe_apply_of_periodic**
- `(a : 𝕜)` => `{a : 𝕜}` (to comply with already-present variables)
- **liftIoc_coe_apply_of_periodic**, **liftIco_coe_apply_of_periodic**
- `(x : 𝕜)` => `{x : 𝕜}` (to look like surrounding lemmas)
- **liftIco_coe_apply_of_periodic**, **liftIoc_coe_apply_of_periodic**
- refactor
- **liftIco_eq_liftIco**, **liftIoc_eq_liftIoc**, **liftIco_eq_liftIoc**
- `(a' : 𝕜)` => `{a': k}` (for consistency with the existing argument `{a : 𝕜}`)
### Note
There is a comment in the Carleson file suggesting renaming `liftIco_coe_apply_of_periodic`, `liftIoc_coe_apply_of_periodic`, `liftIco_coe_apply`, and `liftIoc_coe_apply` together ([here](https://github.com/fpvandoorn/carleson/blob/master/Carleson/ToMathlib/Topology/Instances/AddCircle/Defs.lean#L27)), but the intended names are not specified. In my mind the names are already fine, so I didn't change them. |
carleson
t-topology
|
34/0 |
Mathlib/Topology/Instances/AddCircle/Defs.lean |
1 |
4 |
['github-actions', 'lakesare', 'mathlib-bors'] |
nobody |
9-43193 9 days ago |
35-56089 35 days ago |
35-56238 35 days |
| 43055 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Connectivity/Connected): deleting a non-bridge edge preserves reachability |
This generalizes an existing theorem about `Connected` to `Preconnected` and `Reachable`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
22/19 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean |
2 |
1 |
['github-actions'] |
nobody |
9-42112 9 days ago |
10-33767 10 days ago |
10-34015 10 days |
| 43081 |
joelriou author:joelriou |
feat(LinearAlgebra/ExteriorPower): generators of the exterior powers |
---
This PR continues the work from #18662.
Original PR: https://github.com/leanprover-community/mathlib4/pull/18662
- [x] depends on: #18534
- [x] depends on: #18590
- [x] depends on: #26464
|
|
114/0 |
Mathlib.lean,Mathlib/Data/Finset/Sort.lean,Mathlib/LinearAlgebra/ExteriorPower/Generators.lean |
3 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
9-3864 9 days ago |
9-6313 9 days ago |
9-6310 9 days |
| 42977 |
xroblot author:xroblot |
feat(Algebra/QuadraticAlgebra): base change of quadratic algebras |
A base change `R → S` induces an `R`-algebra homomorphism `QuadraticAlgebra R a b →ₐ[R] QuadraticAlgebra S (algebraMap R S a) (algebraMap R S b)` sending `ω` to `ω`, injective when `S` is faithful over `R`, and compatible with the norm, the trace and the discriminant.
Prepared with Claude Code 🤖
|
t-algebra label:t-algebra$ |
53/1 |
Mathlib/Algebra/QuadraticAlgebra/Basic.lean,Mathlib/Algebra/QuadraticAlgebra/Discriminant.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
9-646 9 days ago |
9-1503 9 days ago |
11-12496 11 days |
| 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 |
17/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 |
18 |
['Deicyde', 'SnirBroshi', 'github-actions'] |
nobody |
9-247 9 days ago |
22-81676 22 days ago |
22-81556 22 days |
| 43079 |
Parcly-Taxel author:Parcly-Taxel |
chore: rename underscore defs in `JacobiTheta.Bounds` |
In the `HurwitzKernelBounds` namespace:
* `f_nat, g_nat, F_nat -> f, g, F`
* `f_int, F_int -> fZ, FZ` |
t-number-theory
tech debt
|
111/93 |
Mathlib/NumberTheory/LSeries/HurwitzZetaEven.lean,Mathlib/NumberTheory/LSeries/HurwitzZetaOdd.lean,Mathlib/NumberTheory/ModularForms/JacobiTheta/Bounds.lean |
3 |
3 |
['Parcly-Taxel', 'github-actions', 'jcommelin'] |
nobody |
8-86111 8 days ago |
9-17955 9 days ago |
9-17835 9 days |
| 42774 |
gasparattila author:gasparattila |
chore(Topology/MetricSpace/Closeds): rename lemmas about `MetricSpace (NonemptyCompacts α)` |
These lemmas are moved from the `Metric` namespace to `TopologicalSpace.NonemptyCompacts`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
21/15 |
Mathlib/Topology/MetricSpace/Closeds.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
8-81946 8 days ago |
8-82598 8 days ago |
16-22560 16 days |
| 43029 |
harahu author:harahu |
chore(RingTheory): tidy markdown headers |
This PR:
- ensures all files in `Mathlib/RingTheory` have one and only one H1 header,
- better aligns some H2 headers with the style guide.
For files missing a module header, new headers 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-ring-theory |
48/36 |
Mathlib/RingTheory/AdicCompletion/LocalRing.lean,Mathlib/RingTheory/Algebraic/StronglyTranscendental.lean,Mathlib/RingTheory/DedekindDomain/GaussLemma.lean,Mathlib/RingTheory/Flat/IsBaseChange.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,Mathlib/RingTheory/HopkinsLevitzki.lean,Mathlib/RingTheory/Ideal/IdempotentFG.lean,Mathlib/RingTheory/Jacobson/Radical.lean,Mathlib/RingTheory/Kaehler/JacobiZariski.lean,Mathlib/RingTheory/LocalRing/Quotient.lean,Mathlib/RingTheory/Localization/Away/AdjoinRoot.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean,Mathlib/RingTheory/MvPowerSeries/Expand.lean,Mathlib/RingTheory/MvPowerSeries/LinearTopology.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/RingTheory/Perfectoid/BDeRham.lean,Mathlib/RingTheory/Perfectoid/FontaineTheta.lean,Mathlib/RingTheory/Perfectoid/Untilt.lean,Mathlib/RingTheory/Polynomial/ShiftedLegendre.lean,Mathlib/RingTheory/PowerSeries/Expand.lean,Mathlib/RingTheory/RegularLocalRing/Defs.lean,Mathlib/RingTheory/SimpleModule/InjectiveProjective.lean,Mathlib/RingTheory/SimpleRing/DivisionRing.lean,Mathlib/RingTheory/SimpleRing/Matrix.lean,Mathlib/RingTheory/Spectrum/Prime/IsOpenComapC.lean,Mathlib/RingTheory/TensorProduct/IsBaseChangeRightExact.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean,Mathlib/RingTheory/Trace/Quotient.lean,Mathlib/RingTheory/WittVector/Frobenius.lean,Mathlib/RingTheory/WittVector/Identities.lean,Mathlib/RingTheory/WittVector/Isocrystal.lean,Mathlib/RingTheory/WittVector/MulP.lean,Mathlib/RingTheory/WittVector/Verschiebung.lean |
33 |
11 |
['github-actions', 'grunweg', 'harahu'] |
nobody |
8-76574 8 days ago |
8-78515 8 days ago |
11-8619 11 days |
| 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 |
8-66850 8 days ago |
20-46540 20 days ago |
20-55159 20 days |
| 41979 |
Nicola9Falciola author:Nicola9Falciola |
feat(LinearAlgebra/Matrix/GeneralLinearGroup/Card): add the theorem on the cardinality of the special linear group over a commring and over a finite field |
Add the theorems about the cardinality of the special linear group over a ring, both the exact formula and the _mul version and the version for a finite field. Building on the definition from the previous PR on the identification of `SL` with `det.ker`.
- [x] depends on: #41855
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
40/0 |
Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Card.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean |
2 |
10 |
['CBirkbeck', 'Nicola9Falciola', 'github-actions', 'mathlib-dependent-issues'] |
nobody |
8-66525 8 days ago |
8-74788 8 days ago |
8-77093 8 days |
| 42827 |
wwylele author:wwylele |
chore(RingTheory/Pochhammer): fix the type of ascPochhammer_eval_succ |
The existing two theorems have the following signature
```lean4
theorem ascPochhammer_nat_eval_succ (r n : ℕ) :
n * Polynomial.eval (n + 1) (ascPochhammer ℕ r) = (n + r) * Polynomial.eval n (ascPochhammer ℕ r)
theorem ascPochhammer_eval_succ (S : Type*) [Semiring S] (r n : ℕ) :
↑n * Polynomial.eval (↑n + 1) (ascPochhammer S r) = (↑n + ↑r) * Polynomial.eval (↑n) (ascPochhammer S r)
```
However what's more useful in practice is the following
```lean4
theorem ascPochhammer_eval_succ {S : Type*} [Semiring S] (r : ℕ) (n : S) :
n * Polynomial.eval (n + 1) (ascPochhammer S r) = Polynomial.eval n (ascPochhammer S r) * (n + ↑r)
```
which this PR proves. Note that the multiplication order is changed so it doesn't require commutativity on S.
The old `ascPochhammer_nat_eval_succ` is now a specialization of the new `ascPochhammer_eval_succ` with `S = ℕ` & mul_comm, so it is redundant, thus deprecated.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
12/13 |
Mathlib/RingTheory/Polynomial/Bernstein.lean,Mathlib/RingTheory/Polynomial/Pochhammer.lean |
2 |
3 |
['Ruben-VandeVelde', 'github-actions', 'wwylele'] |
nobody |
8-55603 8 days ago |
12-43237 12 days ago |
16-68097 16 days |
| 41481 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Connectivity/Connected): a preconnected graph with finitely many edges has finitely many vertices |
`Finite V ↔ Finite G.Dart ↔ G.support.Finite ↔ G.edgeSet.Finite`
---
`#G.Dart = 2 * #G.edgeSet` is also true (#36406) which could simplify the `edgeSet` proof, but it's in `DegreeSum.lean` and more complicated. Having `Finite` theorems seems 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
large-import
|
79/1 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Dart.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean |
4 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
8-53497 8 days ago |
29-58012 29 days ago |
42-14675 42 days |
| 40344 |
FMLJohn author:FMLJohn |
feat(RingTheory/Adjoin/Polynomial/Basic): `Algebra.adjoin_mem_exists_aeval'` and `Algebra.adjoin_eq_exists_aeval'` |
In this pull request, I have proved the following result:
Suppose `R` and `A` are commutative semirings with `Algebra R A`, `S` is a subset of `A`, `a` is an element of `A` that belongs to `adjoin R S`, and `f : σ → A` satisfies `S ⊆ Set.range f`, then there exists a multivariate polynomial `p : MvPolynomial σ R` such that `p.aeval f = a`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
16/0 |
Mathlib/RingTheory/Adjoin/Polynomial/Basic.lean |
1 |
5 |
['github-actions', 'plp127'] |
mattrobball assignee:mattrobball |
8-52932 8 days ago |
85-53297 85 days ago |
85-73135 85 days |
| 43038 |
plp127 author:plp127 |
feat: `Dyadic` is an ordered ring |
Prove `Dyadic` is a linearly ordered ring, providing instances for `LinearOrder`, `CommRing`, and `IsStrictOrderedRing`.
---
[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 |
111/0 |
Mathlib.lean,Mathlib/Data/Dyadic/OrderedRing.lean |
2 |
4 |
['ADedecker', 'github-actions', 'plp127'] |
nobody |
8-51660 8 days ago |
8-51660 8 days ago |
10-53305 10 days |
| 43056 |
plp127 author:plp127 |
chore(Data/PFunctor): fix defeq abuse in `PFunctor.Obj` |
Fix defeq abuse with `PFunctor.Obj` by using explicit constructors and destructors.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-data
|
185/208 |
Mathlib/Control/Functor.lean,Mathlib/Data/PFunctor/Univariate/Basic.lean,Mathlib/Data/PFunctor/Univariate/M.lean,Mathlib/Data/QPF/Univariate/Basic.lean |
4 |
1 |
['github-actions'] |
nobody |
8-50005 8 days ago |
10-31206 10 days ago |
10-34125 10 days |
| 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 |
62/13 |
Mathlib.lean,Mathlib/Order/RelSeries.lean,Mathlib/Order/RelSeries/Lemmas.lean |
3 |
1 |
['github-actions'] |
nobody |
8-40280 8 days ago |
11-22791 11 days ago |
11-24045 11 days |
| 42967 |
yuanyi-350 author:yuanyi-350 |
refactor(RingTheory/Localization): restore IsLocalization.surj' |
|
t-algebraic-geometry
easy
|
6/5 |
Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/RingTheory/Localization/InvSubmonoid.lean |
2 |
1 |
['github-actions'] |
dagurtomas assignee:dagurtomas |
8-33241 8 days ago |
13-27144 13 days ago |
13-27024 13 days |
| 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 |
8 |
['Sfgangloff', 'github-actions', 'mathlib-merge-conflicts', 'sgouezel'] |
sgouezel assignee:sgouezel |
8-30950 8 days ago |
8-31421 8 days ago |
30-57157 30 days |
| 43096 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Clique): clique numbers of top and bot |
Some of these hold more generally under `[Finite G.edgeSet]` rather than `[Finite α]`, but we need better `Sym2` cardinality theorems to show it.
This is especially obvious for `cliqueNum_bot`, since it shouldn't need any finiteness assumptions (it always has finitely many edges).
---
The same proofs should work once `finite_cliqueNum_bddAbove` is generalized, though `cliqueNum_eq_natCard` will need a little help:
```lean
nontriviality α
have : Finite α := Nat.finite_of_card_ne_zero <| h ▸ G.cliqueNum_ne_zero_of_finite_edgeSet
```
I think #36442 should help but I'm not exactly sure how. It's not super difficult to generalize the `BddAbove` result for finite edges (e.g. I have a few `Sym2` theorems that bound it by `G.edgeSet.ncard + 1`), but we should find the right theorems rather than go straight at 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
31/3 |
Mathlib/Combinatorics/SimpleGraph/Clique.lean |
1 |
1 |
['github-actions'] |
nobody |
8-16190 8 days ago |
8-16903 8 days ago |
8-18471 8 days |
| 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 |
23/3 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Subwalks.lean |
4 |
1 |
['github-actions'] |
nobody |
8-12050 8 days ago |
8-12707 8 days ago |
8-12587 8 days |
| 43100 |
JJYYY-JJY author:JJYYY-JJY |
feat(Analysis/Complex/CauchyIntegral): add Cauchy formula at interior points |
This generalizes the higher-order Cauchy integral formula from the center of a disc to an arbitrary point in its interior, and closes the TODO.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
66/14 |
Mathlib/Analysis/Complex/CauchyIntegral.lean |
1 |
1 |
['github-actions'] |
nobody |
8-10511 8 days ago |
8-11181 8 days ago |
8-11061 8 days |
| 42594 |
harahu author:harahu |
chore(Algebra): tidy markdown headers |
This PR ensures files in `Mathlib/Algebra` have one and only one H1 header, in accordance with the style guide. It also fixes other minor formatting issues related to headers in the touched files.
The new headers that this PR introduces 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-algebra label:t-algebra$ |
31/17 |
Mathlib/Algebra/Algebra/Subalgebra/IsSimpleOrder.lean,Mathlib/Algebra/AlgebraicCard.lean,Mathlib/Algebra/Category/Grp/FiniteGrp.lean,Mathlib/Algebra/Category/Grp/ZModuleEquivalence.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/CharP/Frobenius.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Map.lean,Mathlib/Algebra/Lie/Prod.lean,Mathlib/Algebra/Module/SpanRankOperations.lean,Mathlib/Algebra/Module/StablyFree/FreeOfInvertible.lean,Mathlib/Algebra/Module/Submodule/Equiv.lean,Mathlib/Algebra/MvPolynomial/Counit.lean,Mathlib/Algebra/MvPolynomial/Expand.lean,Mathlib/Algebra/MvPolynomial/Funext.lean,Mathlib/Algebra/Order/Archimedean/Hom.lean,Mathlib/Algebra/Order/Interval/Set/Group.lean,Mathlib/Algebra/Order/Monoid/ToMulBot.lean |
17 |
1 |
['github-actions'] |
nobody |
8-6123 8 days ago |
23-49643 23 days ago |
23-49523 23 days |
| 42986 |
tb65536 author:tb65536 |
feat(Topology/Separation/Hausdorff): add `tendsto_nhds_unique_of_forall` |
This PR adds the variant `tendsto_nhds_unique_of_forall` and switches a few occurrences of `tendsto_nhds_unique` to a more appropriate variant (either `tendsto_nhds_unique_of_forall` or `tendsto_nhds_unique_of_eventuallyEq`).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
35/47 |
Counterexamples/TopologistsSineCurve.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Continuity.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/Complex/Liouville.lean,Mathlib/Analysis/InnerProductSpace/l2Space.lean,Mathlib/Analysis/Normed/Unbundled/SeminormFromConst.lean,Mathlib/Analysis/SpecialFunctions/ArithmeticGeometricMean.lean,Mathlib/MeasureTheory/Integral/CircleAverage.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/MeasureTheory/Integral/SetToL1/ChangeMeasure.lean,Mathlib/MeasureTheory/Measure/Stieltjes.lean,Mathlib/Topology/Separation/Hausdorff.lean |
12 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
8-3992 8 days ago |
8-5765 8 days ago |
12-5363 12 days |
| 41127 |
TJHeeringa author:TJHeeringa |
feat(Analysis/InnerProductSpace/Reproducing): add sum of two RKHS |
Add the sum of two RKHS. This space comes equipped with the norm
$$
\\|f\\|^2 = \inf \\{ \\|f_1\\| + \\|f_1\\| : f_1\in H_1, f_2\in H_2 \text{ s.t. } f(x) = f_1(x) + f_2(x) \quad \forall x\in X \\}
$$
This quotient norm is realized by defining the space as the quotient of `WithLp 2 (H × H₁)` with the kernel of the map `WithLp 2 (H × H₁) →L[𝕜] (X → V), (f,g) ↦ ↑f + ↑f` and defining the `coeCLM` of the RKHS accordingly.
---
The current PR has two implementations: `Operations` and `Operations2`. They both include the same idea but approach it differently. The former starts from the kernels and builds the sum space that way. The latter starts from the RKHSs (`H`, not `OfKernel K`) and builds the sum space that way. Having both implementations is not desirable. We need to choose one, polish that and remove the other. At this point, I think Operations2 is the better way to design this and Operations should be removed, since the proofs of the former are a lot cleaner than the latter and it doesn't require exposing the currently private `H0 K`. An aspect that should be taken into account here is that the decision here will impact the design of future operations like the spaces formed by taking Hadamard product or Kronecker products of the kernels, i.e. if we go here for the RKHSs-first approach then it is likely we end up doing that too for the other operations.
I am doubting whether `generator` and `sumSpace` are good names.
This sum of two RKHs `sumSpace` is not a direct sum or a Hilbert sum, but the sum from interpolation theory. Once that is properly implemented the construction of `sumSpace` should likely be altered accordingly.
#### AI usage:
I used AI for a previous attempt in which I defined `sumSpace` as
```lean4
abbrev sumSpace := (generator H H₁).range
```
instead of
```lean4
abbrev sumSpace := WithLp 2 (H × H₁) ⧸ (generator H H₁).ker
```
However, that lead to instance collisions.
Additionally, I used an LLM to help with the proof of `linearIsometry_surjective`.
#### Mathematical details
These can be found in e.g. theorem 5.4 of Paulsen, Vern I. and Raghupathi, Mrinal,
*An introduction to the theory of reproducing kernel Hilbert 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]
-->
- [x] depends on: #41149
[](https://gitpod.io/from-referrer/)
|
t-analysis |
338/1 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Reproducing.lean,Mathlib/Analysis/InnerProductSpace/Reproducing/Operations.lean,Mathlib/Analysis/InnerProductSpace/Reproducing/Operations2.lean |
4 |
20 |
['Maldooor', 'TJHeeringa', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
8-3096 8 days ago |
12-13847 12 days ago |
42-35749 42 days |
| 40727 |
pepamontero author:pepamontero |
feat(Geometry/Manifold/Instances/Quotient): quotients of manifolds by smooth free properly discontinuous group actions are manifolds |
Add smooth manifold structure on orbit space `orbitRel.Quotient G M`.
This PR is a follow-up to #35653, which equipped `orbitRel.Quotient G M` with a `ChartedSpace` structure. Here we promote that to an `IsManifold I n` instance, assuming M itself is an `IsManifold I n`.
**Note**: I had to modify the order of some results in `Mathlib/Topology/Covering/Quotient.lean` to accomodate `isLocalHomeomorph_quotientMk_of_properlyDiscontinuousSMul` in a way that made sense and without repeating many variables. Adding this lemma is not absolutely necessary, but it does make it more comfortable to work with in the main file. These changes can therefore be reversed.
This started as an ItaLean2025 project; here is the [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/541885-ItaLean-2025/topic/Projects.3A.20Quotient.20Manifolds/with/575121158) dedicated to it.
Co-authored by: Enrique Díaz Blanco <qdiazblanco@gmail.com>
Co-authored by: Archie Browne <ajb421@ic.ac.uk>
--------
- [x] depends on: #41832
- [x] depends on: #41835
- [x] depends on: #42436
- [x] depends on: #42502
- [x] depends on: #41534 |
new-contributor
large-import
|
155/34 |
Mathlib/Geometry/Manifold/Instances/Quotient.lean,Mathlib/Topology/Covering/Quotient.lean |
2 |
49 |
['Deicyde', 'github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'pepamontero', 'scholzhannah'] |
grunweg assignee:grunweg |
7-78943 7 days ago |
7-79796 7 days ago |
18-79418 18 days |
| 41459 |
EzequielS2 author:EzequielS2 |
feat(Algebra/Group): mulOpposite equivs for submonoid and subgroup |
## Summary
Add MulOpposite monoid equivalences for submonoids and subgroups, and remove the corresponding TODOs in `Subsemiring/MulOpposite.lean`.
## Test plan
- [x] `lake build` and `lake exe runLinter` on `Mathlib.Algebra.Group.Submonoid.MulOpposite` and `Mathlib.Algebra.Group.Subgroup.MulOpposite`
|
t-algebra
new-contributor
label:t-algebra$ |
78/4 |
Mathlib/Algebra/Group/Subgroup/MulOpposite.lean,Mathlib/Algebra/Group/Submonoid/MulOpposite.lean,Mathlib/Algebra/Ring/Subsemiring/MulOpposite.lean |
3 |
12 |
['EzequielS2', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen', 'wwylele'] |
nobody |
7-73002 7 days ago |
15-40528 15 days ago |
56-51026 56 days |
| 39941 |
mkaratarakis author:mkaratarakis |
feat(Data/List): add count lemmas for duplicate detection |
## Summary
Add general list count lemmas used in the Perron–Frobenius quiver-path development: Relocated from the PF-specific file per review feedback. Proofs use upstream `List.Duplicate` API and `grind` where appropriate (per @chenson2018).
Part of the Perron–Frobenius formalization (with @or4nge19).
cc @or4nge19 for review |
t-data |
24/0 |
Mathlib/Data/List/Count.lean |
1 |
4 |
['chenson2018', 'eric-wieser', 'github-actions', 'mkaratarakis'] |
eric-wieser assignee:eric-wieser |
7-72461 7 days ago |
7-76888 7 days ago |
85-35234 85 days |
| 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
t-data
|
587/0 |
Mathlib.lean,Mathlib/Data/FreeModLatThree.lean |
2 |
9 |
['alreadydone', 'github-actions', 'plp127', 'tb65536'] |
nobody |
7-71382 7 days ago |
46-50499 46 days ago |
49-74200 49 days |
| 41777 |
ADedecker author:ADedecker |
chore: switch `IsQuasiInverse.of_comp_[left, right]` |
Also add a bit of doc and switch some arguments to enforce some asymmetry in the API for `IsQuasiInverse`: as a convention, we think of the first argument as a quasi-inverse to the second one, instead of the converse.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
40/26 |
Mathlib/Algebra/Module/LinearMap/FiniteRange.lean,Mathlib/Analysis/Normed/Operator/Fredholm/Basic.lean |
2 |
9 |
['ADedecker', 'github-actions', 'themathqueen'] |
themathqueen assignee:themathqueen |
7-69003 7 days ago |
8-80561 8 days ago |
44-67840 44 days |
| 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 |
72/0 |
Mathlib.lean,Mathlib/RingTheory/RegularLocalRing/PowerSeries.lean |
2 |
6 |
['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
7-65718 7 days ago |
7-65718 7 days ago |
7-65603 7 days |
| 39913 |
mkaratarakis author:mkaratarakis |
feat(Combinatorics/Quiver): periodicity and aperiodicity |
cycle lengths, index of imprimitivity, and cyclic partitions for strongly connected quivers.
Part of the Perron–Frobenius formalization (with @or4nge19).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
cc @or4nge19 for review |
t-combinatorics |
280/0 |
Mathlib.lean,Mathlib/Combinatorics/Quiver/Cyclic.lean |
2 |
4 |
['github-actions', 'mkaratarakis', 'or4nge19'] |
nobody |
7-63268 7 days ago |
7-63268 7 days ago |
97-75387 97 days |
| 43108 |
tb65536 author:tb65536 |
chore(GroupTheory/Solvable): to_additivize file |
This PR to_additivizes `GroupTheory/Solvable.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-algebra
t-group-theory
label:t-algebra$ |
83/23 |
Mathlib/GroupTheory/Abelianization/Defs.lean,Mathlib/GroupTheory/IsPerfect.lean,Mathlib/GroupTheory/Solvable.lean |
3 |
2 |
['github-actions'] |
nobody |
7-60603 7 days ago |
7-60645 7 days ago |
7-60527 7 days |
| 42307 |
mcdoll author:mcdoll |
feat(Analysis): define Bessel potential spaces |
This PR defines Bessel potential or Fourier theoretic Sobolev spaces.
Material taken from github.com/mcdoll/DirichletProblem
---
As a side note: some of the theorems in `Distribution.Sobolev` will have to be reworked (and maybe the file has to be renamed).
In the future, the facts about `TemperedDistribution.MemSobolev` will be deduced from facts about `BesselPotentialSpace`, the reason being that the existence quantifier makes it impossible to track the `Lp` function, which makes it really hard to prove continuity statements.
This is more related to the properties of interesting operations such as the Sobolev embedding theorem and the trace theorem and I don't think that deducing `MemSobolev.add` from the bundled version saves any lines.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
289/0 |
Mathlib.lean,Mathlib/Analysis/FunctionalSpaces/BesselPotentialSpace.lean |
2 |
2 |
['github-actions'] |
sgouezel assignee:sgouezel |
7-60332 7 days ago |
32-72678 32 days ago |
32-72558 32 days |
| 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 |
3 |
['SnirBroshi', 'github-actions', 'themathqueen'] |
nobody |
7-58474 7 days ago |
11-65000 11 days ago |
11-64880 11 days |
| 43109 |
tb65536 author:tb65536 |
chore(Algebra/Order/Hom/Basic): split file by imports |
I ran intro trouble importing `Algebra/Order/Hom/Basic` into `Algebra/Order/BigOperators/Group/Finset` (which has `assert_not_exists Ring`) in order to prove subadditivity for finite sums.
The file `Algebra/Order/Hom/Basic` is already organized into a basic section, a group norms section, and a ring norms section, so splitting the file along those divisions seemed simplest.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-order
label:t-algebra$ |
268/198 |
Mathlib.lean,Mathlib/Algebra/Order/AbsoluteValue/Basic.lean,Mathlib/Algebra/Order/Hom/Basic.lean,Mathlib/Algebra/Order/Hom/GroupNormClass.lean,Mathlib/Algebra/Order/Hom/RingNormClass.lean,Mathlib/Analysis/Normed/Order/Hom/Basic.lean |
6 |
1 |
['github-actions'] |
nobody |
7-56526 7 days ago |
7-56580 7 days ago |
7-56461 7 days |
| 40846 |
TJHeeringa author:TJHeeringa |
feat(Analysis/InnerProductSpace/TensorProduct): add TensorProduct.congrL |
Add `TensorProduct.congrL`, the continuous version of `TensorProduct.congr`.
---
Requested in https://github.com/leanprover-community/mathlib4/pull/40074#issuecomment-4650716234.
No AI used.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #40074
[](https://gitpod.io/from-referrer/)
|
t-topology |
90/4 |
Mathlib/Analysis/InnerProductSpace/TensorProduct.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/Internal.lean,Mathlib/LinearAlgebra/TensorProduct/Map.lean,Mathlib/Topology/Algebra/Module/Equiv.lean |
4 |
24 |
['TJHeeringa', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
7-52304 7 days ago |
7-76440 7 days ago |
8-561 8 days |
| 43112 |
themathqueen author:themathqueen |
feat(Topology/Algebra/Module/Spaces/CLM): linear map version of `apply` |
This is the linear map version of `apply` 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 |
31/2 |
Mathlib/Analysis/Normed/Operator/Bilinear.lean,Mathlib/Topology/Algebra/Module/Spaces/ContinuousLinearMap.lean |
2 |
1 |
['github-actions'] |
nobody |
7-51609 7 days ago |
7-54592 7 days ago |
7-54472 7 days |
| 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'] |
nobody |
7-50307 7 days ago |
7-52622 7 days ago |
7-52675 7 days |
| 42818 |
TJHeeringa author:TJHeeringa |
chore(Algebra/Module/Equiv): split Equiv into Basic, Pi, Prod and Submodule |
The existing file `Equiv` has become too large. This splits the file into `Basic`, `Pi`, `Prod` and `Submodule`.
---
Copyrights were adapted based on what was done in #42697. I didn't find out who wrote `piCongrRight`, only that Kevin wrote `piCongrLeft`.
The companion PR marking `Mathlib/Topology/Algebra/Module/Equiv.lean` as deprected is #42818.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
|
file-removed
t-topology
|
520/415 |
Mathlib.lean,Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/CStarAlgebra/Module/Synonym.lean,Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/Analysis/Convex/ContinuousLinearEquiv.lean,Mathlib/Analysis/Fourier/Notation.lean,Mathlib/Analysis/InnerProductSpace/LinearPMap.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Operator/ContinuousLinearMap.lean,Mathlib/Analysis/Normed/Operator/LinearIsometry.lean,Mathlib/Analysis/Normed/Operator/Prod.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/MeasureTheory/Group/Measure.lean,Mathlib/MeasureTheory/Integral/Bochner/ContinuousLinearMap.lean,Mathlib/RepresentationTheory/Continuous/Basic.lean,Mathlib/Topology/Algebra/Algebra/Equiv.lean,Mathlib/Topology/Algebra/ContinuousAffineEquiv.lean,Mathlib/Topology/Algebra/InfiniteSum/Module.lean,Mathlib/Topology/Algebra/Module/Alternating/Basic.lean,Mathlib/Topology/Algebra/Module/ClosedSubmodule.lean,Mathlib/Topology/Algebra/Module/Complement.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Invertible.lean,Mathlib/Topology/Algebra/Module/Determinant.lean,Mathlib/Topology/Algebra/Module/Equiv/Basic.lean,Mathlib/Topology/Algebra/Module/Equiv/Pi.lean,Mathlib/Topology/Algebra/Module/Equiv/Prod.lean,Mathlib/Topology/Algebra/Module/Equiv/Submodule.lean,Mathlib/Topology/Algebra/Module/IsWeak.lean,Mathlib/Topology/Algebra/Module/LinearPMap.lean,Mathlib/Topology/Algebra/Module/ModuleTopology.lean,Mathlib/Topology/Algebra/Module/Multilinear/Topology.lean,Mathlib/Topology/Algebra/Module/Spaces/UniformConvergenceCLM.lean,Mathlib/Topology/Algebra/Module/Star.lean,Mathlib/Topology/Algebra/Module/TransferInstance.lean,Mathlib/Topology/Instances/RealVectorSpace.lean,Mathlib/Topology/Maps/Strict/Module.lean |
36 |
7 |
['TJHeeringa', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
7-48674 7 days ago |
7-48674 7 days ago |
14-67809 14 days |
| 43102 |
tb65536 author:tb65536 |
chore(GroupTheory/PGroup): to_additivize most of the file |
This PR to_additivizes most of `GroupTheory/PGroup.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-algebra
t-group-theory
label:t-algebra$ |
82/16 |
Mathlib/Algebra/Module/ZMod.lean,Mathlib/GroupTheory/PGroup.lean,Mathlib/Tactic/Translate/ToAdditive.lean |
3 |
6 |
['SnirBroshi', 'acmepjz', 'github-actions', 'tb65536'] |
nobody |
7-48018 7 days ago |
7-65080 7 days ago |
7-64962 7 days |
| 43110 |
felixpernegger author:felixpernegger |
feat(Computability): ackermann function as hyperoperation + estimates |
Express the ackermann function via hyperoperations as well as basic properties about hyperoperations
This is more or less coming from https://github.com/kim-em/name-the-biggest-number
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-computability |
61/3 |
Mathlib/Computability/Ackermann.lean,Mathlib/Data/Nat/Hyperoperation.lean |
2 |
2 |
['felixpernegger', 'github-actions'] |
nobody |
7-46131 7 days ago |
7-60287 7 days ago |
7-60167 7 days |
| 40851 |
SnirBroshi author:SnirBroshi |
feat(MeasureTheory/Integral/MeanInequalities): strict Hölder's inequality for Lebesgue integrals |
Prove an iff for the equality case of Hölder's inequality when both norms are finite and non-zero.
---
For both the norm 1 theorems and the finite non-zero theorems I extracted an intermediate lemma to reduce duplication between the inequality and equality cases.
It looks to me like `funMulInvSnorm` is intended to be private, so I made new theorems about it private.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
94/38 |
Mathlib/MeasureTheory/Integral/Lebesgue/Markov.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean |
2 |
15 |
['EtienneC30', 'SnirBroshi', 'github-actions'] |
EtienneC30 assignee:EtienneC30 |
7-45178 7 days ago |
7-46444 7 days ago |
55-74543 55 days |
| 42394 |
SnirBroshi author:SnirBroshi |
fix(Algebra/GroupWithZero/Associated): de-`abbrev` `Associates` |
`Associates` is an `abbrev` for `Quotient _`, but there are many `instance`s defined on it.
Some of them create diamonds with general `Quotient` instances: `Inhabited`, `Unique`, and most notably `Preorder`.
While `Associates` has a `Preorder` instance that uses the divisibility relation, any monoid with a `Preorder` will have its ordering lifted to the `Quotient`. So currently `Associates ℕ` has two different `LE` orders defined on it that disagree on `2 ≤ 3`.
This changes `Associates` to a `def` tagged with `@[implicit_reducible]`.
---
The `nonZeroDivisors` proof is now a bit awkward, since the `Equiv` works for `Quotient`s but `simp` refuses to evaluate the `Equiv` because `Associates` elements are multiplied but `Quotient` doesn't have that multiplication. Though `rw` works thanks to `@[implicit_reducible]`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
tech debt
|
26/11 |
Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/RingTheory/Ideal/IsPrincipal.lean |
3 |
7 |
['SnirBroshi', 'github-actions', 'leanprover-radar', 'pechersky'] |
nobody |
7-43090 7 days ago |
30-20970 30 days ago |
30-23127 30 days |
| 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 |
7-40620 7 days ago |
7-43535 7 days ago |
7-50713 7 days |
| 36442 |
SnirBroshi author:SnirBroshi |
feat(Data/Sym/Sym2/Card): cardinality theorems about `Sym2 α` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
168/0 |
Mathlib.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Data/Sym/Sym2/Card.lean |
4 |
33 |
['SnirBroshi', 'eric-wieser', 'github-actions', 'joneugster', 'mathlib-merge-conflicts', 'themathqueen'] |
TwoFX assignee:TwoFX |
7-37193 7 days ago |
45-63087 45 days ago |
107-37778 107 days |
| 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'] |
nobody |
7-34592 7 days ago |
18-32942 18 days ago |
31-24340 31 days |
| 39075 |
Thmoas-Guan author:Thmoas-Guan |
feat(Algebra/CommRingCat): colimit of local ring via local hom |
In this PR, we deal with filtered colimit of local ring via local homomorphisms, proving it is
again local, with maximal ideal equal to the union of images of maximal ideals.
Further more, we proved their residue field is colimit too (in category of local ring, residue field functor preserve colimit).
Co-authored-by: Wang Jingting <wangjt2020@163.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-algebra label:t-algebra$ |
211/0 |
Mathlib.lean,Mathlib/Algebra/Category/Ring/FilteredColimitsLocal.lean |
2 |
3 |
['Thmoas-Guan', 'github-actions', 'riccardobrasca'] |
joneugster assignee:joneugster |
7-33242 7 days ago |
52-23449 52 days ago |
116-74679 116 days |
| 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.
In addition, `UniformIntegrable` **becomes a structure**, and the related lemmas such as `UniformIntegrable.unifIntegrable`, which became redundant, are removed.
The boundedness in `UniformIntegrable` is expressed more directly, without coercions. This is the point which required to fix some downstream files (and to deprecate `Submartingale.eLpNorm_stoppedAbove_le'`, whose sole purpose was to manage a coercion which does not exist anymore). Note that the use of `< ∞` instead of `≠ ∞` in hypotheses is a voluntary one: this helps passing arguments from one lemma to another, and these hypotheses are usually proven by working with inequalities anyway.
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.
On a more minor side, I have **removed an hypothesis** in `UnifSpace.add`, and **renamed** `UnifIntegrable.mk_iff` to `unifIntegrable_mk_iff` since the statement did not benefit from the dot notation.
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 |
302/177 |
Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/Probability/Kernel/Disintegration/Density.lean,Mathlib/Probability/Martingale/BorelCantelli.lean,Mathlib/Probability/Martingale/Convergence.lean,Mathlib/Probability/Process/Filtration.lean |
6 |
1 |
['github-actions'] |
EtienneC30 assignee:EtienneC30 |
7-33233 7 days ago |
11-82621 11 days ago |
11-82501 11 days |
| 40604 |
xroblot author:xroblot |
feat(Algebra.GroupWithZero): generalize SMulZeroClass to MonoidWithZero and lift MulDistribMulAction to nonZeroDivisors |
Generalize the instance `SMulZeroClass α β` under `[Group α] [GroupWithZero β] [MulDistribMulAction α β]`to `[Group α] [MonoidWithZero β] [MulDistribMulAction α β]`.
From an action `[Group G] [MonoidWithZero M] [MulDistribMulAction G M]`, use this instance to construct an action on the nonzero divisors of 'M'.
**No diamond**: there is no general instance giving an action on a submonoid as a target (that would need the submonoid to be invariant, which isn't automatic), so defining the action on `nonZeroDivisors` should not clash with anything .
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude. |
t-algebra label:t-algebra$ |
55/6 |
Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/Algebra/Ring/Action/ConjAct.lean |
3 |
4 |
['github-actions', 'leanprover-radar', 'themathqueen'] |
nobody |
7-32340 7 days ago |
72-70095 72 days ago |
74-48053 74 days |
| 41717 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Walk): more `transfer` API |
---
The Hamiltonian lemmas don't really need `Finite`; I'll fix this after #41435 (in whichever merges second).
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
tech debt
|
54/23 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean |
4 |
1 |
['github-actions'] |
nobody |
7-32336 7 days ago |
50-19300 50 days ago |
50-19283 50 days |
| 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
|
29/0 |
Mathlib/Analysis/Calculus/VectorField.lean |
1 |
4 |
['github-actions', 'korbonits'] |
nobody |
7-15191 7 days ago |
17-18265 17 days ago |
17-18145 17 days |
| 43119 |
SnirBroshi author:SnirBroshi |
feat(Topology/LocallyConstant/Basic): a function is locally constant iff it's eventually constant around every point |
`IsLocallyConstant f ↔ ∀ x, (𝓝 x).EventuallyConst 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-topology |
19/13 |
Mathlib/Topology/Category/Profinite/Nobeling/Induction.lean,Mathlib/Topology/LocallyConstant/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
7-10619 7 days ago |
7-11720 7 days ago |
7-12365 7 days |
| 33434 |
astrainfinita author:astrainfinita |
chore: redefine `Finsupp.indicator` using `Finsupp.onFinset` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
6/17 |
Mathlib/Data/Finsupp/Indicator.lean |
1 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
7-10312 7 days ago |
7-12444 7 days ago |
26-66617 26 days |
| 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`. It also uses more widely the `simp` auto-param on `SimpleGraph.loopless`.
---
- [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 |
86/90 |
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/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/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/RelClasses.lean |
21 |
20 |
['SnirBroshi', 'Vierkantor', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
7-9753 7 days ago |
7-12734 7 days ago |
94-52803 94 days |
| 42475 |
kebekus author:kebekus |
feat: establish the Poisson-Jensen formula |
Establish the classic Poisson-Jensen formula of complex analysis, which generalizes the Jensen formula.
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
|
144/1 |
Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Complex/Poisson.lean |
2 |
3 |
['github-actions', 'kebekus', 'mathlib-merge-conflicts'] |
nobody |
7-4642 7 days ago |
7-5750 7 days ago |
27-34572 27 days |
| 41584 |
kim-em author:kim-em |
chore: complete generalization of oneLePart lemmas to DivInvMonoid |
This PR completes the generalization of `Mathlib/Algebra/Order/Group/PosPart.lean` started by #41247: weaken `leOnePart_one`/`negPart_zero` from `Group` to `DivInvOneMonoid` (the proof needs only `inv_one`), weaken `oneLePart_min` and the five `oneLePart` lemmas in the `LinearOrder` section (`oneLePart_eq_ite`, `oneLePart_eq_ite_lt`, `one_lt_oneLePart_iff`, `oneLePart_of_one_lt_oneLePart`, `oneLePart_lt`) from `Group` to `DivInvMonoid`, and weaken the `Pi` section's `[∀ i, Group (α i)]` to `[∀ i, DivInvMonoid (α i)]`. No statement or proof changes; this makes these lemmas available for `EReal`, the motivating use case of the original PR.
Follow-up to [#41247 (chore: generalize `instPosPart` to `SubNegMonoid`)](https://github.com/leanprover-community/mathlib4/pull/41247).
🤖 Prepared with Claude Code
|
t-algebra
LLM-generated
label:t-algebra$ |
17/7 |
Mathlib/Algebra/Order/Group/PosPart.lean |
1 |
5 |
['github-actions', 'leanprover-radar', 'themathqueen'] |
nobody |
7-4600 7 days ago |
7-7082 7 days ago |
7-6962 7 days |
| 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 |
7-3796 7 days ago |
7-4530 7 days ago |
7-4410 7 days |
| 43122 |
harahu author:harahu |
chore(Tactic): tidy markdown headers |
This PR ensures files in `Mathlib/Tactic` 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/)
|
|
60/37 |
Mathlib/Tactic/Algebraize.lean,Mathlib/Tactic/ApplyCongr.lean,Mathlib/Tactic/Bound.lean,Mathlib/Tactic/CategoryTheory/CheckCompositions.lean,Mathlib/Tactic/Conv.lean,Mathlib/Tactic/CrossRefAttribute.lean,Mathlib/Tactic/DSimpPercent.lean,Mathlib/Tactic/DeclarationNames.lean,Mathlib/Tactic/DepRewrite.lean,Mathlib/Tactic/FunProp/Attr.lean,Mathlib/Tactic/FunProp/Decl.lean,Mathlib/Tactic/FunProp/Elab.lean,Mathlib/Tactic/FunProp/FunctionData.lean,Mathlib/Tactic/FunProp/Mor.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/FunProp/ToBatteries.lean,Mathlib/Tactic/FunProp/Types.lean,Mathlib/Tactic/GuardGoalNums.lean,Mathlib/Tactic/GuardHypNums.lean,Mathlib/Tactic/Inhabit.lean,Mathlib/Tactic/Linarith.lean,Mathlib/Tactic/Linter/Style.lean,Mathlib/Tactic/Linter/TextBased.lean,Mathlib/Tactic/Linter/UnusedTacticExtension.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/NormNum/OfScientific.lean,Mathlib/Tactic/NormNum/Pow.lean,Mathlib/Tactic/NormNum/Result.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Ring/NamePolyVars.lean,Mathlib/Tactic/Ring/NamePowerVars.lean,Mathlib/Tactic/SplitIfs.lean,Mathlib/Tactic/Tauto.lean,Mathlib/Tactic/ToAdditive.lean,Mathlib/Tactic/ToDual.lean,Mathlib/Tactic/Widget/CommDiag.lean |
37 |
1 |
['github-actions'] |
nobody |
7-3277 7 days ago |
7-6555 7 days ago |
7-6435 7 days |
| 39916 |
mkaratarakis author:mkaratarakis |
feat(Combinatorics/Quiver/Path): paths for Perron–Frobenius |
Add `Mathlib/Combinatorics/Quiver/Path/PerronFrobenius.lean`: weighted quiver paths, cycle decomposition, and positivity lemmas for matrix irreducibility.
Part of the Perron–Frobenius formalization (with @or4nge19).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
341/0 |
Mathlib.lean,Mathlib/Combinatorics/Quiver/Induced.lean,Mathlib/Combinatorics/Quiver/Path/Cycle.lean,Mathlib/Combinatorics/Quiver/Path/Replicate.lean,Mathlib/Combinatorics/Quiver/Path/Simple.lean |
5 |
11 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'mkaratarakis', 'or4nge19'] |
nobody |
6-85759 6 days ago |
6-85759 6 days ago |
10-5171 10 days |
| 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.
Some other minor changes are 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.
- Tactic/Algebra/Basic.lean: typo, experssions → expressions.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/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/Data/Bracket.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 |
3 |
['SnirBroshi', 'github-actions', 'harahu'] |
nobody |
6-81022 6 days ago |
6-83103 6 days ago |
6-82983 6 days |
| 43120 |
SnirBroshi author:SnirBroshi |
feat(Logic/Function/Const): subsingleton range and injective 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-logic |
16/0 |
Mathlib/Logic/Function/Const.lean |
1 |
3 |
['SnirBroshi', 'github-actions', 'plp127'] |
nobody |
6-57683 6 days ago |
7-11315 7 days ago |
7-11195 7 days |
| 40496 |
thefundamentaltheor3m author:thefundamentaltheor3m |
feat(LinearAlgebra/AffineSpace/Simplex): the surface of a simplex |
I wrote the definition myself, and got Claude to generate some of the boilerplate code (which I then reviewed and had it clean 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/)
|
t-algebra
LLM-generated
new-contributor
label:t-algebra$ |
97/5 |
Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean |
1 |
8 |
['github-actions', 'grunweg', 'mathlib-bors', 'mathlib-merge-conflicts', 'thefundamentaltheor3m', 'wwylele'] |
nobody |
6-55021 6 days ago |
26-80133 26 days ago |
40-23033 40 days |
| 42771 |
xgenereux author:xgenereux |
feat(RingTheory/DedekindDomain/AdicValuation): adic valuations are trivial on subfields |
Two lemmas about height one primes and their behaviors on a subfield `k` of `R`.
- Its associated valuation is trivial on `k`.
- Its nonzero elements are transcendental over `k`
AI disclaimer: I used AI to suggest placement in the file and docstring. Lemmas are mine.
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 |
21/0 |
Mathlib/RingTheory/DedekindDomain/AdicValuation.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
6-52561 6 days ago |
6-53098 6 days ago |
9-59780 9 days |
| 42626 |
mkaratarakis author:mkaratarakis |
feat(Analysis/Matrix): operator norm and spectral radius of row-stochastic matrices |
Operator-norm and spectral-radius bounds for row-stochastic matrices: ‖A *ᵥ v‖ ≤ ‖v‖, ‖A‖ ≤ 1, and spectralRadius ℝ A ≤ These need Analysis imports, so they go in a new file rather than in `LinearAlgebra/Matrix/Stochastic.lean`.More material on stochastic matrices will follow here. Split off from #39914.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
@or4nge19
|
t-analysis |
52/1 |
Mathlib.lean,Mathlib/Analysis/Matrix/Stochastic.lean,Mathlib/LinearAlgebra/Matrix/Stochastic.lean |
3 |
10 |
['eric-wieser', 'github-actions', 'j-loreaux', 'mkaratarakis', 'tb65536'] |
nobody |
6-49910 6 days ago |
7-70544 7 days ago |
10-6825 10 days |
| 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 |
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'] |
nobody |
6-47211 6 days ago |
6-52357 6 days ago |
6-52237 6 days |
| 39953 |
plp127 author:plp127 |
feat(RingTheory/Valuation): embedding of valuation groups |
We show that if `vR` and `vA` are valuations satisfying `vR.HasExtension vA`, then there is an induced embedding of the valuation groups compatible with the valuations and with the 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
107/1 |
Mathlib/Algebra/Group/WithOne/Defs.lean,Mathlib/RingTheory/Valuation/Extension.lean |
2 |
13 |
['faenuccio', 'github-actions', 'plp127', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
6-45837 6 days ago |
6-48268 6 days ago |
97-11459 97 days |
| 39829 |
or4nge19 author:or4nge19 |
feat(LinearAlgebra): basis flag lemmas and genEigenspace map |
Part 1/3 of #39139.
Introduces basis flag lemmas and intertwining `genEigenspace` map, using directly available constructors, ie introducing none (so improving on #39139)
Co-authored-by: [kuotsanhsu](https://github.com/kuotsanhsu) [learningstud@gmail.com](mailto:learningstud@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-algebra
large-import
label:t-algebra$ |
59/3 |
Mathlib/LinearAlgebra/Basis/Flag.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean |
2 |
5 |
['github-actions', 'or4nge19', 'themathqueen'] |
themathqueen assignee:themathqueen |
6-44046 6 days ago |
6-44719 6 days ago |
72-52856 72 days |
| 43025 |
j-loreaux author:j-loreaux |
feat(Analysis/CStarAlgebra): grind patterns for cfc junk values |
This adds `grind` patterns with guards to discharge cases when `cfc` takes the junk value `0`.
Along the way we add `continuous_star_iff` and friends, and provide `to_fun` versions of both those and also `continuous_{neg,inv}_iff`. But for those changes, this PR would have much more `-` than `+` lines.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
124/127 |
Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/NonUnital.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Range.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Restrict.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Abs.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/PosPart/Basic.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/NumberTheory/LSeries/DirichletContinuation.lean,Mathlib/Probability/Distributions/Gaussian/Multivariate.lean,Mathlib/Topology/Algebra/Group/ContinuousInv.lean,Mathlib/Topology/Algebra/Group/ZPow.lean,Mathlib/Topology/Algebra/Star.lean,Mathlib/Topology/ContinuousMap/Basic.lean,Mathlib/Topology/ContinuousMap/ContinuousMapZero.lean |
16 |
3 |
['github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] |
nobody |
6-42064 6 days ago |
6-44219 6 days ago |
8-17832 8 days |
| 43144 |
gotrevor author:gotrevor |
doc(100-yaml): claim #53 (Pi is Transcendental) via an external Lean 4 formalization |
Adds `authors` + `links.result` to `docs/100.yaml` entry **53, "Pi is Transcendental"**, which
currently has a title and nothing else.
The formalization lives outside mathlib, in Lean 4:
[`PiTranscendental.lean`](https://github.com/gotrevor/lean-formalizations/blob/main/src/LeanFormalizations/NumberTheory/Transcendence/PiTranscendental.lean)
— `transcendental_pi_axiomClean : Transcendental ℚ Real.pi`, with
`#print axioms` = `[propext, Classical.choice, Quot.sound]` (re-verified 2026-08-25 against
mathlib v4.31.0). It builds the full Lindemann assembly on mathlib's own
`exp_polynomial_approx`: the analytic engine generalised to an arbitrary conjugate polynomial,
plus the algebraic half (symmetric functions over the Galois conjugates of `iπ`, via the
fundamental theorem of symmetric polynomials). `e_transcendental` is proved in the same chain.
No `decl` field, since that is for in-mathlib declarations and is existence-checked. `title` is
untouched. This follows the existing external-formalization entries: 8 (Compass), 24
(flypitch/CH), 31 (Ramsey), 36 (Brouwer), and 67 ("e is Transcendental").
`scripts/yaml_check.py docs/{100,1000,overview,undergrad}.yaml` exits 0.
### On #28013
[#28013](https://github.com/leanprover-community/mathlib4/pull/28013) (Lindemann–Weierstrass,
@astrainfinita) is open and active, and when it lands entry 53 should get a proper in-mathlib
`decl` — at which point this pointer has done its job and should be replaced or dropped. I am
not proposing this as an alternative to that work, and I would rather it landed than mine be
listed. This is only meant to record that a checkable Lean 4 proof exists in the meantime, which
is what `links.result` is for on the other five entries. Happy to close this if maintainers would
rather the entry stay empty until #28013 merges.
### Use of AI
The Lean development this points at was largely written by Claude working in long autonomous
sessions against a `lake build` + `#print axioms` gate, and two symmetric-function lemmas came
from Harmonic's Aristotle and were re-verified in the repository's own kernel; the repo's README
and commit history say so. This PR's four-line YAML diff was likewise drafted with Claude. I have
checked the axiom footprint myself and the linked file is machine-checked end to end.
|
LLM-generated
new-contributor
|
4/0 |
docs/100.yaml |
1 |
3 |
['github-actions', 'gotrevor'] |
nobody |
6-40422 6 days ago |
6-41004 6 days ago |
6-40884 6 days |
| 39847 |
vihdzp author:vihdzp |
chore: redefine `Ordinal.preOmega` using `Order.enum` |
The plan is to deprecate `Ordinal.enumOrd` in favor of `Order.enum`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #39136
[](https://gitpod.io/from-referrer/)
|
t-set-theory |
23/21 |
Mathlib/Order/Cofinal.lean,Mathlib/SetTheory/Cardinal/Aleph.lean |
2 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
alreadydone assignee:alreadydone |
6-33242 6 days ago |
40-13605 40 days ago |
40-42179 40 days |
| 40692 |
pechersky author:pechersky |
feat(GroupTheory/Finite): torsion free and FG WithOne M is when M is |
Couldn't find a better place for 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/)
- [ ] depends on #40690 |
t-group-theory |
62/3 |
Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Nat/Hom.lean,Mathlib/Algebra/Group/WithOne/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Finite.lean |
4 |
2 |
['github-actions'] |
tb65536 assignee:tb65536 |
6-33241 6 days ago |
50-55367 50 days ago |
50-59933 50 days |
| 40910 |
riccardobrasca author:riccardobrasca |
feat: add comap_map_eq_of_unramified and related declarations |
From flt-regular.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
170/0 |
Mathlib/RingTheory/DedekindDomain/Different.lean |
1 |
1 |
['github-actions'] |
joneugster assignee:joneugster |
6-33240 6 days ago |
18-8209 18 days ago |
71-45310 71 days |
| 40916 |
LLaurance author:LLaurance |
feat(Probability): variance of a binomial random variable |
- [x] depends on: #40613
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
71/6 |
Mathlib/Probability/Distributions/Binomial.lean,Wanted/Probability/Distributions/Binomial.lean |
2 |
6 |
['EtienneC30', 'LLaurance', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
EtienneC30 assignee:EtienneC30 |
6-33239 6 days ago |
7-64760 7 days ago |
7-66096 7 days |
| 41051 |
tb65536 author:tb65536 |
feat(FieldTheory/PolynomialGaloisGroup): add equivariant bijection between root sets |
Currently the bijection `rootsEquivRoots` between root sets of a polynomial that splits is not equivariant with respect to the action of the Galois group. This PR demotes the existing `rootsEquivRoots` to an auxilliary def `rootsEquivRootsAux` and adds an equivariant `rootsEquivRoots` in its place.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
32/18 |
Mathlib/FieldTheory/PolynomialGaloisGroup.lean |
1 |
3 |
['github-actions', 'mathlib-merge-conflicts', 'tb65536'] |
joneugster assignee:joneugster |
6-33237 6 days ago |
25-84322 25 days ago |
68-10114 68 days |
| 41081 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add Subrepresentation.toRepresentation_apply and Subrepresentation.quotient |
Add a lemma for `Subrepresentation` recording the inherited group action. Help avoid unfolding `Subrepresentation.toRepresentation` when analyzing the action.
Add the `quotient` representation associated to a `Subrepresentation`. It wraps up `Representation.quotient` and `Representation.Subrepresentation` and then we also record the inherited group action.
|
t-algebra
new-contributor
label:t-algebra$ |
26/0 |
Mathlib/RepresentationTheory/Subrepresentation.lean |
1 |
17 |
['JX-Mo', 'Whysoserioushah', 'github-actions'] |
joelriou assignee:joelriou |
6-33234 6 days ago |
52-12071 52 days ago |
67-67920 67 days |
| 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 |
1 |
['github-actions'] |
mattrobball assignee:mattrobball |
6-33233 6 days ago |
61-65063 61 days ago |
61-65218 61 days |
| 41339 |
mkaratarakis author:mkaratarakis |
feat(ComputablePolynomial): define SparsePoly, a computable univariate polynomial |
`SparsePoly R` is a computable, kernel-reducible representation of univariate polynomials over a commutative ring `R` with `DecidableEq R`: a list of `(exponent, coefficient)` pairs with strictly decreasing exponents and nonzero coefficients, making the representation canonical. This first part defines the structure, the semantics `toPoly : SparsePoly R → Polynomial R`, and addition.
Started by Mario Carneiro at the Hausdorff Institute (June 2024) with design notes and an original Lean prototype by James Davenport (https://github.com/JamesHDavenport/Dagstuhl23401, `verify-irred/VerifyIrred`) and the proofs were done with the help of Claude code.
|
t-meta |
201/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ComputablePolynomial/Basic.lean |
3 |
2 |
['github-actions'] |
kim-em assignee:kim-em |
6-33232 6 days ago |
60-8913 60 days ago |
60-9328 60 days |
| 42040 |
fqlx author:fqlx |
feat(NumberTheory): formalize Størmer's theorem on consecutive smooth numbers |
This PR formalizes the Størmer theorem on consecutive smooth numbers.
The new `Mathlib.NumberTheory.Stormer` module:
- develops the Pell/Lucas coefficient needed to study powers of Pell solutions;
- proves that a positive Pell solution whose `y`-coordinate has no prime factors outside the Pell parameter is fundamental;
- encodes consecutive `s`-factored numbers by three-valued prime-exponent data; and
- proves that the set of consecutive `s`-factored pairs is finite, establishes the refined global bound `3 ^ s.card - 2 ^ s.card`, and retains a stronger reusable bound for arbitrary finite subcollections.
The main public conclusions are:
- `card_consecutive_factoredNumbers_le_sub`: the reusable finite-set injection bound;
- `finite_consecutiveFactoredNumbers`: the traditional qualitative Størmer theorem; and
- `ncard_consecutiveFactoredNumbers_le_sub`: the strongest clean public conclusion for the complete set.
The implementation reuses the existing Pell and smooth-number APIs, keeps the core prime-index argument explicit, and includes the corresponding bibliography entry and umbrella import.
--------
AI tools, including OpenAI Codex and ChatGPT, were used extensively in preparing this contribution. They generated and revised substantial portions of the Lean implementation, assisted with proof decomposition and mathlib API discovery, helped iterate on compiler errors and refactoring, and helped draft the PR text.
I selected the theorem and scope, directed the iterations, reviewed the theorem statements and overall proof structure, and ran the listed Lean validation commands. I did not independently author or manually verify every low-level Lean proof step. On the linked self-assessment scale, I would classify this contribution as approximately Level 6: bots coded, human understands mostly.
|
t-number-theory
new-contributor
LLM-generated
|
861/0 |
Mathlib.lean,Mathlib/NumberTheory/Stormer.lean,docs/references.bib |
3 |
6 |
['fqlx', 'github-actions', 'grunweg'] |
alreadydone assignee:alreadydone |
6-33230 6 days ago |
37-4952 37 days ago |
37-50265 37 days |
| 42968 |
j-loreaux author:j-loreaux |
feat(Analysis/Calculus): derivatives of parametric circle integrals |
This PR adds theorems computing the derivative of parametric circle integrals. These are analogues of the same theorems for interval integrals, and they are proven by reducing to those.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
167/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/ParametricCircleIntegral.lean,Mathlib/Analysis/SpecialFunctions/Complex/CircleMap.lean |
3 |
5 |
['github-actions', 'j-loreaux', 'kebekus'] |
ADedecker assignee:ADedecker |
6-33227 6 days ago |
13-27084 13 days ago |
13-26964 13 days |
| 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 |
41/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 |
17 |
['SnirBroshi', 'YaelDillies', 'b-mehta', 'bryangingechen', 'eric-wieser', 'github-actions', 'jcommelin', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
6-32334 6 days ago |
6-33768 6 days ago |
148-35804 148 days |
| 43065 |
yuanyi-350 author:yuanyi-350 |
feat(LinearAlgebra/Matrix): add Sylvester's rank inequality |
|
t-algebra
large-import
label:t-algebra$ |
27/5 |
Mathlib/LinearAlgebra/FiniteDimensional/Lemmas.lean,Mathlib/LinearAlgebra/Matrix/Rank.lean |
2 |
2 |
['github-actions', 'tb65536'] |
nobody |
6-30538 6 days ago |
9-70843 9 days ago |
9-70723 9 days |
| 36769 |
jjdishere author:jjdishere |
feat(Valued/ValuationTopology): creating instances of `IsValuativeTopology` on completion |
### Main description
In this PR, we extend `ValuativeRel` to the completion of a topological field `K` and show the extension is compatible with the topology if the original relation is compatible with the topology on `K`.
### Entry point for reviewing
In file `Mathlib/Topology/Algebra/ValuativeRel/Completion.lean`, we define `Valuation.extension` (resp. `UniformSpace.Completion.valuativeRel`) that extends a valuation (resp. a valuative relation) on a field `K` to `Completion K`.
Co-authored-by: Edison Xie <yx3021@ic.ac.uk>
Co-authored-by: Filippo A. E. Nuccio <filippo.nuccio@univ-st-etienne.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/)
- [x] depends on: #36532
- [x] depends on : #36777
- [x] depends on : #36911 |
t-topology
t-algebra
t-ring-theory
label:t-algebra$ |
553/60 |
Mathlib.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/UniformFaithfulSMul.lean,Mathlib/Topology/Algebra/UniformField.lean,Mathlib/Topology/Algebra/ValuativeRel/Completion.lean,Mathlib/Topology/Algebra/ValuativeRel/ValuativeTopology.lean,Mathlib/Topology/Algebra/Valued/ValuedField.lean |
8 |
67 |
['Whysoserioushah', 'copilot-pull-request-reviewer', 'faenuccio', 'github-actions', 'jjdishere', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'pechersky', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
6-29791 6 days ago |
6-29791 6 days ago |
8-58263 8 days |
| 43154 |
SnirBroshi author:SnirBroshi |
chore(Order/Bounded): deprecate all the theorems in this deprecated module |
This was deprecated in #38146, but downstream `import Mathlib` users don't see the warning.
---
This doesn't warn the user, but `Set.bounded_lt_Iio` will be gone soon:
```lean
import Mathlib
theorem foo : Set.Bounded (· < ·) (Set.Iio 0) :=
Set.bounded_lt_Iio 0
```
The warning does appear if we minimize the imports.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
79/0 |
Mathlib/Order/Bounded.lean |
1 |
1 |
['github-actions'] |
nobody |
6-21799 6 days ago |
6-22435 6 days ago |
6-22315 6 days |
| 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 |
1 |
['github-actions'] |
nobody |
6-20065 6 days ago |
6-23369 6 days ago |
6-23249 6 days |
| 43150 |
SnirBroshi author:SnirBroshi |
chore(Data/ENat): move `ENat.toNat` theorems to `Basic.lean` |
This let's us use them with less imports.
---
The proof changes are two `natCast_inj` in `simp` calls (since `Nat.cast_inj` isn't imported), and one `natCast_le_natCast.mp` in a `simpa using` (since `Nat.cast_le` isn't imported).
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
31/31 |
Mathlib/Data/ENat/Basic.lean,Mathlib/Data/ENat/Monoid.lean |
2 |
1 |
['github-actions'] |
nobody |
6-18927 6 days ago |
6-30013 6 days ago |
6-29893 6 days |
| 41578 |
kim-em author:kim-em |
chore: weaken hypotheses of Algebra.IsUnramifiedIn.ramificationIdx_eq_one |
This PR drops the unused `[IsDomain R] [Module.Finite ℤ R] [CharZero R] [Algebra.IsIntegral R S]` hypotheses from `Algebra.IsUnramifiedIn.ramificationIdx_eq_one` by proving via `Ideal.ramificationIdx_eq_one` directly rather than through `Ideal.ramificationIdx_eq_one_iff`, and tidy the docstrings in `Mathlib/RingTheory/Unramified/Locus.lean` (fix a stray space before a period, mention `Algebra.IsUnramifiedIn` in the module docstring, add a missing blank line).
Follow-up to [#40886 (feat: add Algebra.IsUnramifiedIn)](https://github.com/leanprover-community/mathlib4/pull/40886).
🤖 Prepared with Claude Code
|
LLM-generated |
9/7 |
Mathlib/NumberTheory/RamificationInertia/Unramified.lean,Mathlib/RingTheory/Unramified/Locus.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
6-16110 6 days ago |
6-17529 6 days ago |
34-85149 34 days |
| 40930 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory): definition of Koszul cocomplex |
Definition of Koszul cocomplex.
This PR have some proofs generated by LLM.
Co-authored-by: Wang Jingting <wangjt2020@163.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]
-->
- [ ] depends on: #40926
- [ ] depends on: #40927
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
190/0 |
Mathlib.lean,Mathlib/RingTheory/KoszulComplex/Cocomplex.lean |
2 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
6-15489 6 days ago |
6-16310 6 days ago |
6-17603 6 days |
| 40929 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory): definition of Koszul complex |
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]
-->
- [ ] depends on: #40926
- [ ] depends on: #40927
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
174/0 |
Mathlib.lean,Mathlib/RingTheory/KoszulComplex/Complex.lean |
2 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
6-15043 6 days ago |
6-15856 6 days ago |
6-16554 6 days |
| 41808 |
JX-Mo author:JX-Mo |
refactor(RepresentationTheory): add API lemmas in Representation.induced for making IndV.mk a def |
The current `IndV.mk` is an abbrev and `ind` has an @[simp] lemma `ind_apply`, so `simp` would expose the implementation and unfold the simple representation theoretic expressions into nasty linear algebra compounds consisting of MonoidAlgebra.single/TensorProduct/Coinvariant/.lift/.mk. The purpose of this PR is to seal `IndV.mk` and the old `ind_apply` off so that we can use simpler API lemmas and say goodbye to 20+ lines goals in the InfoView.
We address the issue by making `IndV.mk` a def and adding a new core def`IndV.lift`:
1) Making `IndV.mk` a def will allow the desired API lemmas `IndV.mk_map_mul` `IndV.mk_map_inv_mul` `IndV.mk_map_mem_eq` `IndV.mk_map_inv_eq` to have the desired @[simp] behaviour (previously simp would unfold `IndV.mk`, so @[simp] would not invoke these lemmas). We also add a useful `IndV.induction_on` lemma for reducing Prop to elementary generators and addition.
2) `IndV.lift`, which is a def, gives a way to construct a linear map from a family of linear maps on elementary generators. It unifies the previous constructions in `ind` `indMap` `indResHomEquiv` and `coinvariantsTensorInd`. Moreover, it turns out a single @[simp] lemma `IndV.lift_apply_IndVMk` is good enough to replace a whole system of linear algebra simp lemmas, while previously we had the annoying @[simps] above `ind` unfolding several linear algebra layers at once which brings big trouble if simp does not close the goal.
3) The new `ind` is an easy def building upon `IndV.lift` and the old confusing `ind_apply` is replaced by a clean simp computation lemma `ind_apply_mk`. Moreover, `indMap` becomes an abbrev.
As an immediate payoff, the definitions and proofs around `ind`, `indResHomEquiv` and `coinvariantTensorInd` become cleaner and the whole file complies 20% faster (6.6s to 5.4s on my computer as well as radar), despite the refactored code being longer. |
t-algebra
new-contributor
label:t-algebra$ |
101/58 |
Mathlib/RepresentationTheory/FiniteIndex.lean,Mathlib/RepresentationTheory/Induced.lean |
2 |
5 |
['JX-Mo', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
6-13427 6 days ago |
21-80364 21 days ago |
47-69203 47 days |
| 43159 |
yuanyi-350 author:yuanyi-350 |
feat(Analysis/Normed/Algebra): prove determinant of matrix exponential |
- [ ] depends on #43163 |
large-import |
95/4 |
Mathlib/Analysis/Normed/Algebra/MatrixExponential.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean |
2 |
1 |
['github-actions'] |
nobody |
6-9042 6 days ago |
6-9791 6 days ago |
6-15247 6 days |
| 43129 |
EtienneC30 author:EtienneC30 |
feat: define indistinguishability relation |
Introduce a predicate `Indistinguishable P X Y`, denoted `X ≡ᵐ[P] Y`, which states that `∀ᵐ ω ∂P, ∀ t, X t ω = Y t ω`. This proved quite nice to work with in the Brownian motion project, especially because it allows to use the `gcongr` tactic extensively.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
|
brownian
t-measure-probability
|
118/0 |
Mathlib.lean,Mathlib/Probability/Process/Indistinguishable.lean |
2 |
1 |
['github-actions'] |
nobody |
6-107 6 days ago |
6-85283 6 days ago |
6-85163 6 days |
| 42353 |
sankalpsthakur author:sankalpsthakur |
feat(RingTheory): add nilpotence lemmas for zero sums |
In a commutative 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.
Closes #10539
### 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 |
27 |
['github-actions', 'sankalpsthakur', 'tb65536'] |
nobody |
5-81183 5 days ago |
7-10329 7 days ago |
13-17997 13 days |
| 42859 |
Scarlett-le author:Scarlett-le |
feat(Geometry/Euclidean/Sphere): line or orthogonal radius through two points |
feat(Geometry/Euclidean/Sphere): line or orthogonal radius through two points
Define `Sphere.lineOrOrthRadius`, the affine subspace through two points,
or the orthogonal radius (tangent) at that point when they coincide.
Provide the basic API: membership of both endpoints, commutativity, and a
characterization of its intersection with the sphere as exactly the two
endpoints.
Split off from #34164. |
t-euclidean-geometry |
65/0 |
Mathlib/Geometry/Euclidean/Sphere/OrthRadius.lean |
1 |
3 |
['github-actions', 'jsm28'] |
jsm28 assignee:jsm28 |
5-80251 5 days ago |
16-10943 16 days ago |
16-10823 16 days |
| 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
|
151/0 |
Mathlib.lean,Mathlib/Analysis/ODE/Peano.lean |
2 |
2 |
['github-actions'] |
nobody |
5-78791 5 days ago |
20-74945 20 days ago |
36-69044 36 days |
| 43104 |
elazarg author:elazarg |
feat(InformationTheory/KullbackLeibler): finite Kullback-Leibler divergence |
Define `klDivFin p q = ∑ i, p i * log (p i / q i)` for `p q : ι → ℝ` on a `Fintype`, and prove Gibbs' inequality for it. The weights are not assumed to be normalized: `(∑ i, p i) - (∑ i, q i) ≤ klDivFin p q` needs only nonnegativity and absolute continuity, and `0 ≤ klDivFin p q` follows whenever `∑ i, q i ≤ ∑ i, p i`.
Two supporting lemmas added to `Analysis/SpecialFunctions/Log/NegMulLog`: `Real.mul_log_div` and `Real.sub_le_mul_log_div`, a quotient form of `Real.self_sub_one_le_mul_log`.
---
Continuing #42584, another part of https://github.com/elazarg/kraft
`klDivFin` is a `Finset.sum` definition, not a specialization of `klDiv`. `klDiv` is `ℝ≥0∞`-valued and defined through `llr` and `Measure.rnDeriv`, and Mathlib currently has no formula for `Measure.rnDeriv` on a discrete space.
Even with that lemma in place, `klDivFin` is `ℝ`-valued, so it composes directly with `Finset` arithmetic in downstream code; and it requires no normalization - Gibbs' inequality here holds under `∑ i, q i ≤ ∑ i, p i`, so no probability measures are needed.
Happy to split the two `NegMulLog` lemmas into a separate PR if needed.
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
new-contributor
LLM-generated
|
104/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Log/NegMulLog.lean,Mathlib/InformationTheory/KullbackLeibler/Finite.lean |
3 |
6 |
['EtienneC30', 'elazarg', 'github-actions', 'vlad902'] |
EtienneC30 assignee:EtienneC30 |
5-75822 5 days ago |
7-78903 7 days ago |
7-79180 7 days |
| 37666 |
TJHeeringa author:TJHeeringa |
feat(Analysis/InnerProductSpace/Reproducing): Lipschitz wrt the kernel pseudometric |
RKHSs $H$ have bounded point evaluations. This induces a pseudometric on the underlying space `X`. The function $f\in H$ are Lipschitz continuous with Lipschitz constant $\||f\||$. This adds the theorem `lipschitzWith_ennnorm` encoding this.
---
This PR uses the name `lipschitzWith`, but doesn't actually proof a statment like `LipschitzWith ‖f‖₊ f` where Lipschitzianity is defined with respect to a pseudometric. We could create an instance for the pseudometric. That would give the code below. However, there the `(ofKMD 𝕜 V H)` in the `LipschitzWith ‖f‖₊ (f ∘ (ofKMD 𝕜 V H))` is undesirable. If we pursue the route with this pseudometric instance, then I would need some help, because I don't know how to get around it.
```lean4
section Lipschitz
variable (𝕜 X V) in
/-- Type copy of domain `X` meant for being equipped with the kernel metric, abbreviated `KMD`. -/
@[nolint unusedArguments]
def KernelMetricDomain [RKHS 𝕜 H X V] : Type _ := X
variable (𝕜 V) in
/-- `toKMD` is the identity function to the `KernelMetricDomain 𝕜 X V H` of a `X`. -/
def toKMD : X ≃ KernelMetricDomain 𝕜 X V H := Equiv.refl _
variable (𝕜 V) in
/-- `ofKMD` is the identity function from the `KernelMetricDomain 𝕜 X V H` to `X`. -/
def ofKMD : KernelMetricDomain 𝕜 X V H ≃ X := Equiv.refl _
omit [CompleteSpace H] [CompleteSpace V] in
@[simp] theorem toKMD_symm_eq : (toKMD 𝕜 V H).symm = ofKMD 𝕜 V H := by rfl
omit [CompleteSpace H] [CompleteSpace V] in
@[simp] theorem ofKMD_symm_eq : (ofKMD 𝕜 V H).symm = toKMD 𝕜 V H := by rfl
omit [CompleteSpace H] [CompleteSpace V] in
@[simp] theorem ofKMD_toKMD (x : X) : ofKMD 𝕜 V H (toKMD 𝕜 V H x) = x := by rfl
omit [CompleteSpace H] [CompleteSpace V] in
@[simp]
theorem toKMD_ofKMD (x : KernelMetricDomain 𝕜 X V H) :
toKMD 𝕜 V H (ofKMD 𝕜 V H x) = x := by
rfl
variable (𝕜 X V) in
instance instKMDPseudoEMetricSpace [RKHS 𝕜 H X V] :
PseudoEMetricSpace (KernelMetricDomain 𝕜 X V H) :=
PseudoEMetricSpace.induced ((kerFun H) ∘ ofKMD 𝕜 V H) inferInstance
@[simp]
lemma edist_KMD (x y : KernelMetricDomain 𝕜 X V H) :
edist x y = edist (kerFun H (ofKMD 𝕜 V H x)) (kerFun H (ofKMD 𝕜 V H y)) :=
rfl
variable {H} in
theorem lipschitzWith_ennnorm' (f : H) (x y : X) :
edist (f x) (f y) ≤ ‖f‖₊ * edist (kerFun H x) (kerFun H y) := by
by_cases h : f = 0
· simp [h]
simp_rw [edist_eq_enorm_sub, ← eval_apply, ← sub_apply]
grw [le_opENorm]
rw [← enorm_eq_nnnorm, mul_comm, ENNReal.mul_le_mul_iff_right (enorm_ne_zero.mpr h) enorm_ne_top]
simp_rw [kerFun_eq_adjoint_eval, ← LinearIsometryEquiv.map_sub, enorm_le_iff_norm_le,
LinearIsometryEquiv.norm_map, le_refl]
variable {H} in
theorem lipschitzWith_ennnorm (f : H) :
LipschitzWith ‖f‖₊ (f ∘ (ofKMD 𝕜 V H)) :=
fun x y => by simpa [edist_KMD] using lipschitzWith_ennnorm' f (ofKMD 𝕜 V H x) (ofKMD 𝕜 V H y)
end Lipschitz
```
#### AI:
I had the instance outside the theorem. Lean gave problems with resolving type classes / instance synthesis. I asked Claude and ChatGPT to interpret the error and fix it. The latter just spit gibberish and the former suggested inlining but in a way that didn't work. Then, I asked on Zulip and got the same suggestion but working. The type synonym alternative was also suggested there. The final PR doesn't include the instance because of the aforementioned reasons.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
73/7 |
Mathlib/Analysis/InnerProductSpace/Reproducing.lean |
1 |
47 |
['Maldooor', 'TJHeeringa', 'github-actions', 'j-loreaux', 'jkandel1', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'themathqueen'] |
ADedecker assignee:ADedecker |
5-72928 5 days ago |
5-72928 5 days ago |
45-19301 45 days |
| 42252 |
b-mehta author:b-mehta |
feat(RingTheory/PowerSeries): coeff of a power series times a numeral |
Adds the four coeff simp lemmas for a power series multiplied by a numeral (natCast or ofNat, on either side), matching what already exists for polynomials in Mathlib/Algebra/Polynomial/Coeff.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/)
|
easy
t-ring-theory
|
12/0 |
Mathlib/RingTheory/PowerSeries/Basic.lean |
1 |
6 |
['bocowgill', 'github-actions', 'mathlib-bors', 'ocfnash'] |
nobody |
5-64305 5 days ago |
5-64305 5 days ago |
20-64561 20 days |
| 42708 |
xroblot author:xroblot |
feat(Algebra/QuadraticAlgebra): classify quadratic algebras by their discriminant |
Classify `QuadraticAlgebra R a b` up to `R`-algebra isomorphism by the discriminant: when `2` is invertible they are isomorphic iff the discriminants agree up to a square unit, and over `ℤ` the discriminant is a complete invariant. Also adds the standard-form isomorphism `QuadraticAlgebra R a b ≃ₐ[R] QuadraticAlgebra R (discr a b) 0` when `2`
is invertible.
Prepared with Claude Code 🤖
---
- [x] depends on: #42206
- [x] depends on: #42751
- [x] depends on: #42951
- [x] depends on: #42975
[](https://gitpod.io/from-referrer/)
|
t-algebra
large-import
label:t-algebra$ |
113/8 |
Mathlib/Algebra/QuadraticAlgebra/Discriminant.lean |
1 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
5-59486 5 days ago |
7-85341 7 days ago |
9-677 9 days |
| 40597 |
xroblot author:xroblot |
feat(GroupTheory/SpecificGroups/Cyclic): comparison of subgroups of a cyclic group |
Add the following results about subgroup comparison in cyclic groups.
- `IsCyclic.subgroup_le_iff_index_dvd`: in a cyclic group, `H ≤ K ↔ K.index ∣ H.index`
- `IsCyclic.subgroup_le_iff_card_dvd`: if `K` is finite, `H ≤ K ↔ Nat.card H ∣ Nat.card K`
- `IsCyclic.subgroup_eq_iff_card_eq`: if `H` and `K` are finite, `H = K ↔ Nat.card H = Nat.card K`
- `IsCyclic.infinite_of_ne_bot`: a nontrivial subgroup of an infinite cyclic group is infinite
Also add:
- `Subgroup.exists_zpowers_eq_of_zpowers_eq_top`: if `g` generates the group, every subgroup is of the form `zpowers (g ^ i)`
- `Subgroup.index_eq_card_div`: for `H` finite, `H.index = Nat.card G / Nat.card H`
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude.
---
- [x] depends on: #42754
|
t-group-theory |
75/0 |
Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean |
3 |
35 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'tb65536', 'xroblot'] |
tb65536 assignee:tb65536 |
5-58730 5 days ago |
5-61509 5 days ago |
58-10071 58 days |
| 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 |
2 |
['NoahW314', 'github-actions'] |
nobody |
5-57795 5 days ago |
6-17293 6 days ago |
6-17714 6 days |
| 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. |
new-contributor
t-algebra
label:t-algebra$ |
79/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Hecke/Basic.lean |
2 |
8 |
['JX-Mo', 'Whysoserioushah', 'github-actions'] |
nobody |
5-47391 5 days ago |
8-72201 8 days ago |
8-72183 8 days |
| 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 |
2 |
['github-actions'] |
nobody |
5-38040 5 days ago |
13-30349 13 days ago |
13-44068 13 days |
| 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
large-import
|
42/7 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean |
2 |
1 |
['github-actions'] |
nobody |
5-37003 5 days ago |
52-60034 52 days ago |
52-59914 52 days |
| 41524 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Trails): in a preconnected Eulerian graph there exists an Eulerian circuit from any vertex |
This lets us take a circuit at a specific vertex, much like [`IsHamiltonian.exists_isHamiltonianCycle`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Combinatorics/SimpleGraph/Hamiltonian.html#SimpleGraph.IsHamiltonian.exists_isHamiltonianCycle) in Hamiltonian graphs.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
22/1 |
Mathlib/Combinatorics/SimpleGraph/Trails.lean |
1 |
4 |
['SnirBroshi', 'github-actions', 'vlad902'] |
nobody |
5-36464 5 days ago |
5-37044 5 days ago |
55-18324 55 days |
| 39993 |
Brian-Nugent author:Brian-Nugent |
feat(Topology/CategoryTheory): TopologicalSpace.Opens.map preserves colimits and finite limits |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #39992
- [ ] depends on: #39991
[](https://gitpod.io/from-referrer/)
|
t-topology
t-category-theory
|
24/2 |
Mathlib/Topology/Category/TopCat/Opens.lean |
1 |
5 |
['Brian-Nugent', 'dagurtomas', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
5-34126 5 days ago |
14-64440 14 days ago |
50-15014 50 days |
| 39588 |
jvanwinden author:jvanwinden |
feat(MeasureTheory/Measure/ProbabilityMeasure): add toProbabilityMeasure and basic API |
Introduces `Measure.toProbabilityMeasure`, which converts a `Measure` into a `ProbabilityMeasure` in the presence of the typeclass assumption `[IsProbabilityMeasure]`. Some basic API is added for the interaction between `toProbabilityMeasure` and the coercion from `ProbabilityMeasure` to `Measure`. The main convenience is that the new method allows for dot notation on `Measure`.
This PR arose from the following situation: I needed to prove equality of two `Measure` objects, and I wanted to do this by using uniqueness of limits. But the topology of weak convergence is only defined on `ProbabilityMeasure` and not on `Measure`. With the new lemma `toProbabilityMeasure_inj`, an equality of measures can easily be rewritten into an equality of the corresponding probability measures, after which `tendsto_nhds_unique` can be applied.
Aside from this, `toProbabilityMeasure` has the potential to simplify theorem statements about `Measure` objects which use the topology of weak convergence either in the assumptions or the conclusion. For example, now one can simply write `Tendsto μ.toProbabilityMeasure f (nhds μ_lim.toProbabilityMeasure)` when appropriate `[IsProbabilityMeasure]` assumptions are present.
This PR is intended as a starting point for a discussion. I only added some basic API, but perhaps more lemmas should be added (which ones?). Also, a similar definition could be made for `FiniteMeasure`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
20/2 |
Mathlib/MeasureTheory/Measure/ProbabilityMeasure.lean |
1 |
2 |
['EtienneC30', 'github-actions'] |
sgouezel assignee:sgouezel |
5-33243 5 days ago |
105-53323 105 days ago |
105-53203 105 days |
| 40448 |
ChiCubed author:ChiCubed |
feat(LinearAlgebra/Dimension): tower law for algebraic extensions |
We generalise the tower law for `Module.rank` to the situation of a module over an algebraic extension of domains.
---
See [the Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Tower.20law.20for.20.60Module.2Erank.60/) for some associated discussion.
I am not sure about in which file these results should live, or what their names should be. For the file I have gone with `LinearAlgebra/Dimension/Algebraic.lean` for now, because these feel more like dimension theorems than `Algebra.IsAlgebraic` theorems, and IMO do not logically fit into the other existing files in `LinearAlgebra/Dimension`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
297/30 |
Mathlib.lean,Mathlib/Algebra/Group/Action/Faithful.lean,Mathlib/LinearAlgebra/Dimension/Domain.lean,Mathlib/LinearAlgebra/Dimension/Free.lean,Mathlib/RingTheory/Algebraic/Integral.lean,Mathlib/RingTheory/Localization/FractionRing.lean |
6 |
14 |
['ChiCubed', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] |
joneugster assignee:joneugster |
5-33242 5 days ago |
28-28127 28 days ago |
79-81784 79 days |
| 41956 |
mckoen author:mckoen |
feat(CategoryTheory/Quotient): the quotient category is monoidal |
If `r : HomRel C` is a congruence on a (braided, symmetric) monoidal (resp. preadditive, linear) category `C` which satisfies certain compatibilities with left and right whiskering (resp. addition/scalar multiplication), then `Quotient r` is also (braided, symmetric) monoidal (resp. preadditive, linear).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
237/0 |
Mathlib.lean,Mathlib/CategoryTheory/Quotient/Monoidal.lean |
2 |
10 |
['dagurtomas', 'github-actions', 'joelriou', 'mckoen'] |
joelriou assignee:joelriou |
5-33238 5 days ago |
19-34946 19 days ago |
40-50758 40 days |
| 42261 |
D-Thomine author:D-Thomine |
chore(MeasureTheory): using ENNReal instead of NNReal |
This PR removes coercions in some files in `MeasureTheory` (i.e. working directly with `ENNReal` instead of working with `NNReal` and coercing), focusing on `MeasureTheory.Covering.Differentiation`. The resulting files are a bit shorter and a more legible.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
166/205 |
Mathlib/MeasureTheory/Constructions/BorelSpace/Order.lean,Mathlib/MeasureTheory/Covering/Differentiation.lean,Mathlib/MeasureTheory/Function/AEMeasurableOrder.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Finite.lean |
4 |
5 |
['D-Thomine', 'github-actions', 'grunweg', 'leanprover-radar'] |
RemyDegenne assignee:RemyDegenne |
5-33237 5 days ago |
33-63981 33 days ago |
33-63861 33 days |
| 42909 |
EtienneC30 author:EtienneC30 |
refactor(Probability/Distributions/Uniform): change uniformOfFinset and ofMultiset from PMF to Measure |
Turn [PMF.uniformOfFinset](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Probability/Distributions/Uniform.html#PMF.uniformOfFinset) and [PMF.ofMultiset](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Probability/Distributions/Uniform.html#PMF.ofMultiset) into measures.
This is part of #42821 which deprecates `PMF`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
85/115 |
Mathlib/Probability/Distributions/Uniform.lean |
1 |
1 |
['github-actions'] |
urkud assignee:urkud |
5-33236 5 days ago |
14-69183 14 days ago |
14-69063 14 days |
| 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'] |
sgouezel assignee:sgouezel |
5-33235 5 days ago |
12-67953 12 days ago |
12-67833 12 days |
| 39870 |
YaelDillies author:YaelDillies |
feat(Data): interleaving lists |
Define interleaving of lists as a relation.
This will be used to define interleaving polynomials, which in turn are a central concept in the line of work that earned June Huh his 2022 Fields medal.
From RealRooted
---
Interleaving of lists as an operation was merged in https://github.com/leanprover-community/batteries/pull/1853.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
137/0 |
Mathlib.lean,Mathlib/Data/List/Interleave.lean |
2 |
21 |
['YaelDillies', 'chenson2018', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'ocfnash'] |
nobody |
5-32339 5 days ago |
60-68524 60 days ago |
98-36961 98 days |
| 43152 |
SnirBroshi author:SnirBroshi |
chore(Data/Fin/SuccPred): avoid importing the order hierarchy |
`Mathlib.Data.Fin.SuccPred` imports `Mathlib.Logic.Equiv.Set` mostly for two simp lemmas that use `Equiv.ofInjective`, which brings with it nontrivial order definitions such as `BooleanAlgebra`.
These were introduced in leanprover-community/mathlib3#6815 but seemingly never used and spelled strangely, so we deprecate 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-data |
70/48 |
Mathlib.lean,Mathlib/Algebra/Group/Fin/Basic.lean,Mathlib/Data/Fin/Embedding.lean,Mathlib/Data/Fin/EquivOfInjective.lean,Mathlib/Data/Fin/Rev.lean,Mathlib/Data/Fin/SuccPred.lean,Mathlib/Data/Fin/Tuple/Basic.lean,Mathlib/Data/Fin/Tuple/Embedding.lean,Mathlib/Data/Fin/VecNotation.lean,Mathlib/Data/Num/Bitwise.lean,Mathlib/Data/Vector/Basic.lean,Mathlib/Order/Fin/Basic.lean,Mathlib/Order/Interval/Set/Fin.lean |
13 |
1 |
['github-actions'] |
nobody |
5-25792 5 days ago |
5-28677 5 days ago |
6-12490 6 days |
| 37456 |
Robertboy18 author:Robertboy18 |
feat(LinearAlgebra/AffineSpace): add parallel form of Desargues's theorem |
This PR adds an affine parallel form of the Desargues theorem, following the related Rocq/Coq affine-geometry statement.
**Main changes**
- New file `Mathlib/LinearAlgebra/AffineSpace/Desargues.lean` with `parallel_third_side_of_perspective`.
- Add the corresponding `public import` to `Mathlib.lean`.
**Proof idea**
The proof compares side vectors using `exists_eq_smul_of_parallel` for the two given pairs of parallel sides. The shared comparison along `SA` forces the same scalar, which gives parallelism of the third pair of sides.
Tests: `lake build Mathlib.LinearAlgebra.AffineSpace.Desargues`
AI disclosure: GPT-5.2 Pro was used for assistance with web search/background details about the theorem and for finding useful existing Mathlib lemmas. The theorem statement and Lean formalization were written and checked by hand.
---
[](https://gitpod.io/from-referrer/) |
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
133/0 |
Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/Desargues.lean |
2 |
21 |
['Robertboy18', 'SnirBroshi', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] |
eric-wieser assignee:eric-wieser |
5-24752 5 days ago |
14-40538 14 days ago |
23-26331 23 days |
| 40901 |
vihdzp author:vihdzp |
feat: zero-dimensional spaces |
We introduce an abbreviation `ZeroDimensionalSpace X = HasSmallInductiveDimensionLT 1`. We prove, in various forms, the characterization of these spaces as those that have a basis of clopen sets. We then use this to restate or generalize various results throughout the library, which were formerly writing down the `IsTopologicalBasis {X | IsClopen X}` condition in full.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #40897
- [x] depends on: #42271
Moved from #37444.
This diff is somewhat large, but a large portion of it is trival typeclass generalization in theorems from the `Profinite` file, and moving them elsewhere,
[](https://gitpod.io/from-referrer/)
|
t-topology
large-import
tech debt
|
353/292 |
Mathlib/Topology/Algebra/ClopenNhdofOne.lean,Mathlib/Topology/Category/Profinite/Basic.lean,Mathlib/Topology/ClopenBox.lean,Mathlib/Topology/Connected/TotallyDisconnected.lean,Mathlib/Topology/Metrizable/Basic.lean,Mathlib/Topology/Separation/CompletelyRegular.lean,Mathlib/Topology/Separation/DisjointCover.lean,Mathlib/Topology/Separation/Lemmas.lean,Mathlib/Topology/Separation/Profinite.lean,Mathlib/Topology/Separation/Regular.lean,Mathlib/Topology/SmallInductiveDimension.lean |
11 |
23 |
['felixpernegger', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'plp127', 'vihdzp'] |
nobody |
5-19994 5 days ago |
5-22623 5 days ago |
14-82598 14 days |
| 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).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
111/20 |
Mathlib/Algebra/Polynomial/Reverse.lean,Mathlib/RingTheory/Henselian.lean |
2 |
2 |
['github-actions'] |
nobody |
5-9660 5 days ago |
9-7232 9 days ago |
9-7112 9 days |
| 42679 |
Raph-DG author:Raph-DG |
feat(Topology): induction principals for locally finsupp functions |
In this PR, we write some API connecting finsupp and locallyfinsupp functions, and provide some induction principals which are useful when thinking of locally finsupp functions as divisors.
AI disclosure: this started as a drafty version written by me but I have used AI to edit it quite heavily, enough that I think this deserves the LLM-generated label (of course, I have reviewed the code carefully, but still this is worth keeping in mind).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
large-import
|
433/22 |
Mathlib.lean,Mathlib/Algebra/Group/Subgroup/Finsupp.lean,Mathlib/Data/Finsupp/Ext.lean,Mathlib/Topology/LocallyFinsupp.lean,Mathlib/Topology/LocallyFinsupp/Finsupp.lean |
5 |
2 |
['github-actions', 'mathlib-bors'] |
nobody |
5-94 5 days ago |
20-79296 20 days ago |
20-79376 20 days |
| 34031 |
lua-vr author:lua-vr |
feat(Dynamics/BirkhoffSum): add the maximal ergodic theorem |
We prove the maximal ergodic theorem for a measure-preserving map `f` and an integrable function `g`. This is used in the proof of the pointwise ergodic theorem.
---
- [ ] depends on: #42447
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
large-import
|
340/2 |
Mathlib.lean,Mathlib/Dynamics/BirkhoffSum/Average.lean,Mathlib/Dynamics/BirkhoffSum/Basic.lean,Mathlib/Dynamics/BirkhoffSum/Integrable.lean,Mathlib/Dynamics/BirkhoffSum/Maximal.lean,Mathlib/MeasureTheory/Function/L1Space/Integrable.lean |
6 |
36 |
['github-actions', 'lua-vr', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mcdoll'] |
mcdoll assignee:mcdoll |
4-84656 4 days ago |
4-85570 4 days ago |
77-40168 77 days |
| 43162 |
vasnesterov author:vasnesterov |
chore(Tactic/Simproc/ExistsAndEq): simplify proof building using `subst` |
Reuse the `subst` tactic for proof building in `existsAndEq` simproc.
The proofs the simproc build can be done as follows, by some shuffling and `subst`:
```lean4
example (f : β → α) {P : α → Prop} :
(∃ a, P a ∧ ∃ b, a = f b) ↔ ∃ b, P (f b) ∧ f b = f b := by
constructor
· intro ⟨a, hP, b, h_eq⟩
subst h_eq
exact ⟨b, hP, rfl⟩
· intro ⟨b, hP, _⟩
exact ⟨f b, hP, b, rfl⟩
```
This simplifies the proof building procedure and generalizes to the dependent quantifiers case (#43059).
Other minor changes:
1. Replace `assertUnreachable` with `panic!` as we use it in situations in which assumed invariants are broken and should not happen.
2. Don't omit existential quantifiers in `GoTo` and `Path`. Now the `path` object contains enough information to build the whole proof.
3. Wrap the simproc in `withAbstractMVars` to deal with external metavariables. This is needed to isolate our `subst` call from 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-meta |
261/302 |
Mathlib/Tactic/Simproc/ExistsAndEq.lean,MathlibTest/Simproc/ExistsAndEq.lean |
2 |
9 |
['github-actions', 'leanprover-radar', 'vasnesterov'] |
nobody |
4-81495 4 days ago |
4-84333 4 days ago |
4-84223 4 days |
| 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.
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 |
3 |
['github-actions', 'mathlib-bors'] |
nobody |
4-76124 4 days ago |
4-76995 4 days ago |
19-78619 19 days |
| 42924 |
D-Thomine author:D-Thomine |
chore(MeasureTheory): generalize hypotheses to `NullMeasurableSet` |
This PR generalizes many statements in `Mathlib.MeasureTheory` from `MeasurableSet s` to `NullMeasurableSet s μ`.
This is particularly useful for lemmas around uniform integrability. A few technical statements which existed only to work around issues of measurability are deprecated thanks to this: `MemLp.eLpNorm_indicator_le_of_meas`, `UniformIntegrable.spec'`, `MemLp.uniformIntegrable_of_identDistrib_aux`. This PR is a preliminary (and necessary) work before a much more thorough refactor of `MeasureTheory.Function.UniformIntegrable`.
I have chosen to change the hypotheses in place (generalizing the lemmas) instead of adding variants with the new hypothesis, in order to limit quasi-duplicates. There are some limits to this strategy, and a few lemmas have now both `MeasurableSet` and `NullMeasurableSet` versions:
* either if the `MeasurableSet` version was tagged as `simp`;
* or `integrable_indicator_iff₀`, `setLIntegral_congr_fun_ae₀`, `setLIntegral_congr_fun₀`, `setLIntegral_eq_zero₀`, `lintegral_add_compl₀`, `setLIntegral_compl₀`.
The latter 6 lemmas account for the largest potential downstream effects of this PR. If I did not keep the former versions of these 6 lemmas, this PR would have affected five time as many files, including files in e.g. `Geometry` or `NumberTheory`. It seems reasonable that, for quality of life purposes, we keep a few files with `MeasurableSet` hypotheses which are widely used in settings where measurability is essentially a given.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
254/238 |
Mathlib/Analysis/Normed/Lp/SmoothApprox.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/AEMeasurable.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean,Mathlib/MeasureTheory/Function/EssSup.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Indicator.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Monotonicity.lean,Mathlib/MeasureTheory/Function/LpSpace/Indicator.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/AEStronglyMeasurable.lean,Mathlib/MeasureTheory/Function/UnifTight.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Integral/PeakFunction.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/Probability/IdentDistrib.lean,Mathlib/Probability/Kernel/Condexp.lean,Mathlib/Probability/Process/Stopping.lean |
20 |
8 |
['D-Thomine', 'felixpernegger', 'github-actions', 'sgouezel'] |
sgouezel assignee:sgouezel |
4-71718 4 days ago |
4-72847 4 days ago |
13-44517 13 days |
| 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'] |
nobody |
4-71577 4 days ago |
33-10562 33 days ago |
33-10494 33 days |
| 42705 |
artie2000 author:artie2000 |
refactor(Data/SetLike): make second parameter of `*.ofSetLike` implicit |
* Make second parameter of `LE.ofSetLike` and `PartialOrder.ofSetLike` implicit.
These constructors take a `SetLike A B` typeclass, in which `B`, being an `outParam`, is determined by `A`. Therefore we do not need to pass `B` explicitly.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
85/85 |
Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Field/Subfield/Defs.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/Algebra/Group/Submonoid/Saturation.lean,Mathlib/Algebra/Group/Subsemigroup/Defs.lean,Mathlib/Algebra/Lie/Subalgebra.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/LieRinehartAlgebra/Subalgebra.lean,Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/Algebra/Order/Group/Cone.lean,Mathlib/Algebra/Order/Ring/Cone.lean,Mathlib/Algebra/Order/Ring/Ordering/Defs.lean,Mathlib/Algebra/Ring/Subring/Defs.lean,Mathlib/Algebra/Ring/Subsemiring/Defs.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Algebra/Star/Subalgebra.lean,Mathlib/Algebra/Star/Subsemiring.lean,Mathlib/Analysis/Convex/Body.lean,Mathlib/Analysis/Convex/Cone/Basic.lean,Mathlib/Analysis/VonNeumannAlgebra/Basic.lean,Mathlib/CategoryTheory/Groupoid/Subgroupoid.lean,Mathlib/Combinatorics/SimpleGraph/Ends/Defs.lean,Mathlib/Combinatorics/Young/YoungDiagram.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Set/PowersetCard.lean,Mathlib/Data/SetLike/Basic.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/Geometry/Convex/Cone/Basic.lean,Mathlib/Geometry/Convex/Cone/Face/Lattice.lean,Mathlib/GroupTheory/FiniteIndexNormalSubgroup.lean,Mathlib/GroupTheory/GroupAction/SubMulAction.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean,Mathlib/LinearAlgebra/Projectivization/Subspace.lean,Mathlib/ModelTheory/Definability.lean,Mathlib/ModelTheory/ElementarySubstructures.lean,Mathlib/ModelTheory/Substructures.lean,Mathlib/ModelTheory/Types.lean,Mathlib/Order/BooleanSubalgebra.lean,Mathlib/Order/BourbakiWitt.lean,Mathlib/Order/CompleteSublattice.lean,Mathlib/Order/Ideal.lean,Mathlib/Order/PFilter.lean,Mathlib/Order/Preorder/Chain.lean,Mathlib/Order/Sublattice.lean,Mathlib/Order/Sublocale.lean,Mathlib/Order/UpperLower/Relative.lean,Mathlib/RepresentationTheory/Subrepresentation.lean,Mathlib/RingTheory/DividedPowers/SubDPIdeal.lean,Mathlib/RingTheory/FractionalIdeal/Basic.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Subsemiring.lean,Mathlib/RingTheory/NonUnitalSubring/Defs.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Defs.lean,Mathlib/RingTheory/TwoSidedIdeal/Basic.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/Topology/Algebra/Group/ClosedSubgroup.lean,Mathlib/Topology/Algebra/Module/ClosedSubmodule.lean,Mathlib/Topology/Algebra/OpenSubgroup.lean,Mathlib/Topology/CWComplex/Classical/Basic.lean,Mathlib/Topology/Sets/Closeds.lean,Mathlib/Topology/Sets/Compacts.lean,Mathlib/Topology/Sets/Opens.lean,Mathlib/Topology/Sets/Order.lean,MathlibTest/FBinop.lean |
70 |
1 |
['github-actions'] |
nobody |
4-70623 4 days ago |
19-2931 19 days ago |
19-4914 19 days |
| 42703 |
artie2000 author:artie2000 |
refactor(Data/SetLike): make second parameter of `IsConcreteLE` implicit |
* Make second argument of `IsConcreteLE` implicit
`IsConcreteLE` takes a `SetLike A B` typeclass, in which `B`, being an `outParam`, is determined by `A`. Therefore we do not need to pass `B` explicitly.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
16/16 |
Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/AlgebraicTopology/SimplicialComplex/Basic.lean,Mathlib/Data/SetLike/Basic.lean,Mathlib/Order/Atoms.lean |
4 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
4-70620 4 days ago |
11-72526 11 days ago |
16-74806 16 days |
| 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 |
1 |
['github-actions'] |
nobody |
4-66994 4 days ago |
4-67044 4 days ago |
4-66965 4 days |
| 40826 |
felixpernegger author:felixpernegger |
feat(ci): autolabel PRs with "Generated with Claude Code" |
When one tells Claude code to open a PR, it will usually end the description with "🤖 Generated with [Claude Code](https://claude.com/claude-code)" (Im sure almost everyone will have seen this at this point).
This PR adds an action that will autolabel PRs with that ending as "LLM-generated", which might save a bit of time.
[List of all such PRs to mathlib](https://github.com/leanprover-community/mathlib4/pulls?q=is%3Apr+%F0%9F%A4%96+Generated+with+Claude+Code+)
(Ironically enough, I made this PR with 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/)
|
CI
LLM-generated
|
44/0 |
.github/workflows/label_llm_generated.yml,docs/workflows.md |
2 |
6 |
['SnirBroshi', 'felixpernegger', 'github-actions', 'joneugster'] |
nobody |
4-64345 4 days ago |
74-47789 74 days ago |
74-48014 74 days |
| 43186 |
homeowmorphism author:homeowmorphism |
chore(GroupTheory/Coxeter/Basic): use `_` for the unused induction variable in `wordProd_reverse` |
---
Use of AI: I noticed this while reading the `Coxeter` API, removed the variable and had Claude prepare 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]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-group-theory |
1/1 |
Mathlib/GroupTheory/Coxeter/Basic.lean |
1 |
2 |
['github-actions', 'homeowmorphism'] |
nobody |
4-64011 4 days ago |
4-72319 4 days ago |
4-72199 4 days |
| 39687 |
TentativeConvert author:TentativeConvert |
feat(Algebra/Group/Submonoid): type class to indicate that supremum in a SubmonoidClass agrees with supremum of submonoids |
Add a type class `SubmonoidClass.IsConcreteSSup` to indicate that the canonical map `.ofClass` from a class `S` of submonoids of `M` to `Submonoid M` preserves suprema.
---
This PR implements the minimal type class assumption needed to make „pushfoward of gradings along maps of indexing sets“ – see draft PR #39356 – work in some `SetLike` generality.
Given `{S M : Type*} [SetLike S M] [Monoid M] [SubmonoidClass S M]`, we have canonical maps
```
S → Submonoid M → Set M
```
The first is `Submonoid.ofClass`, the second and the composition are `coe` maps coming from the `SetLike` structures. Depending on `S`, these maps may or may not satisfy various properties with respect the lattice structures on `Submonoid M` and `Set M`. Mathlib so far includes the type class `[IsConcreteLE S M]`, which asserts that the composition `S → Set M` is order-preserving and order-reflecting. The type class defined here asserts that the first map, `S → Submonoid M`, preserves suprema.
In examples such as `S = Subgroup M`, `S = Submodule R M`, much more is true – in these cases, `S` is a complete sublattice of `Submonoid M`. But there are also examples where only the weaker property defined here holds, e.g. `S = OpenSubgroup M` for a topological group `M`.
Note on `outParam`: I did *not* write `(M : outParam Type*)` in the assumptions of `SubmonoidClass.IsConcreteSSup` in accordance with the [DocString of `Setlike`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/SetLike/Basic.html#SetLike). However, we do have `(B : outParam Type*)` in the definition of `IsConcreteLE`, so perhaps I'm misinterpreting the 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]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
56/0 |
Mathlib.lean,Mathlib/Algebra/Group/Submonoid/SSup.lean |
2 |
2 |
['github-actions'] |
jjdishere assignee:jjdishere |
4-33245 4 days ago |
103-803 103 days ago |
103-1283 103 days |
| 39709 |
justus-springer author:justus-springer |
feat(RingTheory/): `MvPolynomial` is standard smooth |
Add the trivial submersive presentation for `MvPolynomial` and show that `MvPolynomial` is standard smooth over its base ring. This will be used to show that affine space is smooth in #39710.
- [x] depends on: #39708
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
47/0 |
Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/Extension/Presentation/Submersive.lean,Mathlib/RingTheory/Smooth/StandardSmooth.lean |
3 |
4 |
['faenuccio', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
joneugster assignee:joneugster |
4-33244 4 days ago |
73-64279 73 days ago |
98-56614 98 days |
| 41052 |
hawkrobe author:hawkrobe |
refactor(RingTheory/HopfAlgebra): relocate `ofSurjective` |
---
I wasn't happy with the `HopfAlgebra.ofSurjective` proof in #39790. This PR attempts to refactor by extracting some of the pieces it relies on in more reusable form (e.g. bifunctoriality) and moving it out of `Quotient.lean`.
Also, `convOne` only uses the counit so i moved it up to the `[CoalgebraStruct R C]` section to match `convMul` (so `convOne_comp_coalgHom` could be the same generality as `convMul_comp_coalgHom_distrib`.)
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
|
111/65 |
Mathlib/RingTheory/Bialgebra/Convolution.lean,Mathlib/RingTheory/Coalgebra/Convolution.lean,Mathlib/RingTheory/HopfAlgebra/Convolution.lean,Mathlib/RingTheory/HopfAlgebra/Quotient.lean |
4 |
11 |
['eric-wieser', 'github-actions', 'hawkrobe'] |
jjdishere assignee:jjdishere |
4-33243 4 days ago |
8-50842 8 days ago |
67-61911 67 days |
| 41137 |
plp127 author:plp127 |
fix: include `[NPow F]` in `FunLike.monoidWithZero` |
Include a `NPow` assumption in `FunLike.monoidWithZero` and `FunLike.semiring` and `FunLike.ring` instead of using `npowRec`. See https://github.com/leanprover-community/mathlib4/pull/37779#discussion_r3399574849.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/8 |
Mathlib/Data/FunLike/Ring.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean |
2 |
1 |
['github-actions'] |
TwoFX assignee:TwoFX |
4-33242 4 days ago |
65-26512 65 days ago |
65-26473 65 days |
| 41737 |
jjdishere author:jjdishere |
feat(CategoryTheory/AB5): AB5 instance of Ab with universe variables |
When u <= v <= w, we show `AB5OfSize.{u, v} Ab.{w}`.
(Only `AB5OfSize.{u, u + 1} Ab.{u + 1}` is need in my further application.)
Co-authored-by: @chrisflav
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
13/1 |
Mathlib/Algebra/Category/Grp/AB.lean |
1 |
1 |
['github-actions'] |
ocfnash assignee:ocfnash |
4-33240 4 days ago |
49-69296 49 days ago |
49-69176 49 days |
| 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 the issue raised in #41471.
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.
I am also aware this tool was initially written with Codex.
[](https://gitpod.io/from-referrer/)
|
t-meta |
367/144 |
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 |
6 |
['github-actions', 'kbuzzard', 'leanprover-radar'] |
kim-em assignee:kim-em |
4-33239 4 days ago |
24-17276 24 days ago |
24-17156 24 days |
| 43001 |
EtienneC30 author:EtienneC30 |
feat: lemmas about MemLp |
A function is in the `Lp` space of the sum of two measures if and only if it is in each `Lp` space.
A function is in the `Lp` space of a Dirac mass.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-measure-probability
|
85/0 |
Mathlib/Analysis/MeanInequalitiesPow.lean,Mathlib/MeasureTheory/Function/EssSup.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Defs.lean,Mathlib/Order/LiminfLimsup.lean |
5 |
1 |
['github-actions'] |
urkud assignee:urkud |
4-33239 4 days ago |
12-4749 12 days ago |
12-4629 12 days |
| 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 |
136/2 |
Mathlib/Geometry/Manifold/VectorBundle/Hom.lean |
1 |
1 |
['github-actions'] |
ocfnash assignee:ocfnash |
4-33237 4 days ago |
10-79157 10 days ago |
10-79037 10 days |
| 42507 |
yuanyi-350 author:yuanyi-350 |
feat(Topology/MetricSpace): prove Caristi's fixed-point theorem |
|
t-topology |
77/2 |
Mathlib/Topology/MetricSpace/Contracting.lean |
1 |
1 |
['github-actions'] |
nobody |
4-32344 4 days ago |
26-55976 26 days ago |
26-55856 26 days |
| 43189 |
mlgraham author:mlgraham |
feat(NumberTheory/NumberField/House): house is multiplicative on powers |
`house_pow_le` gives only `house (α ^ i) ≤ house α ^ i`. The equality holds: `house` is the maximum of `‖φ α‖` over the embeddings `φ : K →+* ℂ`, and `x ↦ x ^ i` is monotone on `ℝ≥0`, so the power commutes with the maximum.
I needed the equality rather than the bound in a descent argument, where a house bound on `α ^ k` has to transfer back to `α`.
The proof follows the existing `house_nat_mul` in the same file: rewrite both sides with `house_eq_sup'`, then push the monotone map through the `Finset.sup'`.
---
AI usage, per the contribution guidelines: I used Claude Code (Claude Opus 5) to find and write this proof, and it also drafted this description. I have reviewed the proof, understand the argument, and can justify the design choices without it.
|
t-number-theory
new-contributor
|
8/2 |
Mathlib/NumberTheory/NumberField/House.lean |
1 |
6 |
['felixpernegger', 'github-actions', 'mlgraham', 'plp127'] |
loefflerd assignee:loefflerd |
4-31687 4 days ago |
4-61414 4 days ago |
4-61294 4 days |
| 42926 |
NoahW314 author:NoahW314 |
feat(Algebra/Order): add `MulLeftMono` implies `IsDedekindFinite` instance |
In the process, generalize an existing lemma that required both `MulLeftMono` and `MulRightMono` into two lemmas that only require one of `MulLeftMono` or `MulRightMono`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
47/25 |
Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Ring/IsFormallyReal.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Normed/Unbundled/SmoothingSeminorm.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/RightAngle.lean,Mathlib/LinearAlgebra/QuadraticForm/Prod.lean,Mathlib/NumberTheory/Dioph.lean,Mathlib/NumberTheory/Zsqrtd/Basic.lean,Mathlib/RingTheory/Coprime/Basic.lean,Mathlib/SetTheory/Cardinal/Divisibility.lean |
13 |
5 |
['NoahW314', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
4-16233 4 days ago |
4-20945 4 days ago |
13-85998 13 days |
| 37794 |
EtienneC30 author:EtienneC30 |
feat: a sum of independent Bernoulli random variables is a binomial 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: #37736
- [x] depends on: #37761
- [x] depends on: #40083
- [x] depends on: #41312
- [x] depends on: #42972
- [x] depends on: #42974
- [x] depends on: #43002
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
152/7 |
Mathlib/Probability/Distributions/Bernoulli.lean,Mathlib/Probability/Distributions/Binomial.lean,Mathlib/Probability/Distributions/SetBernoulli.lean |
3 |
9 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
4-4563 4 days ago |
4-62890 4 days ago |
4-62770 4 days |
| 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 |
329/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 |
28 |
['D-Thomine', 'github-actions', 'mathlib-merge-conflicts', 'mcdoll'] |
mcdoll assignee:mcdoll |
4-485 4 days ago |
4-2922 4 days ago |
48-2434 48 days |
| 25841 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): prove the Kővári–Sós–Turán theorem |
Prove the Kővári–Sós–Turán theorem (an upper bound on the Zarankiewicz function)
---
<!-- 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]
-->
- [x] depends on: #19865
- [x] depends on: #20738
- [x] depends on: #27602
- [x] depends on: #34633
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #20240.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/20240* |
t-combinatorics |
244/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/KovariSosTuran.lean,docs/1000.yaml |
3 |
13 |
['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'mitchell-horner'] |
b-mehta assignee:b-mehta |
3-82825 3 days ago |
46-22 45 days ago |
83-77327 83 days |
| 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 |
3-82737 3 days ago |
36-77711 36 days ago |
36-77591 36 days |
| 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 |
37/0 |
Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/TuranDensity.lean |
2 |
6 |
['SnirBroshi', 'b-mehta', 'github-actions', 'mitchell-horner'] |
nobody |
3-81922 3 days ago |
3-82545 3 days ago |
36-76620 36 days |
| 28686 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): prove the Erdős-Stone theorem |
Proves the Erdős-Stone theorem:
If `G` has at least `(1 - 1 / r + o(1)) * n ^ 2 / 2` many edges, then `G` contains a copy of a `completeEquipartiteGraph (r + 1) t`.
---
<!-- 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: #28685
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
large-import
|
206/1 |
Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean |
1 |
8 |
['barni120400', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'mitchell-horner'] |
nobody |
3-81443 3 days ago |
3-82034 3 days ago |
60-80279 60 days |
| 32294 |
jsm28 author:jsm28 |
feat(Geometry/Euclidean/Angle/Incenter): distance from second intersection with circumcircle |
Add the following lemma: given a triangle ABC, suppose an angle bisector from A through the incenter or excenter I meets the circumcircle again at X (including the case of an external bisector at A tangent to the circle, in which case X = A). Then XB = XI (= XC, by applying this lemma again). This is a standard configuration: https://en.wikipedia.org/wiki/Incenter%E2%80%93excenter_lemma
---
<!-- 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: #30981
- [x] depends on: #30982
- [x] depends on: #32019
- [x] depends on: #32021
- [x] depends on: #32023
- [x] depends on: #32270
- [x] depends on: #32290
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry |
187/0 |
Mathlib/Geometry/Euclidean/Angle/Incenter.lean |
1 |
24 |
['YaelDillies', 'felixpernegger', 'github-actions', 'jsm28', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'peakpoint'] |
nobody |
3-79756 3 days ago |
10-57551 10 days ago |
157-32483 157 days |
| 37680 |
IvanRenison author:IvanRenison |
feat(Combinatorics/SimpleGraph/Clique): add lemmas about isomorphisms and cliques |
---
Idea from this Zulip thread: [#**graph theory>Second Order Monadic Logic for Graph** ](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Second.20Order.20Monadic.20Logic.20for.20Graph/with/583013775)
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #37649
- [x] depends on: #37640
- [x] depends on: #37676
- [x] depends on: #37697
- [x] depends on: #37700
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
86/0 |
Mathlib/Combinatorics/SimpleGraph/Clique.lean |
1 |
7 |
['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
3-75544 3 days ago |
86-72918 86 days ago |
86-73330 86 days |
| 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 |
57/9 |
Mathlib/Order/Antichain.lean,Mathlib/Order/Basic.lean |
2 |
5 |
['SnirBroshi', 'chenson2018', 'github-actions'] |
nobody |
3-70613 3 days ago |
4-26188 4 days ago |
4-26068 4 days |
| 43213 |
teorth author:teorth |
feat(Geometry/Manifold): smooth Urysohn on a finite-dim normed space |
Add the `ContDiff` counterparts of the smooth Urysohn lemmas `exists_contMDiff_support_eq_eq_one_iff` and `exists_contMDiff_zero_iff_one_iff_of_isClosed` for a finite-dimensional real normed space `E`, obtained by specializing the manifold statements to the self-model `𝓘(ℝ, E)` and rewriting `ContMDiff` to `ContDiff` via `contMDiff_iff_contDiff`:
* `exists_contDiff_support_eq_eq_one_iff` (open `s` containing closed `t`);
* `exists_contDiff_zero_iff_one_iff_of_isClosed` (disjoint closed `s`, `t`).
---
This PR will be used in a forthcoming PR on the Wiener--Ikehara theorem (which in turn is used to derive the prime number theorem).
AI tools were used to generate initial statements and proofs of these theorems, which were then golfed and reviewed by the author.
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
16/0 |
Mathlib/Geometry/Manifold/PartitionOfUnity.lean |
1 |
2 |
['github-actions'] |
nobody |
3-59393 3 days ago |
3-60116 3 days ago |
3-59996 3 days |
| 40013 |
WilliamCoram author:WilliamCoram |
feat: define bounded sets and power bounded elements |
We define bounded sets, so that we can define power bounded elements in a topological ring. Using this we generalise some notions of topoligcally nilpotent elements and define a residue field.
AI usage: some proofs were initially generated with Claude code before being cleaned and/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
LLM-generated
large-import
|
431/5 |
Mathlib.lean,Mathlib/Topology/Algebra/Bounded.lean,Mathlib/Topology/Algebra/PowerBounded.lean,Mathlib/Topology/Algebra/TopologicallyNilpotent.lean |
4 |
20 |
['ADedecker', 'CBirkbeck', 'WilliamCoram', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'sfingali', 'vihdzp', 'wwylele'] |
j-loreaux assignee:j-loreaux |
3-55629 3 days ago |
71-69787 71 days ago |
87-51794 87 days |
| 42894 |
joelriou author:joelriou |
feat(RepresentationTheory/Homological): generalization of the vanishing of inflation/restriction |
We show that the map in group cohomology induced by a trivial morphism of groups vanishes in nonzero degrees (because it factors through the cohomology of the trivial group). This allows to generalize the "inflation/restriction" short complex to arbitrary nonzero degrees.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
t-algebra
tech debt
label:t-algebra$ |
31/21 |
Mathlib/RepresentationTheory/Homological/GroupCohomology/Functoriality.lean |
1 |
4 |
['Whysoserioushah', 'github-actions', 'joelriou'] |
Whysoserioushah assignee:Whysoserioushah |
3-55126 3 days ago |
14-80411 14 days ago |
14-80403 14 days |
| 42377 |
norbsvr author:norbsvr |
doc(1000.yaml): add Brauer's theorem on induced characters |
Claims a proof of [Q4958218:](https://www.wikidata.org/wiki/Q4958218) Brauer's theorem on induced characters.
The formalization is in an <a href="https://github.com/norbsvr/BrauerInduction/">external Lean 4 repository</a>. Please see file `README.md` for further information.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
3/0 |
docs/1000.yaml |
1 |
3 |
['github-actions'] |
nobody |
3-46289 3 days ago |
30-53107 30 days ago |
30-52987 30 days |
| 27493 |
themathqueen author:themathqueen |
feat(RingTheory): define Frobenius equations (`Coalgebra.IsFrobenius`) |
A coalgebra with an algebra structure `A` is said to be Frobenius when it satisfies the Frobenius equation:
`(id ⊗ mul) ∘ assoc ∘ (comul ⊗ id) = comul ∘ mul = (mul ⊗ id) ∘ assoc.symm ∘ (id ⊗ comul)`,
which in diagrams looks like
```
| | | |
| μ | | μ |
| / \ \ / / \ |
\ / | = δ ∘ μ = | \ /
δ | / \ | δ
| | | | | |
```
where `μ` stands for multiplication and `δ` for comultiplication.
It suffices to show that the left and right diagrams are equal, i.e.,
`(id ⊗ mul) ∘ assoc ∘ (comul ⊗ id) = (mul ⊗ id) ∘ assoc.symm ∘ (id ⊗ comul)`, so this is the only equality in the class.
Because of how long and complicated the names would be, we add abbreviations for the left and right equations, `IsFrobenius.left` and `IsFrobenius.right`. So the Frobenius equation is literally `left_eq_right : IsFrobenius.left = IsFrobenius.right`.
A Frobenius coalgebra is necessarily finite and projective. Also, the bilinear form `(LinearMap.mul R A).compr₂ counit` is nondegenerate and bijective.
A `Bialgebra R A` that is Frobenius must have `R` isomorphic to `A`.
---
<!-- 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]
-->
- [x] depends on: #27567
- [x] depends on: #27569
- [x] depends on: #32245
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
265/0 |
Mathlib.lean,Mathlib/RingTheory/Coalgebra/IsFrobenius.lean |
2 |
38 |
['JonBannon', 'Julian-Kuelshammer', 'YaelDillies', 'erdOne', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'riccardobrasca', 'themathqueen', 'wwylele'] |
jjdishere assignee:jjdishere |
3-33246 3 days ago |
41-53598 41 days ago |
145-9095 145 days |
| 36218 |
Brian-Nugent author:Brian-Nugent |
feat(CategoryTheory): Add exact sequences for Sheaf Cohomology |
In this PR, I add the long exact sequence for sheaf cohomology as well as prove that it is functorial. Since sheaf cohomology is defined in terms of `Ext`, this is done using the covariant sequence for `Ext`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #34742
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
238/1 |
Mathlib.lean,Mathlib/Algebra/Homology/SpectralObject/Page.lean,Mathlib/CategoryTheory/ComposableArrows/Basic.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/ExactSequences.lean |
4 |
42 |
['Brian-Nugent', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
dagurtomas assignee:dagurtomas |
3-33245 3 days ago |
25-65485 25 days ago |
74-76995 74 days |
| 42397 |
joelriou author:joelriou |
feat(CategoryTheory): `ContAction FintypeCat G` is a Galois category |
---
- [x] depends on: #42396
- [x] depends on: #42320
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
222/7 |
Mathlib.lean,Mathlib/CategoryTheory/Action/Basic.lean,Mathlib/CategoryTheory/Action/Continuous.lean,Mathlib/CategoryTheory/Galois/ContAction.lean,Mathlib/CategoryTheory/Galois/FullSubcategory.lean,Mathlib/CategoryTheory/ObjectProperty/EpiMono.lean,Mathlib/CategoryTheory/ObjectProperty/FiniteLimits.lean,Mathlib/Topology/Algebra/OpenSubgroup.lean |
8 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
robin-carlier assignee:robin-carlier |
3-33244 3 days ago |
18-82647 18 days ago |
18-82528 18 days |
| 42482 |
SauersML author:SauersML |
feat(Probability/Decision): add data processing inequalities for minimax risk |
This PR adds the minimax analogs of the three data processing inequalities for the Bayes risk in Mathlib.Probability.Decision.Risk.Basic.
It is similar to the compositions section in PR #29143, but with minimax.
-----------
Claude Fable 5 wrote the code and GPT 5.6 Sol reviewed the code. This was written for a different project, and I identified this as a candidate for upstreaming into 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-measure-probability
LLM-generated
new-contributor
|
31/0 |
Mathlib/Probability/Decision/Risk/Basic.lean |
1 |
3 |
['SauersML', 'github-actions'] |
EtienneC30 assignee:EtienneC30 |
3-33243 3 days ago |
27-30064 27 days ago |
27-29944 27 days |
| 42571 |
joelriou author:joelriou |
feat(AlgebraicTopology/Simplex): edges of a subcomplex |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
35/0 |
Mathlib/AlgebraicTopology/SimplicialSet/CompStruct.lean |
1 |
2 |
['github-actions', 'joelriou'] |
robin-carlier assignee:robin-carlier |
3-33242 3 days ago |
24-82158 24 days ago |
24-82178 24 days |
| 41803 |
benjub author:benjub |
feat(Topology/order/IntermediateValue): continuous induction from sSup membership |
Add `mem_of_csSup_mem_of_forall_exists_gt`, that generalizes `IsClosed.mem_of_ge_of_forall_exists_gt` by weakening the closedness hypothesis to membership of the supremum. Derive `IsClosed.mem_of_ge_of_forall_exists_gt` from it.
---
This result was already in essence in `IsClosed.mem_of_ge_of_forall_exists_gt`, which uses closedness only to obtain membership of the supremum.
This new result does not require `[TopologicalSpace α] [OrderTopology α]` (it is purely order-theoretic), but I still placed it next to `IsClosed.mem_of_ge_of_forall_exists_gt`. I am open to moving it to another file if the reviewer sees fit.
There are cases where that more general lemma is needed, because closedness either does not hold or would be longer to prove. For instance, I need that generalization to shorten the proof in the draft PR #41552. |
t-topology
new-contributor
|
21/11 |
Mathlib/Topology/Order/IntermediateValue.lean |
1 |
3 |
['benjub', 'github-actions'] |
nobody |
3-32336 3 days ago |
48-35126 48 days ago |
48-35006 48 days |
| 41839 |
CoolRmal author:CoolRmal |
feat(Topology/Connected): connected subsets of finite one-dimensional Hausdorff measure |
This PR proves some properties of preconnected subsets of an extended metric space in terms of their Hausdorff measure.
- The extended diameter of a preconnected set is at most its one-dimensional Hausdorff measure
- A preconnected set with finite `d`-dimensional Hausdorff measure for some `d < 1` is a subsingleton, so any set with finite such measure is totally disconnected
- A preconnected set with finite one-dimensional Hausdorff measure is totally bounded.
The main tool is that the distance from a fixed base point is `1`-Lipschitz (we define it by `x => (edist a x).toReal` and `ENNReal.toReal` is necessary because `ℝ≥0∞` is not an EMetric space and blocks me from using `LipschitzOnWith`, this is also the reason why I proved some weird lemmas like `isClopen_setOf_edist_ne_top` and `IsPreconnected.edist_ne_top`), so it does not increase Hausdorff measures, and the image of a preconnected set under it is an interval whose one-dimensional Hausdorff measure is its length. Comparing the two turns distances inside the set into lower bounds for its measure.
Some of these lemmas probably should belong to a different space. Feel free to give me some suggestions on this.
In the future, I would also like to use results in this PR to prove that a preconnected, compact subset with finite one-dimensional Hausdorff measure is path-connected, and this is included in TODO.
Created with the help of Claude Code, carefully reviewed and golfed by myself.
|
t-topology
LLM-generated
|
168/0 |
Mathlib.lean,Mathlib/Topology/Connected/HausdorffMeasure.lean,Mathlib/Topology/EMetricSpace/Defs.lean |
3 |
10 |
['CoolRmal', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'wwylele'] |
nobody |
3-32335 3 days ago |
21-42901 21 days ago |
47-33975 47 days |
| 40857 |
BryceT233 author:BryceT233 |
feat(RingTheory/Radical): radical of principal ideals in a UFD |
This PR resolves the "TODO" in `RingTheory/Radical/Basic.lean` by connecting `UniqueFactorizationMonoid.radical` with `Ideal.radical`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
large-import
|
44/4 |
Mathlib/RingTheory/Radical/Basic.lean |
1 |
1 |
['github-actions'] |
mattrobball assignee:mattrobball |
3-30019 3 days ago |
73-21647 73 days ago |
73-21527 73 days |
| 43163 |
yuanyi-350 author:yuanyi-350 |
feat(Analysis/SpecialFunctions/Exponential): map exponentials under differentiable monoid homs |
|
t-analysis |
37/0 |
Mathlib/Analysis/SpecialFunctions/Exponential.lean |
1 |
4 |
['github-actions', 'wwylele'] |
nobody |
3-29692 3 days ago |
3-34893 3 days ago |
6-9999 6 days |
| 41066 |
BryceT233 author:BryceT233 |
feat(RingTheory/Jacobson/Ideal): surjective `RingHom` and `IsLocalHom` |
This is a split of #41064 which shows that a surjective `RingHom` is a local homomorphism if and only if its kernel is contained in the jacobson radical of the ring.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
24/16 |
Mathlib/RingTheory/Henselian.lean,Mathlib/RingTheory/Jacobson/Ideal.lean |
2 |
2 |
['BryceT233', 'github-actions'] |
joneugster assignee:joneugster |
3-29120 3 days ago |
67-10357 67 days ago |
68-6530 68 days |
| 41472 |
BryceT233 author:BryceT233 |
feat(Algebra): total monoid algebra |
This PR introduces `TotalMonoidAlgebra` and `TotalAddMonoidAlgebra`, which is part of the broader plan on [reworking Finsupp, MonoidAlgebra, HahnSeries. PowerSeries](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Reworking.20Finsupp.2C.20MonoidAlgebra.2C.20HahnSeries.2E.20PowerSeries/with/608547586).
We mirror the construction in `MonoidAlgebra/Defs.lean`, but drops the finiteness condition on the support of the elements. In the literature, this construction is called the "large algebra of a monoid" or "total algebra" (see https://en.wikipedia.org/wiki/Total_algebra). When the underlying monoid is finitely supported functions valued in `ℕ`, this construction corresponds to the multivariate formal power series in the large sense, where arbitrary infinite sums of monomials are permitted.
The algebraic hierarchy in this file is completely identical to that of`MonoidAlgebra/Defs.lean`. It builds up the algebraic structure from basic typeclasses like `One` and `SMul`, through `Mul`, `NonUnitalNonAssocSemiring`, and ultimately to `Ring` and `CommRing`. Despite the identical hierarchy, the underlying implementation requires several key departures from `MonoidAlgebra`:
1. Coefficients are represented using standard functions (`M → R`) rather than finitely supported functions (`M →₀ R`). Because of this, this file provides no induction principles or lemmas related to induction principles of `Finsupp`.
2. The construction uses `Pi.single` instead of `Finsupp.single` to represent individual terms. Because of how `Pi.single` is defined, this imposes a `DecidableEq M` requirement on many declarations, particularly whenever the identity element is required.
3. To ensure the convolution product is well-defined (i.e., the coefficient sum is finite), we require the underlying monoid to satisfy the `Finset.HasMulAntidiagonal M` condition. Because of this, proofs concerning multiplication rely heavily on the `Finset.sum`.
4. When the underlying domain `M` is a group, the `HasMulAntidiagonal` condition is essentially equivalent to the group being finite. Furthermore, when `M` is finite, the total monoid algebra is equivalent to the standard `MonoidAlgebra` (#Todo). Because it reduces to the standard finite case, this file omits a dedicated group section entirely.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #41521
[](https://gitpod.io/from-referrer/) |
t-algebra label:t-algebra$ |
881/12 |
Mathlib.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Notation/Pi/Basic.lean,Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Algebra/TotalMonoidAlgebra/Defs.lean,Mathlib/Order/Filter/TendstoCofinite.lean |
6 |
6 |
['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
3-26601 3 days ago |
3-30211 3 days ago |
3-52695 3 days |
| 43170 |
felixpernegger author:felixpernegger |
feat(Combinatorics): tensor and strong product of two graphs |
I was recently told about the shannon capacity of a graph which is very cool and needs this version of a graph product https://en.wikipedia.org/wiki/Strong_product_of_graphs
I just copied/adapted all theorems from the existing box product (except two or so which dont hold)
---
After review, I now added the tensor product of two graphs 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]
-->
[](https://gitpod.io/from-referrer/)
|
|
443/3 |
Mathlib/Combinatorics/SimpleGraph/Prod.lean |
1 |
14 |
['SnirBroshi', 'felixpernegger', 'github-actions'] |
nobody |
3-23510 3 days ago |
5-74785 5 days ago |
5-74813 5 days |
| 41880 |
mbkybky author:mbkybky |
feat(CategoryTheory/ObjectProperty): define objects admitting finite resolutions by objects satisfying `P : ObjectProperty C` |
Let `C` be a category, `P : ObjectProperty C` be a property of objectsin `C`. We say that `X : C` has a `P`-resolution of length `n` if there exists an exact sequence `0 ⟶ Eₙ ⟶ ⋯ ⟶ E₀ ⟶ X ⟶ 0` such that each `Eᵢ : C` satisfies `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-category-theory |
148/0 |
Mathlib.lean,Mathlib/CategoryTheory/ObjectProperty/HasFiniteResolution/Basic.lean |
2 |
11 |
['github-actions', 'joelriou', 'mbkybky', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
3-18867 3 days ago |
3-18867 3 days ago |
44-9461 44 days |
| 43046 |
teorth author:teorth |
feat(Analysis/Distribution): compactly supported functions are dense in Schwartz space |
This file adds `SchwartzMap.dense_hasCompactSupport`: the compactly supported
Schwartz functions are dense in `𝓢(E, F)` (for `E` a finite-dimensional real
normed space).
The proof goes through smooth truncation, and some API for such truncations is provided.
----
This material will be used in a forthcoming PR on the prime number theorem.
AI was used to generate initial code, which was then heavily golfed and reviewed by the author. |
t-analysis |
187/0 |
Mathlib.lean,Mathlib/Analysis/Distribution/SchwartzSpace/CompactSupport.lean |
2 |
1 |
['github-actions'] |
nobody |
3-11434 3 days ago |
10-61424 10 days ago |
10-61304 10 days |
| 42933 |
teorth author:teorth |
feat(Analysis/Fourier): decay of the Fourier transform of a function with integrable derivatives |
If `f : ℝ → E` is `C^n` and its first `n` derivatives are integrable, then `𝓕 f` decays like `|u| ^ (-n)`. Specifically, `Real.one_add_pow_mul_norm_fourier_le` states that
```
(1 + |u| ^ n) * ‖𝓕 f u‖ ≤ (∫ v, ‖f v‖) + ((2 * π) ^ n)⁻¹ * ∫ v, ‖iteratedDeriv n f v‖
```
which, unlike a bound of the shape `‖u‖ ^ n * ‖𝓕 f u‖ ≤ C`, is also nontrivial at `u = 0`, and so can be used to deduce integrability of `𝓕 f`. The case `n = 2` is recorded separately as `Real.one_add_sq_mul_norm_fourier_le`, in terms of `1 + u ^ 2`. Also included is `Real.norm_fourier_le_integral_norm`, the `𝓕`-level form of `VectorFourier.norm_fourierIntegral_le_integral_norm`. (This will be useful in a future PR of the prime number theorem.)
Mathlib already implies a decay bound of this kind, via `Real.pow_mul_norm_iteratedFDeriv_fourier_le` with `k = 0`, but with a lossy constant, a sum over all lower-order derivatives, and no content at `u = 0`.
A higher-dimensional analogue holds by the same argument, but needs a reverse bound for `fourierPowSMulRight`, for which mathlib currently only has the `≤` direction; this is left to a future PR.
---
AI was used to prepare the initial version of the code, which was then golfed and reviewed by myself. |
t-analysis |
35/1 |
Mathlib/Analysis/Fourier/FourierTransform.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean |
3 |
9 |
['ajirving', 'github-actions', 'teorth'] |
nobody |
3-11335 3 days ago |
11-54971 11 days ago |
14-4923 14 days |
| 41120 |
teorth author:teorth |
feat(Analysis/SpecialFunctions/Gamma/Deriv,NumberTheory/Harmonic/GammaDeriv): formulae for the derivative of Gamma / eulerMascheroni |
Some integral representations of the derivative of the Gamma function, or the Euler-Mascheroni constant, focusing on the real form of the Gamma function rather than the complex one (as formulae for the latter are already present).
---
The initial code was human generated; an AI agent was used to help proofread and refactor the code subsequently.
- [x] depends on: #41119
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor |
91/7 |
Mathlib/Analysis/SpecialFunctions/Gamma/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/NumberTheory/Harmonic/GammaDeriv.lean |
3 |
27 |
['felixpernegger', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'teorth'] |
nobody |
3-10867 3 days ago |
28-61699 28 days ago |
47-43580 47 days |
| 42931 |
yui9696 author:yui9696 |
feat(Analysis/Matrix): simultaneous diagonalization of two Hermitian forms and generalized eigenvalues |
Adds the simultaneous diagonalization theorem for two real quadratic forms, one of which is positive definite:
if `A : Matrix n n ℝ` is positive definite and `B : Matrix n n ℝ` is symmetric, then there is an invertible `P` with `Pᵀ * A * P = 1` and `Pᵀ * B * P` diagonal.
This is the entry "simultaneous diagonalization of two real quadratic forms" from the [missing undergraduate mathematics list](https://leanprover-community.github.io/undergrad_todo.html) (Bilinear and quadratic forms).
### Contents
* `Matrix.PosDef.exists_simultaneous_diagonalization` — the matrix statement above.
* `Matrix.PosDef.exists_simultaneous_diagonalization_quadratic` — the same fact read off on the quadratic forms themselves: one invertible change of variables takes the form of `A` to `∑ xᵢ ^ 2` and the form of `B` to `∑ dᵢ * xᵢ ^ 2`. This is the phrasing the undergraduate list actually asks for, so it seemed worth stating explicitly rather than leaving to the reader.
* `Matrix.PosDef.exists_simultaneous_diagonalization_of_posDef` — when `B` is positive definite as well, the diagonal entries are positive.
### Implementation
Conjugating by the inverse of `CFC.sqrt A` turns `A` into the identity; the congruence of `B` is then symmetric, so `Matrix.IsHermitian.spectral_theorem` diagonalizes it and the two changes of basis compose.
A note on the history of this branch, in case a reviewer reads the commits: the first version went through the LDL decomposition, because I had convinced myself Mathlib no longer had a square root for positive semidefinite matrices. That was simply wrong — `CFC.sqrt` applies to matrices, as `Mathlib/Analysis/Matrix/Order.lean` already uses. Redoing it that way removed the `LinearOrder`, `WellFoundedLT` and `LocallyFiniteOrderBot` hypotheses that LDL imposed on the index type, so the statement is now proved for an arbitrary `Fintype` with decidable equality.
This is my first Mathlib contribution, so I would be glad to hear if the placement or naming should be different. Two specific questions:
* Would a `QuadraticForm` / `LinearMap.BilinForm` statement be preferred to the `dotProduct` phrasing used in the `_quadratic` version?
* Is `∃ d, _ = diagonal d` the right conclusion, or would `Matrix.IsDiag` be more idiomatic here?
### Use of AI
Per the [contribution guidelines](https://leanprover-community.github.io/contribute/index.html), I am disclosing my use of AI on this PR.
**Tool:** Claude (Anthropic), used through Claude Code.
**How I used it:** I used it to draft and iterate on the Lean proofs in this file, to search Mathlib for the relevant existing lemmas, and to carry out the rewrite from the first LDL-based version to the `CFC.sqrt` version described above. I have read and checked every declaration in the file myself, and I can justify the statements, the proof design and the placement without AI assistance.
A substantial part of the code was AI-drafted, so I am adding the `LLM-generated` label.
---
[](https://gitpod.io/#https://github.com/leanprover-community/mathlib4)
|
t-analysis
new-contributor
LLM-generated
|
246/0 |
Mathlib.lean,Mathlib/Analysis/Matrix/SimultaneousDiagonalization.lean |
2 |
8 |
['github-actions', 'themathqueen', 'vlad902', 'yui9696'] |
nobody |
3-10411 3 days ago |
9-21767 9 days ago |
9-38885 9 days |
| 41555 |
BryceT233 author:BryceT233 |
feat(Algebra/Order/Antidiagonal): connect `Finset.HasAntidiagonal` with `Filter.TendstoCofinite` |
This PR connects `Finset.HasAntidiagonal` with `Filter.TendstoCofinite` and cleans up `TendstoCofinite.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]
-->
- [x] depends on: #41521
[](https://gitpod.io/from-referrer/)
|
tech debt
large-import
|
49/18 |
Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Algebra/Order/Antidiag/Tendsto.lean,Mathlib/Order/Filter/TendstoCofinite.lean |
3 |
9 |
['BryceT233', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'plp127'] |
nobody |
3-6921 3 days ago |
3-10074 3 days ago |
3-35898 3 days |
| 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
- [ ] 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.lean |
1 |
9 |
['Parcly-Taxel', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'wwylele'] |
nobody |
2-83713 2 days ago |
2-84301 2 days ago |
4-64226 4 days |
| 42963 |
teal-sea author:teal-sea |
feat(NumberTheory/LSeries): define Hardy's Z function |
Add Hardy's Z function as a real-valued function on `ℝ`, with the two
conjugation lemmas its construction needs.
---
`Z` is the standard real-valued function on the critical line: it has the same
modulus as `ζ (1/2 + i t)`, so its sign changes locate zeros of `ζ` on the line.
It is a standard object for formulating and proving results about zeros on the
critical line, and Mathlib currently has no way to talk about such a zero
directly.
The `Critical line theorem` entry in `docs/1000.yaml` carries no `decl:`, so
this is an area the library has recorded as wanted. This PR is not that theorem;
it is foundational infrastructure toward it, and the dependency chain is what
gives the three commits their shape: a critical line theorem is naturally
formulated using `Z`, `Z` needs conjugation symmetry for the completed zeta
function, and that needs conjugation symmetry for the Deligne archimedean
factors. Hence, in order:
1. `Complex.Gammaℝ_conj`, `Complex.Gammaℂ_conj` in `Gamma/Deligne.lean`, which
currently has no conjugation lemma for either Deligne factor.
2. `completedRiemannZeta_conj` in `ZetaAsymp.lean`, next to `riemannZeta_conj`.
For `0 < re s` it follows from `riemannZeta_conj` and `Gammaℝ_conj`; the
other half-plane follows from `completedRiemannZeta_one_sub` applied to
`1 - s`, which also covers the junk values at `0` and `1`.
3. `Mathlib/NumberTheory/LSeries/HardyZ.lean`, the definition and its API:
`abs_hardyZ`, `hardyZ_neg`, `hardyZ_eq_zero_iff`, `continuous_hardyZ`,
`ofReal_hardyZ`.
**On the choice of definition.** The textbook definition is
`Z t = exp (I * ϑ t) * ζ (1/2 + i t)`, with `ϑ` the Riemann–Siegel theta
function. That needs a continuous branch of `log Γ` along the critical line,
which Mathlib does not have, and the branch bookkeeping is most of the work.
Dividing `Λ` by the modulus of its archimedean factor gives the same function
without mentioning a branch: `Λ (1/2 + i t)` is real by `completedRiemannZeta_conj`
and `completedRiemannZeta_one_sub`, and `‖Γ_ℝ (1/2 + i t)‖` is a positive real.
Since `Γ_ℝ (1/2 + it) = π ^ (-1/4) * π ^ (-it/2) * Γ (1/4 + it/2)`, where the
first factor is a positive real and the second has modulus `1`, the quotient is
exactly `exp (I * ϑ t) * ζ (1/2 + i t)`; the module docstring spells this out.
`ϑ` itself can follow later.
I chose `ℝ → ℝ` because it is what the literature means by `Z` and it makes the
intermediate value theorem directly applicable. I raised this signature question
on Zulip in `#mathlib4` on 6 August and would still welcome opinions on it.
## Use of AI
I used Claude (Anthropic), via Claude Code. The mathematical route, defining
`Z` from `Λ` rather than from `exp (I ϑ) ζ`, to avoid the logarithm branch, is
one I worked out in my own research repository before this Lean was written, and that earlier Lean was also AI-assisted. Claude wrote most of the
proofs from that plan for this PR and found that the divisor is exactly `‖Γ_ℝ (1/2 + i t)‖`
rather than the expanded `π ^ (-1/4) * ‖Γ (1/4 + i t / 2)‖`, split the two
general lemmas out into their proper files, and adapted everything to house
style. I set the goal and the design, chose the file layout and the names, and
reviewed the result.
Builds against master with no errors or warnings; `lake exe lint-style` is clean
and `#lint` reports no errors. |
LLM-generated
new-contributor
t-number-theory
|
209/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deligne.lean,Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/NumberTheory/LSeries/HardyZ.lean |
4 |
8 |
['github-actions', 'teal-sea', 'wwylele'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
2-68401 2 days ago |
13-37905 13 days ago |
13-37785 13 days |
| 43231 |
E-M-Bailey author:E-M-Bailey |
feat(Analysis/Analytic): expand and update `AnalyticAt.comp_sub`-type theorems |
Adds `.comp_add` and biconditional versions of the `AnalyticAt.comp_sub`-type theorems. Also shortens the `.comp_sub` statements and simplifies a few of their proofs.
---
The purpose of this minor change, and in particular the biconditional versions, is to make it more convenient to shift power series. For example, I am currently working on a proof with a hypothesis of type `∀ᶠ w in 𝓝 z, ∀ i, AnalyticAt ℂ (f <| update w i ·) (w i)`, and I wanted to simplify the proof by assuming `z = 0`. This makes the `wlog` step shorter.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
202/32 |
Mathlib/Analysis/Analytic/Basic.lean |
1 |
3 |
['github-actions'] |
nobody |
2-63603 2 days ago |
2-65019 2 days ago |
2-64982 2 days |
| 43235 |
harahu author:harahu |
chore(Basic/Logic/Basic): update stale docstring |
This might also be a candidate for deprecation.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
1/1 |
Mathlib/Basic/Logic/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
2-57237 2 days ago |
2-60514 2 days ago |
2-60394 2 days |
| 42983 |
sgouezel author:sgouezel |
feat: introduce an IsNormableSpace class |
This is relevant to be able to use functions like `ContinuousLinearMap.flip` on tangent spaces, which are normable but not normed. See Zulip discussion at [#Is there code for X? > Pulling back continuous inner product @ 💬](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Pulling.20back.20continuous.20inner.20product/near/614796625)
This PR introduces a new typeclass `IsNormableSpace 𝕜 E` modelled on `PolynormableSpace 𝕜 E` and establishes basic API. It extends basic bilinear functions (like `ContinuousLinearMap.flip` or `ContinuousLInearMap.bilinearComp`) to normable spaces. It also shows that finite-dimensional spaces are normable, as well as spaces of continuous linear maps between normable 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-analysis
large-import
|
320/122 |
Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Fourier/AddCircleMulti.lean,Mathlib/Analysis/InnerProductSpace/Defs.lean,Mathlib/Analysis/LocallyConvex/PointwiseConvergence.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/Analysis/LocallyConvex/WeakOperatorTopology.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Analysis/Normed/Operator/Basic.lean,Mathlib/Analysis/Normed/Operator/Bilinear.lean,Mathlib/Analysis/Normed/Operator/CompleteCodomain.lean,Mathlib/Analysis/Normed/Operator/NormedSpace.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/Algebra/Module/FiniteDimensionBilinear.lean |
15 |
18 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'plp127', 'sgouezel'] |
nobody |
2-47839 2 days ago |
2-49082 2 days ago |
10-25593 10 days |
| 42042 |
ijtejeda author:ijtejeda |
feat(MeasureTheory/OuterMeasure) more API for Caratheodory |
Add more basic facts about outer measures, including Caratheodory measurability of measure-zero 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]
-->
[](https://gitpod.io/from-referrer/)
|
LLM-generated
new-contributor
t-measure-probability
|
8/0 |
Mathlib/MeasureTheory/OuterMeasure/Caratheodory.lean |
1 |
13 |
['CoolRmal', 'github-actions', 'ijtejeda', 'tdwag123'] |
CoolRmal and RemyDegenne assignee:RemyDegenne assignee:CoolRmal |
2-47430 2 days ago |
2-55714 2 days ago |
28-39165 28 days |
| 42483 |
bocowgill author:bocowgill |
feat(Topology/MetricSpace/HausdorffDistance): characterize joint minimizers via infDist |
This PR adds two results connecting a generic pseudometric-space profiling principle with orthogonal projection in an inner-product space.
- `Metric.exists_forall_dist_le_iff_forall_infDist_le` gives a generic pseudometric-space attainment/profiling theorem. Assuming the distance from `a` to `U` is attained, it characterizes when `a` can be paired with some `u ∈ U` whose distance is no greater than the distance between any pair in `A × U`. This is possible precisely when `Metric.infDist a U ≤ Metric.infDist a' U` for every `a' ∈ A`. When `a ∈ A`, this characterizes joint minimizers over `A × U`.
- `Submodule.norm_starProjection_orthogonal_eq_infDist` identifies the norm of the orthogonal projection onto `Uᗮ` with the point-to-set distance `Metric.infDist y U`, providing a bridge between the inner-product-space projection API and the generic pseudometric-space theorem.
A later intended application is partialling-out and the Frisch–Waugh–Lovell theorem. There, one can specialize the comparison set and distinguished point to
`A = Set.range (fun z' ↦ y - f z')`
and
`a = y - f z`,
and use the projection-to-`infDist` bridge to translate between orthogonal-residual norms and the generic profiling theorem. The regression-parameterized specialization itself is not part of this PR.
---
### Motivation
These lemmas separate the general profiling argument from the inner-product-space structure used in orthogonal-projection applications.
- The pseudometric-space result shows that, when the distance from `a` to `U` is attained, the `U` variable can be profiled out: finding a pair `(a, u)` whose distance is bounded by every pair in `A × U` reduces to comparing `Metric.infDist a U` with `Metric.infDist a' U` for every `a' ∈ A`. When `a ∈ A`, this is a joint-minimization characterization.
- The inner-product-space result identifies the norm of the orthogonal residual with `Metric.infDist`, providing the bridge needed to apply the generic profiling theorem to orthogonal-projection problems.
This separation is intended to support later formalizations of least squares, regression, and partialling-out/FWL arguments while keeping the profiling theorem independent of linear structure and of any particular parameterization of the comparison set.
### LLM disclosure
For theorem planning and Lean implementation, I used OpenAI Codex substantially. I also used it for suggestions around naming and documentation, for iterating on the proofs, responding to review feedback, and validating my commits locally.
I manually searched for the best locations and earlier results to build upon. I personally reviewed the mathematical statements and Lean code line-by-line, as well as the suggestions around naming and API choices. I also reviewed and confirmed that I can explain each step of the two theorems' proofs.
For the current revision, I ran targeted builds of `Mathlib.Topology.MetricSpace.HausdorffDistance` and `Mathlib.Analysis.InnerProductSpace.Projection.Basic`, as well as the style linter and the environment linter. I performed a `git diff --check`. I also inspected the inferred declaration signatures and axiom dependencies, and compiled a scratch proof recovering the original regression-parameterized statement from the new generic pseudometric-space theorem. Earlier in development, before the reviewer-driven refactor, I also completed a full `lake build` and a full `lake test`.
Please note: This is one of my earliest Mathlib contributions. I welcome corrections or suggestions about all aspects of this PR. I'm prepared to revise it as necessary and to learn from the review. |
t-analysis
LLM-generated
new-contributor
|
29/0 |
Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean |
2 |
14 |
['bocowgill', 'github-actions', 'j-loreaux', 'wwylele'] |
nobody |
2-40509 2 days ago |
19-57152 19 days ago |
26-72568 26 days |
| 37603 |
Parcly-Taxel author:Parcly-Taxel |
refactor: review of `SetSemiring` |
* Rename `Set.up` and `SetSemiring.down` to `SetSemiring.ofSet` and `SetSemiring.toSet` respectively. Unprotect both and make them equivalences, following `FreeMonoid`.
* Derive `CompleteAtomicBooleanAlgebra` for `SetSemiring` immediately.
* Add `imageHom_id` and `imageHom_comp`. The three existing lemmas about `imageHom` are coalesced into `imageHom_apply`.
Ultimately inspired by https://github.com/leanprover-community/mathlib4/pull/36934#issuecomment-4183475568. |
t-data |
119/164 |
Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Data/Set/Semiring.lean |
2 |
45 |
['Parcly-Taxel', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'ocfnash', 'sgouezel'] |
eric-wieser assignee:eric-wieser |
2-33246 2 days ago |
49-35363 49 days ago |
85-46027 85 days |
| 37934 |
Thmoas-Guan author:Thmoas-Guan |
feat(FieldTheory): definition of transcendental separable field extension |
In this PR, we introduce the concept of separably generated field extension and transcendental separable field extension.
Further properties will be in #37838
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
102/0 |
Mathlib.lean,Mathlib/FieldTheory/TranscendentalSeparable.lean |
2 |
14 |
['Thmoas-Guan', 'github-actions', 'robin-carlier'] |
kim-em assignee:kim-em |
2-33245 2 days ago |
114-69759 114 days ago |
123-1416 123 days |
| 38194 |
ryanncode author:ryanncode |
feat(LinearAlgebra/BilinearForm): add indefinite metrics |
Add the `IndefiniteMetric` structure to support vector spaces equipped with a non-degenerate, symmetric, indefinite bilinear form.
Provide the algebraic foundation for indefinite inner product spaces by formalizing the metric via `LinearMap.BilinForm` and extracting its associated quadratic form without enforcing the `IsPosSemidef` typeclass.
Previously, mathlib required strictly positive-definite metrics to instantiate inner product spaces (`InnerProductSpace`), which prevented the formalization of indefinite geometries without causing typeclass inference failures. Bridge this gap by isolating the symmetric bilinear form from topological and positivity constraints, allowing the library to handle generalized indefinite metric spaces safely.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
47/0 |
Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/IndefiniteMetric.lean |
2 |
5 |
['dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'ryanncode'] |
mattrobball assignee:mattrobball |
2-33244 2 days ago |
101-76571 101 days ago |
117-46220 117 days |
| 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'] |
b-mehta assignee:b-mehta |
2-33243 2 days ago |
38-20382 38 days ago |
62-3597 62 days |
| 40302 |
xroblot author:xroblot |
feat(Data/Nat/Digits): add digitsAppend API lemmas and List.mapIdx_replicate |
Adds some lemmas about `Nat.digitsAppend` and `List.mapIdx_replicate`:
These complete the basic API around `Nat.digitsAppend` (already in Mathlib) that is needed downstream to relate it to `Nat.digits` and to sums indexed via `List.mapIdx`.
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude. |
t-data |
50/0 |
Mathlib/Data/List/Indexes.lean,Mathlib/Data/Nat/Digits/Lemmas.lean |
2 |
1 |
['github-actions'] |
eric-wieser assignee:eric-wieser |
2-33240 2 days ago |
85-64411 85 days ago |
85-64461 85 days |
| 40791 |
vvvv-ops author:vvvv-ops |
feat(RingTheory/DedekindDomain): dirichlet's s-unit theorem |
Proves the `Future work` of `RingTheory/DedekindDomain/SInteger.lean`: finite generation of `S`-units and Dirichlet's `S`-unit theorem.
For a Dedekind domain `R` with fraction field `K` and a finite set `S` of height-one primes, this adds the `S`-valuation map `Set.unitValuation` with kernel the `∅`-units (`Set.unitValuation_ker`), finite generation `Set.unit_fg`, and the exact rank `Set.finrank_eq`: `finrank ℤ (Additive 𝒪_{K,S}ˣ) = finrank ℤ (Additive 𝒪_Kˣ) + |S|`, plus the number-field specialisation `Set.unit_finrank_numberField` (`= (r₁ + r₂ - 1) + |S|`). The proof uses the short exact sequence `1 → 𝒪_Kˣ → 𝒪_{K,S}ˣ → ⊕_{v∈S} ℤ`: the kernel is the units, and the image has finite index because its cokernel embeds in the (finite) class group.
The general finiteness helpers `Module.Finite.of_fg_ker_of_fg_range`, `CommGroup.fg_of_fg_ker_of_fg_range`, `Subgroup.fg_of_fg_commGroup` are included in the file for now — happy to move them to `RingTheory/Finiteness` / `GroupTheory/Finiteness` if preferred.
|
t-ring-theory
new-contributor
|
339/0 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/SUnit.lean,scripts/noshake.json |
3 |
4 |
['github-actions', 'jjdishere'] |
mattrobball assignee:mattrobball |
2-33239 2 days ago |
75-20352 75 days ago |
75-20232 75 days |
| 41100 |
tb65536 author:tb65536 |
refactor(RingTheory/Localization/AtPrime/Basic): replace `IsLiesOverAlgebra` with `IsScalarTower` |
As @erdOne pointed out on #38465, the recently added `IsLiesOverAlgebra` is equivalent to assuming `IsScalarTower`. So I've deprecated `IsLiesOverAlgebra` and switched everything over to `IsScalarTower`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
t-algebra
label:t-algebra$ |
74/58 |
Mathlib/RingTheory/Flat/Localization.lean,Mathlib/RingTheory/LocalRing/ResidueField/Fiber.lean,Mathlib/RingTheory/LocalRing/ResidueField/Ideal.lean,Mathlib/RingTheory/LocalRing/ResidueField/Instances.lean,Mathlib/RingTheory/LocalRing/ResidueField/Polynomial.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/QuasiFinite/Basic.lean,Mathlib/RingTheory/QuasiFinite/Weakly.lean,Mathlib/RingTheory/RamificationInertia/Inertia.lean,Mathlib/RingTheory/RamificationInertia/Ramification.lean,Mathlib/RingTheory/Unramified/LocalRing.lean,Mathlib/RingTheory/Unramified/LocalStructure.lean,Mathlib/RingTheory/Unramified/Locus.lean |
13 |
9 |
['chrisflav', 'github-actions', 'mathlib-merge-conflicts', 'tb65536'] |
mattrobball assignee:mattrobball |
2-33238 2 days ago |
22-3605 22 days ago |
66-56862 66 days |
| 41236 |
joelriou author:joelriou |
feat(CategoryTheory/Presentable): accessible functors satisfy the solution set condition |
In this PR, the fact that `Comma` categories attached to accessible functors are accessible is used to show similar results for `Arrow`, `StructuredArrow`, `CostructuredArrow`, `Over`, and `Under` categories. A consequence is that accessible functors between accessible categories satisfy the solution set condition.
Co-authored-by: Dagur Asgeirsson <dagurtomas@gmail.com>
---
- [x] depends on: #31018
- [x] depends on: #41068
- [x] depends on: #41240
The PRs #31018 and #41068 essentially fill the sorries from Dagur's PR #33110
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
192/14 |
Mathlib.lean,Mathlib/CategoryTheory/ObjectProperty/Small.lean,Mathlib/CategoryTheory/Presentable/Basic.lean,Mathlib/CategoryTheory/Presentable/Comma.lean,Mathlib/CategoryTheory/Presentable/IsDiscrete.lean,Mathlib/CategoryTheory/Presentable/LocallyPresentable.lean,Mathlib/CategoryTheory/Presentable/SolutionSetCondition.lean |
7 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
dagurtomas assignee:dagurtomas |
2-33236 2 days ago |
3-50464 3 days ago |
3-50346 3 days |
| 41962 |
juanjomadrigal author:juanjomadrigal |
feat(Counterexamples): the space ω₁ |
Introduce the `ω₁` ordinal space that, when given the order topology, may be used to build some nice counterexamples in general topology, namely
- A subspace of a paracompact space need not be paracompact
- The product of two normal spaces need not be normal
- A subspace of a normal space need not be normal
- A regular space need not be normal
This PR introduces the basic definitions and order-theoretic properties, in order to have a good set of tools to work with.
---
Subsequent commits / PRs would roughly cover:
- Topology definitions in that space
- Compactness (and non-compactness) properties
- Countability properties
- Non-metrizability
- Each of the properties above
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
146/0 |
Counterexamples.lean,Counterexamples/Omega1Space.lean |
2 |
68 |
['FrankieNC', 'felixpernegger', 'github-actions', 'grunweg', 'j-loreaux', 'juanjomadrigal', 'plp127', 'vihdzp'] |
ADedecker assignee:ADedecker |
2-33234 2 days ago |
31-84589 31 days ago |
40-22244 40 days |
| 42523 |
joelriou author:joelriou |
feat(AlgebraicTopology/SimplicialSet): the fundamental groupoid |
---
- [x] depends on: #42526
- [x] depends on: #42527
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
351/0 |
Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/FundamentalGroupoid/Basic.lean,MathlibTest/CategoryTheory/CheckDsimp.lean |
4 |
7 |
['github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
2-33234 2 days ago |
7-5144 7 days ago |
18-80911 18 days |
| 39722 |
kg583 author:kg583 |
feat(Combinatorics): link `Nat.Partition` to `YoungDiagram` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
AI disclosure: Claude was used to source some proof sketches.
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
large-import
|
111/4 |
Mathlib.lean,Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Combinatorics/Enumerative/Partition/YoungDiagram.lean,Mathlib/Combinatorics/Young/YoungDiagram.lean |
4 |
48 |
['NoahW314', 'YaelDillies', 'github-actions', 'kg583', 'wwylele'] |
nobody |
2-32344 2 days ago |
57-48926 57 days ago |
92-43723 92 days |
| 43247 |
plp127 author:plp127 |
chore: change `Equiv.topologicalSpace` to use the coinduced topology |
Change `Equiv.topologicalSpace` to be an `abbrev` for `.coinduced e.invFun ‹_›` instead of `.induced e.toFun ‹_›`. They are propeq, but `.coinduced` has better defeqs. For example, `(f.trans g).topologicalSpace` is defeq to `letI := g.topologicalSpace; f.topologicalSpace` and `letI := e.topolgicalSpace; IsOpen s` is defeq to `IsOpen (e.symm ⁻¹' s)`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
tech debt
|
28/14 |
Mathlib/Analysis/Normed/Module/TransferInstance.lean,Mathlib/Topology/Algebra/Module/TransferInstance.lean,Mathlib/Topology/Homeomorph/TransferInstance.lean,Mathlib/Topology/MetricSpace/TransferInstance.lean |
4 |
1 |
['github-actions'] |
nobody |
2-26860 2 days ago |
2-27552 2 days ago |
2-27752 2 days |
| 43250 |
WenrongZou author:WenrongZou |
chore(Valuation/Integers): delete a TODO in `Valuation.Integers` |
I think [`Valuation.Integers`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Valuation/Integers.html#Valuation.Integers) is the characteristic predicate. If this is not what we want, I am happy to add a characteristic predicate in 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-ring-theory
easy
|
0/1 |
Mathlib/RingTheory/Valuation/Integers.lean |
1 |
1 |
['github-actions'] |
nobody |
2-24236 2 days ago |
2-25026 2 days ago |
2-24906 2 days |
| 42354 |
sankalpsthakur author:sankalpsthakur |
doc(Data/Rel): clarify the SetRel representation |
Rewrites the implementation-notes section explaining why `SetRel` represents relations as `Set (α × β)` rather than `α → β → Prop`. The previous text framed the two representations as competing, with the function form as default and `SetRel` mainly justified by dedicated notation. This reframes it around what each representation is *for*: the function form when a relation is primarily applied to arguments, the set-of-pairs form when the relation itself is manipulated as an object — with concrete examples (inverse as preimage, transport as image, union/intersection/complement/subset-order inherited from `Set`). Also fixes a stray double space.
Motivated by #39397.
### Validation
Documentation-only change (module docstring); no executable code touched.
Closes #39397
### AI/LLM disclosure
AI coding tools were used to help draft this change and PR description. I reviewed the complete change and the reasoning before submitting. |
t-data
new-contributor
LLM-generated
|
16/13 |
Mathlib/Basic/Rel.lean |
1 |
4 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
2-21956 2 days ago |
14-21852 14 days ago |
31-1936 31 days |
| 41338 |
kim-em author:kim-em |
refactor(Combinatorics/SimpleGraph/CycleGraph): golf cycleGraph_isContained_iff via getVert |
Reopened from my fork, replacing #41268 (previously a branch on the main repo).
This PR rewrites the reverse direction of `cycleGraph_isContained_iff` from https://github.com/leanprover-community/mathlib4/pull/35255. Building the copy on `Walk.getVert` instead of `support` indexing makes the vertex map total, dispatches both adjacency cases through a single cyclic-successor helper (no `wlog`), handles the wraparound with `adj_penultimate`, and gets injectivity directly from `IsCycle.getVert_injOn'`.
🤖 Prepared with Claude Code |
t-combinatorics
LLM-generated
|
12/16 |
Mathlib/Combinatorics/SimpleGraph/CycleGraph.lean |
1 |
16 |
['SnirBroshi', 'github-actions', 'kim-em', 'mathlib-merge-conflicts', 'vlad902'] |
nobody |
2-19189 2 days ago |
2-20233 2 days ago |
20-63191 20 days |
| 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
maintainer-merge
|
28/24 |
Mathlib/Combinatorics/SimpleGraph/Copy.lean |
1 |
27 |
['FordUniver', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'mitchell-horner'] |
nobody |
2-13102 2 days ago |
46-65369 46 days ago |
100-85545 100 days |
| 43114 |
YaelDillies author:YaelDillies |
refactor: definition for `EventuallyConst` on `Set` |
Introduce definition `EventuallyEmptyOrUniv` as the `Set` version of `EventuallyConst`.
In mathlib, we currently use `EventuallyConst` for sets, which abuses the `Set α := α → Prop` defeq and which will break once we make `Set` a one-field structure.
Generated by Claude Sonnet, reviewed line by line by myself.
Assisted-by: Claude Sonnet 5
---
- [x] depends on: #41533
[](https://gitpod.io/from-referrer/)
|
tech debt
LLM-generated
t-analysis
|
105/33 |
Mathlib/Dynamics/Ergodic/Action/Basic.lean,Mathlib/Dynamics/Ergodic/Action/OfMinimal.lean,Mathlib/Dynamics/Ergodic/Action/Regular.lean,Mathlib/Dynamics/Ergodic/AddCircle.lean,Mathlib/Dynamics/Ergodic/Ergodic.lean,Mathlib/Dynamics/Ergodic/Extreme.lean,Mathlib/Dynamics/Ergodic/MeasurePreserving.lean,Mathlib/MeasureTheory/Group/AEStabilizer.lean,Mathlib/MeasureTheory/Group/Action.lean,Mathlib/MeasureTheory/Group/Prod.lean,Mathlib/Order/Filter/EventuallyConst.lean |
11 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
2-12198 2 days ago |
5-74931 5 days ago |
5-74812 5 days |
| 43228 |
joelriou author:joelriou |
refactor(CategoryTheory): cleaning up `Functor.Elements` |
The objects and morphisms of `Functor.Elements` are redefined using structures. The definition which were in the `CategoryOfElements` namespace are moved to `Functor.Elements`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
462/444 |
Mathlib/AlgebraicGeometry/Sites/EtalePoint.lean,Mathlib/AlgebraicTopology/SimplicialSet/Simplices.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/CategoryTheory/Action.lean,Mathlib/CategoryTheory/Elements.lean,Mathlib/CategoryTheory/Functor/Flat.lean,Mathlib/CategoryTheory/Functor/TypeValuedFlat.lean,Mathlib/CategoryTheory/Grothendieck.lean,Mathlib/CategoryTheory/Limits/Elements.lean,Mathlib/CategoryTheory/Limits/Preserves/Presheaf.lean,Mathlib/CategoryTheory/Limits/Presheaf.lean,Mathlib/CategoryTheory/Limits/Weighted/HasWeightedLimit.lean,Mathlib/CategoryTheory/Sites/Point/Basic.lean,Mathlib/CategoryTheory/Sites/Point/Map.lean,Mathlib/CategoryTheory/Sites/Point/OfIsCofiltered.lean,Mathlib/CategoryTheory/Sites/Point/Skyscraper.lean,Mathlib/CategoryTheory/Sites/Subsheaf.lean,Mathlib/CategoryTheory/Subfunctor/Basic.lean,Mathlib/GroupTheory/FreeGroup/NielsenSchreier.lean,Mathlib/Topology/Sheaves/Flasque.lean,Mathlib/Topology/Sheaves/Points.lean |
21 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
2-10780 2 days ago |
2-12452 2 days ago |
2-53928 2 days |
| 41101 |
YaelDillies author:YaelDillies |
feat(Data/{ENat,ENNReal,EReal}): missing coercion lemmas |
From MeanFourier
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
30/0 |
Mathlib/Basic/Real/ENatENNReal.lean,Mathlib/Data/ENat/Monoid.lean,Mathlib/Data/EReal/Basic.lean |
3 |
11 |
['YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] |
TwoFX assignee:TwoFX |
2-10650 2 days ago |
2-12690 2 days ago |
62-13365 62 days |
| 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
|
59/0 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean |
1 |
91 |
['JadAbouHawili', 'SnirBroshi', 'github-actions', 'grunweg'] |
nobody |
2-5315 2 days ago |
14-61366 14 days ago |
22-30347 22 days |
| 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 |
370/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Affine/Menelaus.lean,Mathlib/LinearAlgebra/AffineSpace/Menelaus.lean,docs/1000.yaml |
4 |
6 |
['github-actions', 'jsm28', 'zcyemi'] |
nobody |
2-1756 2 days ago |
2-2271 2 days ago |
57-69888 57 days |
| 43229 |
yui9696 author:yui9696 |
feat(Probability/Moments): probability generating function |
Define the probability generating function `pgf X μ t = μ[t ^ X]` of an `ℕ`-valued random variable, mirroring the `mgf` API in `Mathlib/Probability/Moments/Basic.lean`.
API:
- values at `0` and `1`, nonnegativity, monotonicity and boundedness on `[0, 1]`;
- `integrable_pow_pgf`: the defining integrand is integrable on `[-1, 1]` for any finite measure;
- congruence lemmas (`pgf_congr`, `pgf_id_map`, `pgf_congr_identDistrib`);
- `pgf_eq_tsum`: the power-series form `pgf X μ t = ∑' n, μ.real (X ⁻¹' {n}) * t ^ n`;
- `pgf_exp_eq_mgf`: the bridge to the moment-generating function;
- `IndepFun.pgf_add` / `iIndepFun.pgf_sum`: the product formula for sums of independent variables.
Main result: `map_eq_map_of_pgf_eq` — **the generating function determines the law**. The point masses are read off as the coefficients of a power series of radius at least 1 (via `FormalMultilinearSeries.ofScalars`), and the uniqueness of power-series coefficients recovers them from the function.
Everything is stated for a general (finite) measure where possible, with `IsProbabilityMeasure` only where it is genuinely needed.
🤖 Generated with [Claude Code](https://claude.com/claude-code) |
t-measure-probability
LLM-generated
new-contributor
|
234/0 |
Mathlib.lean,Mathlib/Probability/Moments/PGF.lean |
2 |
3 |
['github-actions', 'yui9696'] |
nobody |
2-1695 2 days ago |
2-70186 2 days ago |
2-70066 2 days |
| 43242 |
xroblot author:xroblot |
chore: make Rat.castHom implicit_reducible |
Mark `Rat.castHom` as `@[implicit_reducible]`. The `Algebra ℚ` structure coming from `DivisionRing.toRatAlgebra` should now agree at instance transparency, and not only at default transparency, with the algebra structure a type already carries. Two examples record this, for an intermediate field of a field of characteristic zero and for `QuadraticAlgebra ℚ a b`. (The second one also needs the structure map of `QuadraticAlgebra.instAlgebra` to be given by the constructor rather than through `QuadraticAlgebra.C`, which is done here as well.)
One proof needed repair, in `Mathlib/FieldTheory/PrimeField.lean`. The benchmark reports no significant change.
Prepared with Claude Code 🤖
---
|
t-algebra label:t-algebra$ |
19/8 |
Mathlib/Algebra/QuadraticAlgebra/Basic.lean,Mathlib/Algebra/QuadraticAlgebra/Defs.lean,Mathlib/Data/Rat/Cast/CharZero.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/FieldTheory/PrimeField.lean |
5 |
16 |
['github-actions', 'leanprover-radar', 'riccardobrasca', 'sgouezel', 'xroblot'] |
nobody |
1-78873 1 day ago |
1-78873 1 day ago |
1-78753 1 day |
| 43181 |
harahu author:harahu |
chore(Data): fix typos |
Fix some typos in `Mathlib/Data` that were spotted 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-data
easy
|
36/35 |
Mathlib/Basic/Finite/Defs.lean,Mathlib/Data/Analysis/Filter.lean,Mathlib/Data/Bool/Count.lean,Mathlib/Data/DFinsupp/BigOperators.lean,Mathlib/Data/DFinsupp/Defs.lean,Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Data/Fin/Embedding.lean,Mathlib/Data/Finsupp/Fin.lean,Mathlib/Data/Finsupp/MonomialOrder.lean,Mathlib/Data/Finsupp/ToDFinsupp.lean,Mathlib/Data/Fintype/Order.lean,Mathlib/Data/Int/Basic.lean,Mathlib/Data/List/Infix.lean,Mathlib/Data/List/Pairwise.lean,Mathlib/Data/List/Sort.lean,Mathlib/Data/Multiset/DershowitzManna.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/Data/Nat/Digits/Lemmas.lean,Mathlib/Data/QPF/Multivariate/Basic.lean,Mathlib/Data/Rat/Cast/Lemmas.lean,Mathlib/Data/Set/Finite/Basic.lean,Mathlib/Data/Set/Function.lean,Mathlib/Data/Sigma/Lex.lean,Mathlib/Data/TypeVec.lean,Mathlib/Data/UInt.lean,Mathlib/Data/Vector/MapLemmas.lean,Mathlib/Data/ZMod/IntUnitsPower.lean |
28 |
3 |
['github-actions', 'harahu', 'mathlib-merge-conflicts'] |
nobody |
1-78498 1 day ago |
1-81699 1 day ago |
4-64178 4 days |
| 43158 |
Thmoas-Guan author:Thmoas-Guan |
refactor(Ideal/Cotangent): make `Ideal.Cotangent` implicit reducible |
In this PR we make `Ideal.Cotangent` implicit reducible and remove some `set_option`s.
Currently only one removing is not that satisfying: in `Ideal.Cotangent.lift_surjective_iff`, we need to fill in a proof in previous def again, even if we extract this proof as a separate lemma in prior.
Authored-by: @Whysoserioushah
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
16/21 |
Mathlib/RingTheory/Ideal/Cotangent.lean |
1 |
8 |
['Thmoas-Guan', 'github-actions', 'pelicanhere'] |
pelicanhere assignee:pelicanhere |
1-78369 1 day ago |
1-81887 1 day ago |
5-85810 5 days |
| 41484 |
FernandoChu author:FernandoChu |
feat(CategoryTheory): kan extensions from isos |
This PR constructs lifts out of isomorphisms of 1-cells, and shows that being (abs) Kan is preserved by this. This is done for all four notions of left/right lifts/extensions.
This is needed for the oo-cosmos project.
----
**AI disclosure**. Claude was used in defining the API for the left extension case. After manually fixing its bad proofs/definitions/docstrings, Claude was later asked to replicate this for the other three cases, which I again finetuned. |
t-category-theory
LLM-generated
large-import
|
373/33 |
Mathlib/CategoryTheory/Bicategory/Extension.lean,Mathlib/CategoryTheory/Bicategory/Kan/IsKan.lean |
2 |
19 |
['FernandoChu', 'github-actions', 'grunweg', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
1-75941 1 day ago |
1-76538 1 day ago |
53-82702 53 days |
| 37910 |
wwylele author:wwylele |
feat(Geometry/Euclidean): volume of a simplex |
This defines the volume of a simplex in Euclidean geometry, and shows that it agrees with measure theory. It also adds the basic set of lemmas (base-and-height formula, reindex, positivity, map, and restrict). Further properties of the volume will be in future PRs.
Three new file s are introduced and organized in the following dependency chain:
Def.lean -> MeasureSimplex.Lean -> Basic.lean
The Def.lean file has the definition only. MeasureSimplex.lean pulls in measure theory. Basic.lean publicly imports Def.lean, and privately imports MeasureSimplex.lean. When a downstream file imports Basic.lean, the measure theory part is not exposed and all properties of the volume is provided.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #36018
- [x] depends on: #43054
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry
t-measure-probability
|
303/3 |
Mathlib.lean,Mathlib/Geometry/Euclidean/Altitude.lean,Mathlib/Geometry/Euclidean/Volume/Basic.lean,Mathlib/Geometry/Euclidean/Volume/Def.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/Geometry/Euclidean/Volume/MeasureSimplex.lean,MathlibTest/Tactic/Positivity.lean |
7 |
38 |
['CoolRmal', 'YanYablonovskiy', 'copilot-pull-request-reviewer', 'felixpernegger', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'wwylele'] |
CoolRmal assignee:CoolRmal |
1-73625 1 day ago |
1-75041 1 day ago |
53-74793 53 days |
| 41486 |
TTony2019 author:TTony2019 |
feat(Analysis/Convex/Intrinsic): add open segment intrinsic interior results |
Add open segment intrinsic interior results: `x ∈ intrinsicInterior 𝕜 C` and `y ∈ intrinsicClosure 𝕜 C`, then the open segment
from `x` to `y` stays in `intrinsicInterior 𝕜 C`.
Co-authored-by: Zichen Wang <imathwy@users.noreply.github.com> |
t-topology
new-contributor
t-analysis
|
70/0 |
Mathlib/Analysis/Convex/Intrinsic.lean,Mathlib/Analysis/Convex/Topology.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Homeomorph/Defs.lean |
4 |
9 |
['TTony2019', 'github-actions', 'j-loreaux', 'themathqueen'] |
nobody |
1-70941 1 day ago |
23-54398 23 days ago |
51-63910 51 days |
| 39212 |
emlis42 author:emlis42 |
feat(Algebra/ContinuedFractions): add `partNums!` and `partDens!` |
This PR adds `partNums!` and `partDens!`, which provide infinite stream representations for the sequences of partial numerators and denominators of a generalized continued fraction. |
t-algebra
new-contributor
label:t-algebra$ |
67/35 |
Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/ContinuedFractions/ContinuantsRecurrence.lean,Mathlib/Algebra/ContinuedFractions/Determinant.lean,Mathlib/Algebra/ContinuedFractions/Translations.lean |
4 |
6 |
['emlis42', 'eric-wieser', 'github-actions', 'grunweg'] |
eric-wieser assignee:eric-wieser |
1-70694 1 day ago |
113-61126 113 days ago |
113-61006 113 days |
| 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'] |
urkud assignee:urkud |
1-68806 1 day ago |
5-49958 5 days ago |
19-55712 19 days |
| 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.
---
- [ ] 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 |
134/0 |
Mathlib.lean,Mathlib/Topology/Sheaves/KSheaf.lean |
2 |
9 |
['github-actions', 'joelriou', 'mathlib-dependent-issues', 'ymonbru'] |
nobody |
1-64742 1 day ago |
1-65333 1 day ago |
59-80655 59 days |
| 43196 |
danderson70-UNL author:danderson70-UNL |
doc: add Jacobi Four-Square proof to the list of 1000 theorems |
|
new-contributor |
3/0 |
docs/1000.yaml |
1 |
3 |
['github-actions'] |
nobody |
1-62486 1 day ago |
4-42033 4 days ago |
4-41913 4 days |
| 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$ |
10/1 |
Mathlib/LinearAlgebra/TensorProduct/Basic.lean |
1 |
8 |
['Ljon4ik4', 'Ruben-VandeVelde', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
1-60683 1 day ago |
1-62820 1 day ago |
45-2774 45 days |
| 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
t-analysis
|
140/0 |
Mathlib/NumberTheory/Divisors.lean,Mathlib/NumberTheory/SelbergSieve.lean |
2 |
35 |
['AlexKontorovich', 'MichaelStollBayreuth', 'ajirving', 'amellendijk', 'github-actions', 'loefflerd', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] |
loefflerd assignee:loefflerd |
1-60446 1 day ago |
54-81050 54 days ago |
58-39257 58 days |
| 42669 |
kris-gaudel author:kris-gaudel |
feat(Analysis/Convex): add `ShapleyFolkman` lemma |
Closes https://github.com/leanprover-community/mathlib4/issues/14427
Formalizes the Shapley-Folkman Lemma, uses the proof outlined [here](https://en.wikipedia.org/wiki/Shapley%E2%80%93Folkman_lemma#Proofs) (Via reduction from Carathéodory's theorem) |
t-analysis
new-contributor
|
346/0 |
Mathlib.lean,Mathlib/Analysis/Convex/ShapleyFolkman.lean |
2 |
3 |
['github-actions'] |
nobody |
1-60280 1 day ago |
21-45047 21 days ago |
21-44927 21 days |
| 41811 |
YaelDillies author:YaelDillies |
chore(CategoryTheory): use the new `↧` notation in concrete categories |
... as well as the corresponding delaborator. Also remove one extra line break added by the previous PR.
Generated by Claude Opus, reviewed line-by-line by myself.
Assisted-by: Claude Opus 4.8
---
- [x] depends on: #41810
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
LLM-generated
|
376/277 |
Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/BoolRing.lean,Mathlib/Algebra/Category/CommAlgCat/Basic.lean,Mathlib/Algebra/Category/Grp/Zero.lean,Mathlib/Algebra/Category/ModuleCat/Semi.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Category/MonCat/Basic.lean,Mathlib/Algebra/Category/Ring/Adjunctions.lean,Mathlib/Algebra/Category/Ring/Basic.lean,Mathlib/Algebra/Category/Ring/Colimits.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Category/Ring/Limits.lean,Mathlib/Algebra/Category/Ring/Small.lean,Mathlib/Algebra/Category/Ring/Topology.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexCohomology.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicGeometry/AffineSpace.lean,Mathlib/AlgebraicGeometry/AlgClosed/Basic.lean,Mathlib/AlgebraicGeometry/Cover/Open.lean,Mathlib/AlgebraicGeometry/GammaSpecAdjunction.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Subscheme.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/AlgebraicGeometry/Morphisms/Proper.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/AlgebraicGeometry/ResidueField.lean,Mathlib/AlgebraicGeometry/Scheme.lean,Mathlib/AlgebraicGeometry/Sites/ConstantSheaf.lean,Mathlib/AlgebraicGeometry/Spec.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/AlgebraicGeometry/ValuativeCriterion.lean,Mathlib/AlgebraicGeometry/ZariskisMainTheorem.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Product.lean,Mathlib/AlgebraicTopology/TopologicalSimplex.lean,Mathlib/CategoryTheory/ConcreteCategory/Notation.lean,Mathlib/CategoryTheory/Extensive.lean,Mathlib/CategoryTheory/FintypeCat.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Cat.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Ring.lean,Mathlib/CategoryTheory/Presentable/CardinalDirectedPoset.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/Basic.lean,Mathlib/Condensed/Light/TopCatAdjunction.lean,Mathlib/Condensed/TopCatAdjunction.lean,Mathlib/Geometry/Manifold/Sheaf/Basic.lean,Mathlib/Geometry/Manifold/Sheaf/LocallyRingedSpace.lean,Mathlib/Geometry/Manifold/Sheaf/Smooth.lean,Mathlib/Geometry/RingedSpace/LocallyRingedSpace.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace.lean,Mathlib/Geometry/RingedSpace/SheafedSpace.lean,Mathlib/Order/Category/BddDistLat.lean,Mathlib/Order/Category/BddLat.lean,Mathlib/Order/Category/BddOrd.lean,Mathlib/Order/Category/BoolAlg.lean,Mathlib/Order/Category/CompleteLat.lean,Mathlib/Order/Category/DistLat.lean,Mathlib/Order/Category/FinBddDistLat.lean,Mathlib/Order/Category/FinBoolAlg.lean,Mathlib/Order/Category/FinPartOrd.lean,Mathlib/Order/Category/Frm.lean,Mathlib/Order/Category/HeytAlg.lean,Mathlib/Order/Category/Lat.lean,Mathlib/Order/Category/LinOrd.lean,Mathlib/Order/Category/NonemptyFinLinOrd.lean,Mathlib/Order/Category/OmegaCompletePartialOrder.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/Category/PartOrdEmb.lean,Mathlib/Order/Category/Preord.lean,Mathlib/Order/Category/Semilat.lean,Mathlib/Order/NonemptyFiniteChains.lean,Mathlib/RingTheory/Etale/Finite.lean,Mathlib/RingTheory/PicardGroup.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Basic.lean,Mathlib/Topology/Category/CompHaus/Basic.lean,Mathlib/Topology/Category/CompHausLike/Basic.lean,Mathlib/Topology/Category/CompactlyGenerated.lean,Mathlib/Topology/Category/Compactum.lean,Mathlib/Topology/Category/FinTopCat.lean,Mathlib/Topology/Category/Profinite/Basic.lean,Mathlib/Topology/Category/Sequential.lean,Mathlib/Topology/Category/Stonean/Adjunctions.lean,Mathlib/Topology/Category/TopCat/Basic.lean,Mathlib/Topology/Category/TopCat/Limits/Basic.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,Mathlib/Topology/Category/TopCat/Monoidal.lean,Mathlib/Topology/Category/TopCat/Opens.lean,Mathlib/Topology/Category/TopCat/ULift.lean,Mathlib/Topology/Category/TopCommRingCat.lean,Mathlib/Topology/Category/TopPair.lean,Mathlib/Topology/Category/UniformSpace.lean,Mathlib/Topology/Convenient/Category.lean,Mathlib/Topology/Gluing.lean,Mathlib/Topology/Order/Category/AlexDisc.lean,Mathlib/Topology/Order/Category/FrameAdjunction.lean |
105 |
5 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
dagurtomas assignee:dagurtomas |
1-59845 1 day ago |
1-61320 1 day ago |
12-43795 12 days |
| 43214 |
wwylele author:wwylele |
feat(Analysis/Normed/Affine): mapping ball/sphere by homothety |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
large-import
|
36/0 |
Mathlib/Analysis/Normed/Affine/AddTorsor.lean |
1 |
9 |
['copilot-pull-request-reviewer', 'github-actions', 'themathqueen', 'wwylele'] |
nobody |
1-58101 1 day ago |
2-73284 2 days ago |
3-50758 3 days |
| 43264 |
riccardobrasca author:riccardobrasca |
feat: add Algebra.Polynomial.Laurent.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$ |
52/0 |
Mathlib.lean,Mathlib/Algebra/Polynomial/Laurent/Roots.lean |
2 |
1 |
['github-actions'] |
nobody |
1-56309 1 day ago |
1-58714 1 day ago |
1-58594 1 day |
| 43265 |
gasparattila author:gasparattila |
fix: make `Equiv.addEquiv` implicit-reducible |
Without this change, defining instances using `someEquiv.addCommGroup` and `someEquiv.addEquiv.module` results in non-defeq `NSMul` and `ZSMul` 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-algebra label:t-algebra$ |
8/1 |
Mathlib/Algebra/Group/TransferInstance.lean,Mathlib/LinearAlgebra/AffineSpace/Homogenization.lean |
2 |
1 |
['github-actions'] |
nobody |
1-55406 1 day ago |
1-57726 1 day ago |
1-57606 1 day |
| 38002 |
Raph-DG author:Raph-DG |
feat(Topology): relating codimension one points in non dense subsets to irreducible components |
In this PR we show that the coheight zero points of a sober space (in the specialization order) correspond to the irreducible components. Furthermore, we show that the coheight one points of any non dense subset p of X (in the specialization order on X) have coheight zero in the specialization order on 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-topology
maintainer-merge
|
85/0 |
Mathlib/Order/KrullDimension.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/KrullDimension.lean,Mathlib/Topology/Sober.lean |
4 |
17 |
['ADedecker', 'Raph-DG', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts'] |
alreadydone assignee:alreadydone |
1-47866 1 day ago |
1-53691 1 day ago |
135-66144 135 days |
| 43140 |
kirill-kondrashov author:kirill-kondrashov |
feat(LinearAlgebra/ExteriorPower): add 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/)
Implements the plan [#maths > Hodge star operator @ 💬](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Hodge.20star.20operator/near/619251295)
GPT-5.6 Luna Max was used to fill in the sorry blocks in a manually written definition with a review comments from Zulip from @ocfnash .
Then there were conducted many iterations of manual and LLM-generated changes with very specific prompts addressing concrete code issues until the initial iteration was almost fully overwritten.
Co-authored-by: @ocfnash |
LLM-generated
new-contributor
t-algebra
label:t-algebra$ |
203/0 |
Mathlib.lean,Mathlib/LinearAlgebra/ExteriorPower/HodgeStar.lean,Mathlib/LinearAlgebra/ExteriorPower/WedgePairing.lean |
3 |
8 |
['github-actions', 'kirill-kondrashov', 'mathlib-bors', 'wwylele'] |
nobody |
1-47348 1 day ago |
4-75240 4 days ago |
4-75150 4 days |
| 43268 |
naype888-cloud author:naype888-cloud |
feat(Analysis/SpecialFunctions): the cosecant-squared identity |
# feat(Analysis/SpecialFunctions): the cosecant-squared identity ∑ csc²(kπ/N) = (N²−1)/3
Adds the classical finite identity
$$\sum_{k=1}^{N-1}\csc^2\!\Big(\frac{k\pi}{N}\Big)=\frac{N^2-1}{3},$$
stated over `Real.sin` as
`∑ k ∈ Finset.Ico 1 N, (Real.sin (k * π / N))⁻¹ ^ 2 = (N ^ 2 - 1) / 3` for `1 ≤ N`,
together with the four Chebyshev-`U` facts its proof needs. One new file plus its import line.
Mathlib currently has no finite `csc²`/`cot²` sum (`Trigonometric/Cotangent.lean` is the infinite
Mittag-Leffler series). The related `∑_{k=1}^{m} cot²(kπ/(2m+1)) = m(2m-1)/3` is the arithmetic
core of the elementary `∑ 1/k² = π²/6` in *Proofs from THE BOOK* — happy to add it here if wanted.
## Files
- **`Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/CosecantSq.lean`** — new file.
- **`Mathlib.lean`** — one import line (kept sorted).
## Statements added — all in the new file
| Name | Statement |
|---|---|
| `Polynomial.Chebyshev.splits_U_real` | `(U ℝ n).Splits` (via `splits_iff_card_roots` + `roots_U_real`). |
| `Polynomial.Chebyshev.roots_U_real_map_neg` | `(U ℝ n).roots.map (- ·) = (U ℝ n).roots` — the real roots are symmetric about `0` (via `map_roots_comp_C_mul_X_add_C` and `Polynomial.funext`). |
| `Polynomial.Chebyshev.sum_one_div_one_sub_roots_U_real` | `∑ 1 / (1 - z)` over the real roots `= ((n + 1) ^ 2 - 1) / 3` (logarithmic derivative at `1`, `derivative_U_eval_one_eq_div`). |
| `Polynomial.Chebyshev.sum_one_div_one_add_roots_U_real` | same value for `∑ 1 / (1 + z)` — the previous sum after `roots_U_real_map_neg`. |
| `Polynomial.Chebyshev.abs_lt_one_of_mem_roots_U_real` | every real root of `U ℝ n` satisfies `|z| < 1`. |
| `Polynomial.Chebyshev.sum_one_div_one_sub_sq_roots_U_real` | `∑ 1 / (1 - z ^ 2)` over the real roots `= ((n + 1) ^ 2 - 1) / 3` (average of the two, partial fractions). |
| `Real.sum_inv_sin_sq_pi_div` | **the identity.** `1 - cos² = sin²` applied termwise to the previous sum with `N = n + 1`. |
## Notes for the reviewer
- **Placement / split.** The first block (`splits_U_real`, `roots_U_real_map_neg`,
`abs_lt_one_of_mem_roots_U_real`) are stand-alone facts about `U ℝ n` and could move next to
`roots_U_real` in `Chebyshev/RootsExtrema.lean`, leaving only the sums and the identity in this
file. Glad to split into a prerequisite PR if preferred.
- **Naming.** `Real.sum_inv_sin_sq_pi_div` — open to a better name.
- Hypotheses are minimal: the `sum_one_div_…_roots_U_real` lemmas hold for all `n` (empty root
multiset at `n = 0`); the identity needs only `1 ≤ N` (`N = 1` gives `0 = 0`).
## AI disclosure
AI-assisted (Claude). The author has certified every statement and proof step and verified the
references (Cauchy, *Cours d'analyse*, 1821; Aigner–Ziegler, *Proofs from THE BOOK*, "π²/6").
|
t-analysis
new-contributor
LLM-generated
|
157/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/CosecantSq.lean |
2 |
3 |
['github-actions', 'wwylele'] |
nobody |
1-46082 1 day ago |
1-47135 1 day ago |
1-47015 1 day |
| 43143 |
martinwintermath author:martinwintermath |
feat(LinearAlgebra/SesquilinearForm): add instances for SeparatingLeft, SeparatingRight and Nondegenerate |
Add typeclass instances for `Fact B.SeparatingLeft`, `Fact B.SeparatingRight`, `Fact B.Nondegenerate`:
* inferring `Fact B.flip.SeparatingLeft` from `Fact B.SeparatingRight` and vice versa
* inferring `Fact B.SeparatingLeft` and `Fact B.SeparatingRight` from `Fact B.Nondegenerate`
* inferring `Fact B.SeparatingLeft` and `Fact B.Nondegenerate` for `.id` and `Dual.eval`
* inferring `Fact B.Nondegenerate` from `B.IsPerfPair`
I also updated `PointedCone.dual_univ` to demonstrate a use for these additions. Note that I needed to add an import to `Cone/Dual.lean` which somehow imports cardinals. So I needed to remove cardinals from `assert_not_exists`.
Zulip: [#mathlib4 > Typeclass instances for separating bilinear forms](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Typeclass.20instances.20for.20separating.20bilinear.20forms/with/570348517)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [x] depends on: #34487
[](https://gitpod.io/from-referrer/)
|
large-import
t-algebra
label:t-algebra$ |
33/4 |
Mathlib/Geometry/Convex/Cone/Dual.lean,Mathlib/LinearAlgebra/PerfectPairing/Basic.lean,Mathlib/LinearAlgebra/SesquilinearForm/Basic.lean |
3 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
1-44781 1 day ago |
1-46011 1 day ago |
1-49535 1 day |
| 42407 |
tb65536 author:tb65536 |
refactor(Algebra/Group/*): redefine `IsAddTorsionFree` and `IsMulTorsionFree` |
This PR redefines torsion-free to be that exponentiation by every non-zero element `n : ℕ` is injective on commuting elements (i.e., `a * b = b * a → a ^ n = b ^ n → a = b`).
For commutative monoids, this is equivalent to `a ^ n = b ^ n → a = b`.
For groups, this is equivalent to `a ^ n = 1 → a = 1`.
Thus, this definition reconciles the notions of torsion-free for groups and commutative semigroups.
This definition was taken from this mathoverflow answer: https://mathoverflow.net/a/377268/95685
Zulip thread: [#mathlib4 > Definition of `IsMulTorsionFree`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Definition.20of.20.60IsMulTorsionFree.60/with/614317763)
The old definition has been renamed to `HasUniqueRoots` and `HasUniqueDiv` (analogous to `RootableBy` and `DivisibleBy`).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-group-theory
label:t-algebra$ |
169/66 |
Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/Group/Commute/Defs.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Int/Defs.lean,Mathlib/Algebra/Group/Monoid.lean,Mathlib/Algebra/Group/Nat/Defs.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Pi/Torsion.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/Algebra/Group/Torsion.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/GroupWithZero/Torsion.lean,Mathlib/Algebra/Module/Rat.lean,Mathlib/Algebra/Module/Torsion/Free.lean,Mathlib/Algebra/NoZeroSMulDivisors/Defs.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Pow.lean,Mathlib/Algebra/Ring/CharZero.lean,Mathlib/Algebra/Ring/Torsion.lean,Mathlib/Basic/Complex/Basic.lean,Mathlib/GroupTheory/FreeGroup/CyclicallyReduced.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/NumberTheory/Padics/MahlerBasis.lean,Mathlib/RingTheory/Binomial.lean |
26 |
14 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'tb65536'] |
nobody |
1-41188 1 day ago |
1-44202 1 day ago |
23-52422 23 days |
| 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 |
1-40367 1 day ago |
1-75162 1 day ago |
1-75042 1 day |
| 41983 |
marcelolynch author:marcelolynch |
fix(cache): avoid misleading message on refs not built "on purpose" |
`cache get` on a fork printed a "no cache found for HEAD" note whenever the per-SHA fork marker was absent, even when every file was then served from mathlib's master cache — which is always the case for a tooling-only PR (its CI build stages zero files, so the upload job and the marker are skipped by design). Reported in https://github.com/leanprover-community/mathlib4/pull/41707#discussion_r3602459565.
The note is now printed after the download rounds and only when files are actually missing; `cache query`'s no-result message names both possible causes (CI hasn't built the commits, or its builds had nothing fork-specific to upload) instead of claiming the first.
🤖 Generated with [Claude Code](https://claude.com/claude-code) |
CI
LLM-generated
maintainer-merge
|
202/86 |
Cache/Main.lean,Cache/Query.lean,Cache/Requests.lean,Cache/Test.lean,Cache/Warning.lean |
5 |
2 |
['github-actions', 'joneugster'] |
nobody |
1-40252 1 day ago |
35-55206 35 days ago |
35-55086 35 days |
| 42850 |
DavidLedvinka author:DavidLedvinka |
feat(Tactic): `inclusion` tactic (highly extensible engine for interval arithmetic, ball arithmetic etc...) |
## Overview
The primary function of the inclusion tactic is as follows: Given an expression `e` (for example the type of a goal), compute an inclusion expression for `e`:
(In `Inclusion/Core/Types`)
```lean
structure ExprInclusion where
inclusion : Expr
proof : Expr
```
where `inclusion` is some expression that is built up of some kernel computation friendly expressions in some kernel computation friendly type, and `proof` is a proof of `e ∈ inclusion`.
Since `inclusion` itself is meant to live in some kernel computation friendly type, we need a way to interpret `inclusion` as a set in the type of `e`. That is the idea behind the following class :
(In `Inclusion/Core/ToSet`)
```lean
class ToSet (Iα : Type*) (α : outParam Type*) where
toSet : Iα → Set α
```
Examples can be things like "intervals with dyadic endpoints" to sets of `ℝ`, "vectors of intervals of dyadic endpoints" to sets of `ℝⁿ`, "balls with a dyadic complex center and dyadic radius" to sets of `ℂ` etc...
The most important example however is `IntervalBool` to `Prop`:
```lean
def IntervalBool.toPropSet : IntervalBool → Set Prop
| true => {True}
| false => {False}
| undetermined => {True, False}
instance : ToSet IntervalBool Prop := ⟨IntervalBool.toPropSet⟩
```
Using this, the tactic can generate an inclusion expression for a goal like `x ^ 2 + 1 < 5`, and then
the proof of the goal is `proof` that `(x ^2 + 1 < 5) ∈ inclusion` along with a proof by reflection
that `inclusion = IntervalBool.true`.
## Constructing `ExprInclusion`s
`ExprInclusion`s are constructed in two phases which take place inside two different monads. The first phase takes place in the `InclusionM` monad and is to construct an inclusion body:
(In `Inclusion/Core/Types`)
```lean
structure ExprInclusionBody where
inclusionBody : Expr
proofBody : Expr
```
which is the same as `ExprInclusion` except that `inclusionBody` is allowed to have "free `IVar`s (inclusion variables)" (see the structure `IVar` in `Inclusion/Core/Types`) which represent "atomic" variables whose initial value will be determined by hypotheses in the local context (in the next phase). As an example, if we are applying the `inclusion` tactic to the goal `(x : ℝ) + 1 ≤ 5` then (depending on which extensions we have enabled) we might have that `x` is made into an `IVar`, which contains the expression of a placeholder variable `I` (which could be of type `Interval Dyadic` for example) and a placeholder hypothesis `x ∈ I`. For technical reasons these variables are synthetic opaque metavariables rather than free variables.
Remark: The technical reason that `IVar`s use synthetic opaque metavariables is that metavariables
are stored in the state of MetaM and are mutable. Free variables are stored in the local context
and are not mutable. Since the tactic constructs `IVar`s during the `InclusionM` phase and doesn't
know how many `IVars` there are or what they will be, it makes it difficult to use free variables.
The `InclusionM` phase uses inclusion extensions:
(In `Inclusion/Core/Extensions`)
```lean
structure InclusionExt where
declName : Name := by exact decl_name%
family : Name
userName : Name := declName
derive (e : Expr) : InclusionM ExprInclusionBody
priority : Nat := eval_prio default
```
which belong to families (for example `interval_dyadic_real` containing extensions involving computations as intervals of dyadics as inclusions for operations on the reals) and are registered under discrimination tree keys which determine which expressions they match on (and thus can possibly apply to).
The main driver of this phase is the function `mkExprInclusionBody` (in`Inclusion/Core/Inclusion`) which collects all the extensions (from enabled families) that match the current expression `e`, sort them in order of priority, and then try applying their `derive` to `e` until one succeeds in producing an `ExprInclusionBody`. The expectation is that if `derive e` succeeds it should produce a valid `ExprInclusionBody` for `e` and the metadata in the InclusionM monad should be up to date. Many `derive`s will recursively call `mkExprInclusionBody`, for example you would expect that the extension which matches `e := e1 ≤ e2` will call `mkExprInclusionBody` on `e1` and `e2` and then combine the results to produce the `ExprInclusionBody` for `e`.
The second phase takes place in the `HypothesisM` monad. In this phase, initial inclusion expressions
for each `IVar` appearing in the `ExprInclusionBody` (constructed in the previous phase) are derived
from hypotheses in the local context. Then these hypotheses are used to "close" the body and
construct the final `ExprInclusion`. If an `IVar` has an enabled `cover` it is used to "divide" the
inclusion computation into checks on each of the smaller pieces, effectively creating a refined
inclusion function.
This phase uses hypothesis extensions:
(In `Inclusion/Core/Extensions`)
```lean
structure HypothesisExt where
declName : Name := by exact decl_name%
family : Name
userName : Name := declName
derive (h : Expr) : HypothesisM Unit
priority : Nat := eval_prio default
```
which also belong to families and are registered under discrimination tree keys just like
`InclusionExt`s. Here though `derive h` generates inclusion hypotheses from a local hypotheses `h`
and puts them into the state of HypothesisM. The main driver for this phase is `collectHyps` (in `Inclusion/Core/Inclusion`) which loops over all local declarations `h`, finds all hypothesis
extensions matching the type of `h`, and then tries each of their `derive` functions. The changes
made by a failed extension are rolled back, while every successful extension is allowed to add one or more inclusion hypotheses.
## Params
It is convenient to allow `InclusionExt`s and `HypothesisExt`s to depend on shared parameters
which can be set by the user:
(In `Inclusion/Core/Extensions`)
```lean
structure InclusionParamDecl where
name : Name
type : Expr
defaultValue? : Option Expr := none
```
The two examples in the current PR are:
`prec`: which sets the dyadic precision (in bits) that each extension should use
`binSplit`: which sets the depth of binary interval splitting for each `IVar`.
These can be set by the user when calling the tactic like:
`inclusion [core, interval_dyadic_real, prec := 20, binSplit := 3]`
Two additional features which are not present in the current PR
(and will require a bit of refactoring) which will be added later are:
1. The ability to set "local" params. An important example being you may only want to set
binary splitting on one specific variable (since doing it on each grows the number of cases
exponentially)
2. The ability for `inclusion?` to "search" for optimal parameters using a compiled `ExprInclusion`
function. To be maximally efficient these will have to be restricted to specific types (maybe
just Nats) so that the function can be compiled once and used repeatedly.
## Writing Extensions
One can directly write inclusion and hypotheses extensions like:
```lean
@[inclusionExt (_ : ℝ)]
meta def mkRealIVar : InclusionExt :=
mkNDIVarExt `interval_dyadic_real
⟨q(ℝ), q(Interval Dyadic), q(instToSetIntervalDyadicReal)⟩ mkBinarySplitCover
```
```lean
@[hypothesisExt _ ∧ _]
meta def andHyp : HypothesisExt where
family := `core
derive h := do
let (``And, #[_, _]) := (← instantiateMVars (← inferType h)).getAppFnArgs | failure
runHypothesisExts (← mkAppM ``And.left #[h])
runHypothesisExts (← mkAppM ``And.right #[h])
```
where each expression supplied to `inclusionExt` or `hypothesisExt` is elaborated and then converted
into a DiscrTreeKey that the extension matches on.
However it is up to the extender to make sure both that the extension is deriving the right
inclusion body or hypotheses and is correctly maintaining the state of the current monad. This
approach to writing extensions gives significant flexibility but also could be highly error prone.
Just like MetaM has both lots of low level functions that are capable of breaking things and should usually be avoided, as well as higher level functions that are meant to be safer for tactic writers
to use, `Inclusion/ExtensionAPI` is meant to provide functions that extenders can use which maintain
the invariants expected by the `InclusionM` or `HypothesisM` monad. Most of these are currently
in `Inclusion/ExtensionAPI/Basic`. I expect many more to be added as the tactic develops.
The rules for `InclusionM` are:
* When an `InclusionExt` succeeds on an expression `e`, it must return an `ExprInclusionBody` whose
`proofBody` proves `e ∈ inclusionBody` using a `ToSet` instance.
* Every inclusion-variable placeholder in the returned body must belong to an `IVar` registered in
`InclusionM.State`. Its `setVar` must have the registered set type, and its `hypVar` must prove
that its associated expression belongs to `setVar` using the registered `ToSet` instance.
* Every registered `IVar` must be well formed in the initial local context. If it has a cover, the
cover expression must have the corresponding `Cover` type.
* The returned body must not depend on untracked metavariables or temporary free variables
introduced while running the extension.
The rules for `HypothesisM` are:
* Every inclusion hypothesis added by a `HypothesisExt` must be associated with an existing `IVar`.
* Each added `ExprInclusionBody` must have the same element type, set type, and `ToSet` instance as
that `IVar`. Its `proofBody` must prove that the associated expression belongs to its
`inclusionBody`.
* An added `inclusionBody` must not contain unresolved inclusion-variable placeholders.
But for certain `InclusionExt`s or `HypothesisExt`s that fit a (very specific) mold, there is an
API for defining extensions that doesn't even require metaprogramming. Instead you add a attribute
to a theorem which must be formatted in a specific way. We give these a special name
`InclusionOp`s and `HypothesisOp`s. Here are some examples:
```lean
@[inclusionOp interval_dyadic_real]
theorem add_mem {x y : ℝ} {I J : Interval Dyadic} (hx : x ∈ I) (hy : y ∈ J) :
x + y ∈ I.add J :=
Interval.add_mem Dyadic.toRealAddMonoidHom hx hy
```
```lean
@[hypothesisOp interval_dyadic_real]
theorem Iic_mem_of_le {x y : ℝ} {I : Interval Dyadic} (hxy : x ≤ y) (hy : y ∈ I) :
x ∈ Interval.Iic I.ub :=
Interval.mem_Iic_of_le hxy hy
```
The rules for `InclusionOp`s are:
* The theorem must conclude with an inclusion `e ∈ I` using a `ToSet` instance. The expression
`e` becomes the discrimination-tree pattern, while `I` becomes the resulting inclusion body.
* Every hypothesis of the form `x ∈ X` using a `ToSet` instance is treated as a recursive input.
Both `x` and `X` must be theorem variables, and `x` must occur in `e`. The generated extension
recursively constructs an inclusion body for `x`, then substitutes its inclusion and proof for
`X` and the hypothesis.
* To use a registered inclusion parameter, the theorem must have an argument with the same name and
type as that parameter. The generated extension supplies its current value. The parameter may
occur in `I`, but it may not occur in `e`.
* All remaining theorem arguments must be determined by matching the theorem or by typeclass
synthesis.
The rules for `HypothesisOp`s are:
* The theorem must conclude with an inclusion `e ∈ I` using a `ToSet` instance.
* The theorem must have exactly one explicit proposition hypothesis which is not itself an inclusion.
This hypothesis is the source hypothesis, and its type becomes the discrimination-tree pattern. Its
proof may not occur in `e` or `I`.
* Every hypothesis of the form `x ∈ X` using a `ToSet` instance is treated as a recursive input.
Both `x` and `X` must be theorem variables, and `x` must occur in the source hypothesis. The
generated extension recursively constructs a closed inclusion body for `x`, then substitutes its
inclusion and proof for `X` and the hypothesis.
* When the generated extension runs, `e` must be the expression associated with an existing `IVar`.
The extension adds `I` as an inclusion hypothesis for that `IVar`.
* To use a registered inclusion parameter, the theorem must have an argument with the same name and
type as that parameter. The generated extension supplies its current value. The parameter may
occur in `I`, but it may not occur in the source hypothesis or `e`.
* All remaining theorem arguments must be determined by matching the theorem or by typeclass
synthesis.
- [ ] depends on: #43194 |
t-meta |
2823/0 |
Mathlib.lean,Mathlib/Data/Dyadic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Inclusion/Core/Core.lean,Mathlib/Tactic/Inclusion/Core/DiscrTreeExt.lean,Mathlib/Tactic/Inclusion/Core/Elab.lean,Mathlib/Tactic/Inclusion/Core/Expr.lean,Mathlib/Tactic/Inclusion/Core/Extensions.lean,Mathlib/Tactic/Inclusion/Core/Inclusion.lean,Mathlib/Tactic/Inclusion/Core/ToSet.lean,Mathlib/Tactic/Inclusion/Core/Types.lean,Mathlib/Tactic/Inclusion/Extension/Core/Core.lean,Mathlib/Tactic/Inclusion/Extension/Core/Init.lean,Mathlib/Tactic/Inclusion/Extension/Interval.lean,Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Basic.lean,Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/BinarySplit.lean,Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Hypotheses.lean,Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Init.lean,Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Rational.lean,Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Tactic.lean,Mathlib/Tactic/Inclusion/ExtensionAPI/Attr.lean,Mathlib/Tactic/Inclusion/ExtensionAPI/Basic.lean,MathlibTest/Tactic/Inclusion/Basic.lean,MathlibTest/Tactic/Inclusion/NativeLinter.lean |
24 |
38 |
['DavidLedvinka', 'github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'thorimur'] |
Vierkantor assignee:Vierkantor |
1-38709 1 day ago |
1-39637 1 day ago |
4-30457 4 days |
| 43174 |
Raph-DG author:Raph-DG |
feat(RingTheory): algebraic hartog's lemma for ufds |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
94/0 |
Mathlib/RingTheory/Ideal/UFD.lean |
1 |
1 |
['github-actions'] |
nobody |
1-38386 1 day ago |
1-38386 1 day ago |
1-38266 1 day |
| 40266 |
WangJiabai author:WangJiabai |
feat(RingTheory/MvPolynomial): define generic determinantal ideals |
This PR adds a foundational API for determinantal ideals of the generic matrix.
It defines `Matrix.MinorIndex`, the corresponding minors of the existing generic
matrix `Matrix.mvPolynomialX`, the finite set of all `t × t` generic minors, and
the ideal generated by these minors in `MvPolynomial (Fin m × Fin n) R`.
It also proves basic membership, evaluation, coefficient-map/base-change, and
finite-generation lemmas.
This PR intentionally does not include the Sturmfels/KRS/straightening/Groebner
part of the development.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Additional context:
This is extracted and refactored from a standalone project on determinantal
ideals and the Gröbner-basis theorem for generic determinantal ideals:
https://github.com/WangJiabai/Determinantal-Ideals-Formalization
The current PR is intentionally limited to the small foundational API for
generic minors and generic determinantal ideals.
AI use:
ChatGPT was used for planning/refactoring discussion, and Codex was used to
draft some proof scripts. I reviewed the statements and proofs and am
responsible for the submitted code.
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
LLM-generated
|
227/0 |
Mathlib.lean,Mathlib/RingTheory/MvPolynomial/DeterminantalIdeal.lean |
2 |
3 |
['WangJiabai', 'github-actions'] |
riccardobrasca assignee:riccardobrasca |
1-33245 1 day ago |
88-61829 88 days ago |
88-61709 88 days |
| 40531 |
tb65536 author:tb65536 |
feat(Combinatorics/Hypergraph/Coloring): define hypergraph colorings |
This PR defines hypergraph colorings and the chromatic index of a hypergraph.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
66/0 |
Mathlib.lean,Mathlib/Combinatorics/Hypergraph/Coloring/Edge.lean |
2 |
4 |
['SnirBroshi', 'b-mehta', 'github-actions', 'tb65536'] |
b-mehta assignee:b-mehta |
1-33244 1 day ago |
78-82097 78 days ago |
79-43710 79 days |
| 41198 |
Raph-DG author:Raph-DG |
feat(AlgebraicGeometry): degree of a zero-cycle |
In this PR, we define the degree of a zero-cycle as in https://stacks.math.columbia.edu/tag/0AZ0
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
113/2 |
Mathlib/AlgebraicGeometry/AlgebraicCycle/Basic.lean,Mathlib/AlgebraicGeometry/ResidueField.lean,Mathlib/Topology/LocallyFinsupp.lean |
3 |
13 |
['Raph-DG', 'github-actions', 'joelriou'] |
joelriou assignee:joelriou |
1-33243 1 day ago |
1-78022 1 day ago |
59-68249 59 days |
| 41206 |
Ljon4ik4 author:Ljon4ik4 |
feat: strict Lie-Rinehart ideals and Quotients by them |
In this PR strict ideals in the context of Lie-Rinehart algebras are defined and it is shown that quotients by them are again Lie-Rinehart algebras.
## Context on Lie-Rinehart algebras
A Lie-Rinehart algebra is given by a couple of an `R`-algebra `A` and an `R`-Lie-Algebra `L` acting on each other and satisfying certain compatibility conditions. The most important example of Lie-Rinehart algebras in geometry is given by `A`=smooth functions on a smooth manifold, and `L`= vector fields on the manifold. Many important geometric constructions (differential forms, Cartan calculus) are defined naturally in terms of Lie-Rinehart algebras.
## Relevance of the construction
This construction of quotients by ideals will be important to define the Basechange of Lie-Rineahart algebras, which in turn is necessary to define 'comorphisms'. Comorphisms are the right notion of morphism to do geometry (e.g. a smooth map between two manifolds corresponds to a comorphism of their associated Lie-Rinehart algebras).
## Strictness
The ideals here are called strict, because it is assumed that `A` remains untouched and one only considers a subobject of `L`. There seems to be constructions for non-strict ideals, but the definitions are more complicated:
https://www.uni-math.gwdg.de/mjotz/JotzLean18c.pdf
https://arxiv.org/pdf/1706.07084
## Changes made
The files `StrictIdeal.lean` and `Quotient.lean` are new, containing the definition of the ideals and the fact that quotients are again Lie-Rinehart algebras. The `Subalgebra.lean` was mildly changed, since it seemed strange to have `comap` and `ker` without having `map` and `range`.
## Disclosure of AI use
All code is hand-written, I used claude interpret debug messages and search for lemmas.
I think most notably the following patterns were proposed by claude:
* `mul_smul := by rintro r₁ r₂ ⟨x⟩; exact congrArg mk (mul_smul r₁ r₂ x)` to show that things are well-defined on the quotient.
* `change f.toLinearMap' ⁅x, y⁆ ∈ s₂` in the proof in `comap`. (I had a simp there, which had as a result `f.toLinearMap' ⁅x, y⁆ ∈ s₂`, but somehow the subsequent steps did not work then)
## Questions open
* I am not sure if strict is a good prefix, and am happy to change it to something else.
(Also, one could even argue that the subalgebras, as defined currently, should be called strict, too...)
* In the definition of `mk'` the `toFun` field seems obsolete to me, but somehow if I remove it I get an error in one of the lemmas after it.
* I am not sure I fully understand the 'per-definition' expose rules. When I first committed I got some errors so I made two defs exposed, but I am not sure that is the correct way to go.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
442/0 |
Mathlib.lean,Mathlib/Algebra/LieRinehartAlgebra/Quotient.lean,Mathlib/Algebra/LieRinehartAlgebra/StrictIdeal.lean,Mathlib/Algebra/LieRinehartAlgebra/Subalgebra.lean |
4 |
1 |
['github-actions'] |
eric-wieser assignee:eric-wieser |
1-33242 1 day ago |
44-60940 44 days ago |
63-55225 63 days |
| 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
|
5/0 |
Mathlib/Data/List/Perm/Basic.lean |
1 |
5 |
['github-actions', 'sergantche', 'vlad902'] |
TwoFX assignee:TwoFX |
1-33241 1 day ago |
51-43118 51 days ago |
55-46393 55 days |
| 42778 |
Brian-Nugent author:Brian-Nugent |
feat(AlgebraicGeometry): generalize `isField_of_universallyClosed` to only assume reduced and connected |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
41/3 |
Mathlib/AlgebraicGeometry/Morphisms/Proper.lean |
1 |
2 |
['github-actions'] |
kim-em assignee:kim-em |
1-33238 1 day ago |
18-56053 18 days ago |
18-55933 18 days |
| 43237 |
joelriou author:joelriou |
feat(CategoryTheory): pointwise left derived functors using derivability structures |
Results about right derived functors are dualized 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
187/4 |
Mathlib.lean,Mathlib/CategoryTheory/Functor/Derived/LeftDerived.lean,Mathlib/CategoryTheory/Localization/DerivabilityStructure/Derives.lean,Mathlib/CategoryTheory/Localization/DerivabilityStructure/PointwiseLeftDerived.lean |
4 |
1 |
['github-actions'] |
dagurtomas assignee:dagurtomas |
1-33237 1 day ago |
2-58813 2 days ago |
2-58693 2 days |
| 43255 |
Raph-DG author:Raph-DG |
feat(AlgebraicGeometry): define Weil divisors |
In this PR, we define the predicate IsWeilDivisor on an algebraic cycle, together with some basic API.
It should be noted that our definition of Weil divisor is just an algebraic cycle which is supported only in codimension one, and assumes nothing of the codomain (namely we do not assume the coefficients are integers). This allows one to use this predicate for Q-divisors or R-divisors for example, but it is something worth noting for a predicate called "IsWeilDivisor".
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
43/0 |
Mathlib/AlgebraicGeometry/AlgebraicCycle/Basic.lean |
1 |
1 |
['github-actions'] |
dagurtomas assignee:dagurtomas |
1-33235 1 day ago |
1-85915 1 day ago |
1-85795 1 day |
| 41167 |
Timeroot author:Timeroot |
chore(Data/Num/Lemmas): golf `transfer` tactic |
Switched the local `transfer` tactic to use `grind` instead of `simp`. (which, imo, is pretty reasonable since this is just basic facts about Nat's all over.) This cleans up several 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-data |
24/39 |
Mathlib/Data/Num/Lemmas.lean |
1 |
8 |
['Timeroot', 'github-actions', 'leanprover-radar', 'themathqueen'] |
nobody |
1-32997 1 day ago |
1-33728 1 day ago |
11-8354 11 days |
| 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 |
68/10 |
Mathlib/RingTheory/UniqueFactorizationDomain/Multiplicity.lean |
1 |
6 |
['chrisflav', 'github-actions', 'mathlib-merge-conflicts', 'xgenereux'] |
nobody |
1-32338 1 day ago |
22-33286 22 days ago |
49-67697 49 days |
| 41903 |
felixpernegger author:felixpernegger |
chore: simplify proofs with `grind` |
These all come from the [weekly linting log](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Weekly.20linting.20log) "Info messages count".
Note that that counter has two false positives which arise due to "all_goals". These are not included here obviously, but all others are (can undo some if they seriously hurt performance).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
10/40 |
Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/AlgebraicTopology/SimplexCategory/ToMkOne.lean,Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Convex/MetricSpace.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/Combinatorics/Hypergraph/Basic.lean,Mathlib/Data/List/Defs.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean,Mathlib/MeasureTheory/MeasurableSpace/Defs.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/MeasureTheory/SetSemiring.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/Order/CountableSupClosed.lean,Mathlib/Probability/Moments/SubGaussian.lean,Mathlib/Probability/Process/LocalProperty.lean,Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean,Mathlib/Topology/Order/Basic.lean |
18 |
11 |
['Vierkantor', 'felixpernegger', 'github-actions', 'leanprover-radar', 'vlad902'] |
nobody |
1-32337 1 day ago |
45-52596 45 days ago |
45-52495 45 days |
| 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
|
290/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ComputablePolynomial/DvdCert.lean,MathlibTest/ComputablePolynomial/PolyDvdCert.lean |
4 |
7 |
['JovanGerb', 'eric-wieser', 'github-actions', 'mkaratarakis'] |
eric-wieser assignee:eric-wieser |
1-30295 1 day ago |
26-84885 26 days ago |
58-35644 58 days |
| 41904 |
rshlyakh author:rshlyakh |
feat(RingTheory/KrullDimension): add Krull dimension preservation under injective integral extensions |
This proves that an injective integral homomorphism of commutative rings
preserves Krull dimension, based on the `Algebra.HasGoingUp` infrastructure from #40911. It includes:
- `RingHom.IsIntegral.ringKrullDim_eq_of_injective`: injective integral homomorphisms of
commutative rings preserve Krull dimension.
- `RingHom.IsIntegral.ringKrullDim_quotient_ker_eq`: for an integral extension `f : A →+* B`,
the Krull dimension of `B` is equal to the Krull dimension of `A ⧸ RingHom.ker f`.
- [x] depends on: #40911
- [x] depends on: #41058
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
77/12 |
Mathlib.lean,Mathlib/RingTheory/Ideal/HasGoingUp.lean,Mathlib/RingTheory/KrullDimension/Integral.lean |
3 |
14 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'rshlyakh', 'vlad902'] |
nobody |
1-26473 1 day ago |
18-40151 18 days ago |
45-13524 45 days |
| 41525 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add Smooth.Basic for smooth representations |
This PR introduces basic setup for smooth representations of a topological group. Hopefully it will serve as preliminary content for those who are interested in formalizing representation theory for p-adic reductive groups in the future. We introduce the following in the file:
1. Define smoothness for representations of a topological group. It is a property for a representation to be smooth: the stabilizer of any vector is open.
2. Prove basic closure properties: subrepresentations, quotient representations, tensor products, direct sums of smooth representations are smooth.
3. Construct smoothHom and contragredient: they are obtained by cutting out smooth vectors from the naive hom and dual.
- [ ] depends on #40941
- [ ] depends on #41081 |
new-contributor
t-algebra
label:t-algebra$ |
277/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Smooth/Basic.lean,Mathlib/RepresentationTheory/Stabilizer.lean,Mathlib/RepresentationTheory/Subrepresentation.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
5 |
5 |
['JX-Mo', 'felixpernegger', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
1-25509 1 day ago |
1-28708 1 day ago |
51-77851 51 days |
| 42760 |
wwylele author:wwylele |
feat(Analysis/SpecialFunction): bessel function of the first kind |
This PR adds the bessel function of the first kind $J_a(x)$, and its some of its properties: analyticity, sign change on `a` and sign change on `x`.
It also introduces a scoped notation `J(a) x` in the namespace `Complex`. It isn't simply `J a x` because when we introduce modified bessel functions, `I a x` would collide with `Complex.I`
---
I don't want to make the PR too long, so this only has the first kind and I stopped before differential properties and those will be in future PRs
Zulip thread: [#mathlib4 > Bessel functions](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Bessel.20functions/with/611260325)
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
maintainer-merge
|
187/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Bessel.lean,Mathlib/Analysis/SpecialFunctions/RegularizedHypergeometric.lean |
3 |
25 |
['YanYablonovskiy', 'copilot-pull-request-reviewer', 'github-actions', 'mcdoll', 'wwylele'] |
mcdoll assignee:mcdoll |
1-24071 1 day ago |
9-30600 9 days ago |
18-77259 18 days |
| 43245 |
SnirBroshi author:SnirBroshi |
chore(GroupTheory/Archimedean): spell cyclic results using `IsCyclic` |
Replaces `∃ a, H = closure {a}` with `IsCyclic H`, and some `closure {a}` with `zpowers a`.
---
Renamed decls to follow the naming convention.
To avoid large imports, `cyclic_of_isolated_one` was moved from `GroupTheory/Archimedean` to `GroupTheory/ArchimedeanDensely`, and `dense_or_cyclic`/`dense_xor_cyclic`/`dense_iff_ne_zpowers` were moved from `Topology/Algebra/Order/Archimedean` to `Topology/Algebra/Order/ArchimedeanDiscrete`.
`Int.subgroup_cyclic` follows trivially from `AddSubgroup.isAddCyclic` (as the module docstring mentions) so it was moved next to it and deprecated.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
135/124 |
Mathlib/GroupTheory/Archimedean.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/NumberTheory/ModularForms/Cusps.lean,Mathlib/Topology/Algebra/Order/Archimedean.lean,Mathlib/Topology/Algebra/Order/ArchimedeanDiscrete.lean,Mathlib/Topology/Instances/AddCircle/DenseSubgroup.lean,docs/undergrad.yaml |
8 |
1 |
['github-actions'] |
nobody |
1-22098 1 day ago |
1-23687 1 day ago |
1-26125 1 day |
| 38228 |
kim-em author:kim-em |
ci: block merging PRs that increase technical debt unless reviewed |
This PR adds a merge gate for technical debt increases.
When the existing technical debt metrics script reports an increase, the `build` job adds an `increases-technical-debt` label. A `check-technical-debt` job then adds `blocked-by-increases-technical-debt`, which blocks bors.
A reviewer can add `allow-increases-technical-debt` to unblock after confirming the increase is acceptable.
### Fail-closed detection
The detection greps for the *safe* patterns (`Decrease in tech debt:` / `No changes to technical debt.`) rather than for `Increase`. If `mathlib-ci` changes the script's output wording, the label is added (fail closed) rather than silently skipped (fail open).
### Labels (three-label pattern, same as #38225)
| Label | Managed by | Purpose |
|---|---|---|
| `increases-technical-debt` | `build` job (tech debt script) | Factual: this PR increases debt |
| `blocked-by-increases-technical-debt` | `check-technical-debt` job | Operational: blocks bors |
| `allow-increases-technical-debt` | Reviewer | Override: reviewer approves the increase |
Bors's `block_labels` has no conditional logic, so we need the derived `blocked-by-increases-technical-debt` label to express the conjunction "increases-technical-debt AND NOT allow-increases-technical-debt".
False positives can be reported on the [mathlib4 Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/increases-technical-debt.20label).
🤖 Prepared with Claude Code
-----------
- [x] depends on: leanprover-community/mathlib-ci#28 |
CI
LLM-generated
maintainer-merge
|
92/2 |
.github/workflows/PR_summary.yml,bors.toml |
2 |
15 |
['github-actions', 'grunweg', 'jcommelin', 'joneugster', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
bryangingechen assignee:bryangingechen |
1-17522 1 day ago |
6-17094 6 days ago |
55-42604 55 days |
| 40616 |
kim-em author:kim-em |
feat(AlgebraicGeometry/Group): add Jacobian blueprint via def_wanted/theorem_wanted |
This PR adds a blueprint of the Jacobian of a smooth, proper, geometrically irreducible curve over a field, expressed entirely through the new `def_wanted` / `theorem_wanted` / `instance_wanted` placeholder declarations. Each dependency between the wanted declarations is recorded through the `❰…❱` bracket syntax, so the placeholder types can refer to each other, without polluting the environment with `sorry` or `axiom`.
The file is adapted from Christian Merten's `JacobianChallenge.lean` in the lean-eval repository.
I hope that we will consider this as a way of "pre-reviewing" design level work for Mathlib. It should encourage contributors to fill in details, and they will know that the implementation work is desirable. It should allow us to speed up review, as if the characterisation in the design PR has already been approved it is relatively easier (or at least, a narrower problem) to review an implementation PR.
🤖 Prepared with Claude Code |
t-algebraic-geometry |
120/0 |
Mathlib.lean,Mathlib/AlgebraicGeometry/Group/Jacobian.lean |
2 |
6 |
['github-actions', 'kim-em', 'mathlib-merge-conflicts', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
1-16762 1 day ago |
7-8307 7 days ago |
43-65203 43 days |
| 42861 |
JovanGerb author:JovanGerb |
feat(Translate): try all translation pairings until one succeeds |
This PR allows `to_dual` to add translations between two sets of constants by trying all possible pairings, instead of only going for the respective pairing. This is possible thanks to #40365, which made `to_dual` validate all translations. This is useful for
- `to_dual (attr := simps)` on e.g. an `Iso` or `Comma`, since the projections `hom`/`inv` and `left`/`right` are dual to eachother.
- `to_dual` on structures where the fields are reordered, such as `Comma`.
I think the tiny slowdown is worth the convenience.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-meta
maintainer-merge
|
75/171 |
Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/CommSq.lean,Mathlib/CategoryTheory/Comma/Basic.lean,Mathlib/CategoryTheory/LiftingProperties/Basic.lean,Mathlib/CategoryTheory/Limits/Cones.lean,Mathlib/CategoryTheory/Limits/IsLimit.lean,Mathlib/CategoryTheory/Limits/Shapes/IsTerminal.lean,Mathlib/CategoryTheory/Limits/Shapes/Terminal.lean,Mathlib/CategoryTheory/NatIso.lean,Mathlib/CategoryTheory/Retract.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Tactic/Translate/Core.lean,MathlibTest/Attribute/ToAdditive/Basic.lean,MathlibTest/Attribute/ToDual.lean |
14 |
8 |
['JovanGerb', 'github-actions', 'joneugster', 'leanprover-radar', 'mathlib-merge-conflicts'] |
joneugster assignee:joneugster |
1-8940 1 day ago |
1-12273 1 day ago |
14-14525 14 days |
| 40961 |
JovanGerb author:JovanGerb |
chore: remove imports added by `shake` |
This PR removes some imports that were added by `shake` in the past.
For some of these it's not clear to me why `shake` added them. In particular, I noticed some occurrences of `public import Mathlib.Tactic.NormNum.Pow`/`Inv`, where `norm_num` is not used in the file at all, which I found suspicious.
For `CompileInductive`, it is expected that `shake` keeps the import, because of `shake: keep-downstream`, so these imports need to be minimzed manually, which this PR does.
For good measure, I also fixed an issue in `Mathlib.Tactic.NormNum.Pow` that some non-meta things were marked as `meta`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
|
|
21/37 |
Mathlib/Algebra/ContinuedFractions/ConvergentsEquiv.lean,Mathlib/Algebra/Free.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/Algebra/Module/Submodule/Union.lean,Mathlib/Algebra/Opposites.lean,Mathlib/Algebra/Order/GroupWithZero/Basic.lean,Mathlib/Combinatorics/Enumerative/Stirling.lean,Mathlib/Combinatorics/Quiver/Path.lean,Mathlib/Combinatorics/SetFamily/AhlswedeZhang.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/ChainOfFn.lean,Mathlib/Data/List/Defs.lean,Mathlib/Data/List/Induction.lean,Mathlib/Data/List/InsertIdx.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Nat/Hyperoperation.lean,Mathlib/Data/Num/Prime.lean,Mathlib/Data/Option/Basic.lean,Mathlib/Data/Ordmap/Ordnode.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/WSeq/Basic.lean,Mathlib/Logic/Equiv/Prod.lean,Mathlib/RingTheory/Ideal/Lattice.lean,Mathlib/SetTheory/Lists.lean,Mathlib/Tactic/NormNum/Pow.lean |
27 |
5 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
1-8765 1 day ago |
1-12051 1 day ago |
51-30601 51 days |
| 43280 |
idontgetoutmuch author:idontgetoutmuch |
feat(Topology/VectorBundle): coordinate lemmas for the bundle of bilinear forms |
Two coordinate-level identities for the bundle of scalar-valued bilinear forms
`fun x ↦ E x →L[ℝ] E x →L[ℝ] ℝ` over a real vector bundle:
* `inCoordinates_apply_eq₂_bilin`: the `inCoordinates` expression evaluated on
coordinate inputs equals the intrinsic form on the transported inputs;
* `trivializationAt_symm_apply_bilin`: the inverse trivialization of the bilinear-forms
bundle, applied to fibre vectors, equals the model form on their images under
`continuousLinearMapAt`.
These are used when transporting a fibrewise bilinear form (such as a Riemannian metric)
through a trivialization, and are the first piece split out of #33714 (existence of a
Riemannian metric on a manifold), which will be rebased on top of 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-topology
new-contributor
|
83/0 |
Mathlib.lean,Mathlib/Topology/VectorBundle/HomBilinear.lean |
2 |
2 |
['github-actions'] |
nobody |
1-8023 1 day ago |
1-8023 1 day ago |
1-7903 1 day |
| 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 |
1-5711 1 day ago |
1-44171 1 day ago |
17-1086 17 days |
| 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.
|
t-ring-theory
LLM-generated
|
400/0 |
Mathlib.lean,Mathlib/RingTheory/Valuation/ValuationSpectrum.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Comap.lean |
3 |
75 |
['CBirkbeck', 'adamtopaz', 'chrisflav', 'dagurtomas', 'faenuccio', 'github-actions', 'jcommelin', 'jjdishere', 'riccardobrasca', 'sfingali'] |
joneugster assignee:joneugster |
1-772 1 day ago |
51-6670 51 days ago |
135-66661 135 days |
| 38534 |
AlexeyMilovanov author:AlexeyMilovanov |
refactor(Computability): make `PFun` a one-field structure |
This PR refactors `PFun` from `def PFun α β := α → Part β` to a structure with a `FunLike` instance.
[Discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Fix.20for.20fun_prop.20on.20PFun.20.28context.3A.20Computability.20Theory.29)
### Main changes
* `PFun` is now a structure with a single field `toFun : α → Part β`.
* Added the `FunLike (α →. β) α (Part β)` instance and `initialize_simps_projections`.
* Added the basic projection/application simp lemmas needed for the structure wrapper.
* Definitions which used to return raw lambdas as partial functions now explicitly use `PFun.mk` or `PFun.lift`.
* Equality proofs for partial functions now use `PFun.ext` / `DFunLike.ext` where `funext` no longer applies directly.
### Downstream impact
The refactor mainly impacts Computability Theory and Category Theory (`Category/PartialFun.lean`). Since `PFun` is no longer definitionally equal to `α → Part β`, tactics such as `rfl`, `simp`, and `funext` can no longer always see through the old raw-function representation.
As a result, several proofs (e.g. `fix_aux`, `ppred`, `mem_eval`, and `unitIso`) grew in size, requiring explicit `ext` + `simp` breakdowns. I tried to keep these proof changes minimal; further golfing suggestions are very welcome. It seems that fully recovering the old brevity in some places may require additional `PFun`-specific API/congruence support, which I avoided adding in this PR to keep the diff minimal.
### Affected files
* **Core:** `Mathlib/Data/PFun.lean`
* **Computability:** `Partrec`, `PartrecBasis`, `PartrecCode`, `RE`, `RecursiveIn`, `Ackermann`, `StateTransition`, `TuringDegree`, `TuringMachine/Config`
* **Category Theory:** `Category/PartialFun.lean`
* **Other:** `Data/Finset/PImage.lean`, `NumberTheory/Dioph.lean`
This also removes the previous `set_option linter.flexible false` workaround and the local transparency workaround in `TuringMachine/Config.lean`, as well as the local transparency workarounds in `Category/PartialFun.lean`.
### Note on LLM usage
The core `PFun` change caused numerous downstream errors. I initially used an LLM to help draft fixes for these files. Afterwards, I spent a significant amount of time manually correcting and modifying all of the generated changes.
|
new-contributor
t-computability
tech debt
LLM-generated
maintainer-merge
|
579/502 |
Mathlib/CategoryTheory/Category/PartialFun.lean,Mathlib/Computability/Ackermann.lean,Mathlib/Computability/Partrec.lean,Mathlib/Computability/PartrecBasis.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/RE.lean,Mathlib/Computability/RecursiveIn.lean,Mathlib/Computability/StateTransition.lean,Mathlib/Computability/TuringDegree.lean,Mathlib/Computability/TuringMachine/Config.lean,Mathlib/Data/Finset/PImage.lean,Mathlib/Data/PFun.lean,Mathlib/NumberTheory/Dioph.lean |
13 |
73 |
['AlexeyMilovanov', 'JovanGerb', 'YaelDillies', 'dagurtomas', 'github-actions', 'j-loreaux', 'jcommelin', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
1-285 1 day ago |
1-77373 1 day ago |
101-5819 101 days |
| 43291 |
YaelDillies author:YaelDillies |
feat(MeasureTheory): measurability of a function defined by `ite` |
Also protect `Measurable.ite` and `Measurable.dite`, which caused issue to me downstream.
From GibbsMeasure
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
34/11 |
Mathlib/MeasureTheory/MeasurableSpace/Basic.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/MeasureTheory/MeasurableSpace/Defs.lean |
3 |
1 |
['github-actions'] |
nobody |
0-86349 23 hours ago |
1-1318 1 day ago |
1-1198 1 day |
| 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/)
|
|
41/40 |
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 |
1 |
['github-actions'] |
nobody |
0-85824 23 hours ago |
1-2734 1 day ago |
1-5094 1 day |
| 43135 |
pepamontero author:pepamontero |
refactor(Topology/Algebra/ProperAction): weaken compactly generated hypothesis to compactly coherent |
Weaken the `CompactlyGeneratedSpace (X × X)` assumption in `properSMul_iff_isCompact_setOfPred_inter_nonempty` to `CompactlyCoherentSpace (X × X)`. This matches the note in the result's docstring, which said `CompactlyCoherentSpace` was used as the minimal hypothesis.
Other related changes:
- Change the import from `Mathlib.Topology.Compactness.CompactlyGeneratedSpace` to `Mathlib.Topology.Compactness.CompactlyCoherentSpace`.
- Delete some unnecessary spaces that were making docstrings very long.
- In `Maps/Proper/CompactlyGenerated.lean`, delete some notes that were claiming results were written to make use of `CompactlyGeneratedSpace` typecass, as they no longer use it plus they now have uses in other places in the library.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
17/30 |
Mathlib/Topology/Algebra/ProperAction/CompactlyGenerated.lean,Mathlib/Topology/Maps/Proper/CompactlyGenerated.lean |
2 |
7 |
['github-actions', 'pepamontero', 'scholzhannah'] |
scholzhannah assignee:scholzhannah |
0-85364 23 hours ago |
0-85365 23 hours ago |
3-32671 3 days |
| 43263 |
luigi-massacci author:luigi-massacci |
chore(Matrix/Block): update forgotten lemma/doc with "new" IsUpperTriangular |
The title. I don't know at what point the file doc-string diverged from the code, so I'm dating the deprecation of the old name starting today.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
easy
label:t-algebra$ |
11/4 |
Mathlib/LinearAlgebra/Matrix/Block.lean |
1 |
1 |
['github-actions'] |
nobody |
0-83582 23 hours ago |
1-60821 1 day ago |
1-60701 1 day |
| 43183 |
BorisTheBrave author:BorisTheBrave |
fix(Tactic/Linarith): carry `!` and the configuration into `linarith?… |
`linarith?` uses the same configuration as `linarith`,
but previously printed a bare `linarith only [...]` suggestion regardless
of the configuration.
Now all config options except `minimize` are carried into the suggestion.
---
Note: #42588 has a [test](https://github.com/leanprover-community/mathlib4/pull/42588/files#diff-3657543f804f0a57e384f6a9338cc53803a50bebdfb16c1ecd0b514f3fda332fR863) that
unintentionally highlights the problem:
```lean
/--
info: Try this:
[apply] linarith only [hne, hle]
-/
#guard_msgs in
example (a b : ℚ) (hne : a ≠ b) (hle : a ≥ b) (junk : (0:ℚ) < 1) : b < a := by
linarith? +splitNe
```
This suggestion doesn't actually close the proof.
It should suggest `linarith +splitNE only [hne, hle]`.
Should we be using `says` syntax for these tests? I'm unclear on the rule here.
Note: `simp?` has very similar code, `filterSuggestionsAndLocalsFromSimpConfig`, that this PR was modelled after.
AI disclosure:
Claude Code (Fable) first flagged this problem to me, and wrote the first draft. I
made some tweaks to better fit mathlib's style, and wrote all the prose.
[](https://gitpod.io/from-referrer/) |
t-meta
new-contributor
|
77/6 |
Mathlib/Tactic/Linarith/Frontend.lean,MathlibTest/Tactic/Linarith/Basic.lean |
2 |
8 |
['BorisTheBrave', 'github-actions', 'sharky564'] |
nobody |
0-82996 23 hours ago |
4-85080 4 days ago |
4-84960 4 days |
| 41642 |
adomani author:adomani |
chore: add missing `to_additive` docstrings in Topology, Geometry and Analysis |
Adds the missing additive doc-strings (multiplicative side has a hand-written doc-string, additive side did not) across 20 file(s) in **Topology, Geometry and Analysis**.
The additive doc-strings are simple-minded translations of the multiplicative ones, with referenced lemma names replaced by their `to_additive` counterparts. These gaps were found by an environment linter that pairs each declaration with its `to_additive` counterpart and checks that both or neither is documented.
🤖 Generated with [Claude Code](https://claude.com/claude-code) |
LLM-generated
t-differential-geometry
|
39/19 |
Mathlib/Geometry/Manifold/Algebra/SMul.lean,Mathlib/Geometry/Manifold/ContMDiff/Basic.lean,Mathlib/Geometry/Manifold/Instances/Quotient.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Basic.lean,Mathlib/Topology/Algebra/Group/DiscontinuousSubgroup.lean,Mathlib/Topology/Algebra/Group/OpenMapping.lean,Mathlib/Topology/Algebra/Group/Pointwise.lean,Mathlib/Topology/Algebra/Group/Quotient.lean,Mathlib/Topology/Algebra/InfiniteSum/Constructions.lean,Mathlib/Topology/Algebra/IsUniformGroup/DiscreteSubgroup.lean,Mathlib/Topology/Algebra/MulAction.lean,Mathlib/Topology/Algebra/Nonarchimedean/Basic.lean,Mathlib/Topology/Algebra/ProperAction/Basic.lean,Mathlib/Topology/Algebra/ProperAction/CompactlyGenerated.lean,Mathlib/Topology/Algebra/Support.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Covering/Quotient.lean |
17 |
16 |
['adomani', 'github-actions', 'grunweg', 'mathlib-bors', 'sgouezel'] |
sgouezel assignee:sgouezel |
0-82155 22 hours ago |
0-82155 22 hours ago |
37-79789 37 days |
| 41649 |
xroblot author:xroblot |
feat(FieldTheory/IntermediateField): adjoining a shifted or scaled generator |
Add two lemmas about simple intermediate field extensions:
* `IntermediateField.adjoin_simple_add_algebraMap`: `F⟮x + algebraMap F E y⟯ = F⟮x⟯` for `y` in the base field `F`.
* `IntermediateField.adjoin_simple_mul_algebraMap`: `F⟮x * algebraMap F E y⟯ = F⟮x⟯` for `y` a nonzero element of `F`.
Translating the generator by a base-field element, or scaling it by a nonzero base-field element, leaves the simple extension unchanged.
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude. |
t-algebra label:t-algebra$ |
21/0 |
Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
0-78320 21 hours ago |
51-76304 51 days ago |
51-76184 51 days |
| 40155 |
TheGoedeDoel author:TheGoedeDoel |
feat: functor of localized commutative rings |
Given a functor of commutative rings R and a submonoid functor S,
we add a functor of commutative rings with objects that are localizations
of R(U) at the submonoid S(U). We also show that this functor satisfies a
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-algebra
new-contributor
label:t-algebra$ |
255/0 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/LocalizedFunctor.lean |
2 |
16 |
['TheGoedeDoel', 'chrisflav', 'github-actions', 'jcommelin'] |
joneugster assignee:joneugster |
0-78271 21 hours ago |
82-41267 82 days ago |
91-41191 91 days |
| 42443 |
grunweg author:grunweg |
feat: add `mvfderivWithin_eq_fderivWithin` and `mvfderiv_eq_fderiv` |
This provides missing basic API for `mvfderiv`, fully analogous to their `mfderiv` analogues.
Unlike the `mfderiv` versions, the new lemmas are type-correct: they don't implicitly use the identification of the tangent space at a vector space with the vector space. For this reason, we derive the mfderiv lemmas from their mvfderiv versions --- and move them to `MFDeriv/NormedSpace.lean` to do so.
We also un-`simp` the mfderiv lemmas, given that they introduce (mild) defeq abuse. Nothing in mathlib relied on this.
---
Extracted from #42037. As @scholzhannah independently needed the same lemma for her thesis, doing explicit computations for manifolds with boundary, let's PR it now.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
33/18 |
Mathlib/Geometry/Manifold/Immersion.lean,Mathlib/Geometry/Manifold/Instances/Icc.lean,Mathlib/Geometry/Manifold/MFDeriv/FDeriv.lean,Mathlib/Geometry/Manifold/MFDeriv/NormedSpace.lean |
4 |
17 |
['github-actions', 'grunweg', 'mathlib-merge-conflicts', 'scholzhannah'] |
scholzhannah assignee:scholzhannah |
0-77906 21 hours ago |
0-78892 21 hours ago |
4-82941 4 days |
| 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 |
123/19 |
Mathlib/Analysis/Normed/Field/Dense.lean,Mathlib/Analysis/Normed/Module/Completion.lean,Mathlib/NumberTheory/Padics/Complex.lean |
3 |
10 |
['YijunYuan', 'github-actions', 'pechersky', 'riccardobrasca'] |
nobody |
0-77625 21 hours ago |
0-78534 21 hours ago |
38-60092 38 days |
| 41479 |
YaelDillies author:YaelDillies |
feat(LinearAlgebra): dual of tensor is tensor of duals for finite projective modules |
Generalise this isomorphism and many similar ones from finite free to finite projective. To be able to deduce some isos from some other ones, I had to move them around in a preliminary PR. Note that #40297 made of the changes that the current PR was intending to do but not all, hence the slightly mangled diff.
Also change the defeq of `homTensorHomEquiv` so that it is *not* defeq to `homTensorHomMap` (but would be if `homTensorHomMap` became heterobasic). This makes `BilinForm.tensorDistribEquiv` defeq to `BilinForm.tensorDistrib`.
Also tag `LinearEquiv.congrRight` with `simps` to generate some required simp lemmas.
Human generated then golfed and edited with Claude Opus, then human-edited some more.
From FLT, PersistentDecomp
Co-authored-by: Edison Xie
Co-authored-by: Andrew Yang <the.erd.one@gmail.com>
Assisted-by: Claude Opus 4.8
---
This is a cleaned up version of #21829 reopened from a fork.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
maintainer-merge
label:t-algebra$ |
134/101 |
Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/LinearAlgebra/BilinearForm/TensorProduct.lean,Mathlib/LinearAlgebra/Contraction.lean,Mathlib/LinearAlgebra/TensorProduct/Map.lean,Mathlib/LinearAlgebra/Trace.lean |
5 |
32 |
['Deicyde', 'Whysoserioushah', 'YaelDillies', 'erdOne', 'github-actions', 'kbuzzard', 'mathlib-merge-conflicts', 'themathqueen'] |
themathqueen assignee:themathqueen |
0-75808 21 hours ago |
1-352 1 day ago |
39-28961 39 days |
| 43128 |
dannyhe652 author:dannyhe652 |
feat(SimpleGraph/Coloring): add edge colorings and missing colors |
## Summary
This PR starts the edge-coloring API needed for Vizing's theorem.
It defines edge colorings as vertex colorings of the line graph, introduces edge
colorability and the chromatic index, and adds the basic local color-set API around a
vertex.
Main additions:
- `vizing.edgeColoring`
- `vizing.edgeColorable`
- `vizing.chromaticIndex`
- `vizing.incidentEdges`
- `vizing.incidentColors`
- `vizing.missingColors`
It also proves the basic cardinality estimates relating incident colors to vertex degree,
including that with more available colors than the degree, some color is missing at the
vertex.
This is the first PR in a stacked development toward Vizing's theorem.
## Co-authors
Co-authored-by: Daniel Raggi <dr495@cam.ac.uk>
Co-authored-by: Aristotle (Harmonic) <aristotle-harmonic@harmonic.fun>
Co-authored-by: Claude Opus 4.5 & 4.6 <noreply@anthropic.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
new-contributor
LLM-generated
|
271/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeColoring.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/KempeChain.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/KempeChain/Basic.lean |
4 |
6 |
['SnirBroshi', 'dannyhe652', 'github-actions'] |
nobody |
0-75206 20 hours ago |
6-85708 6 days ago |
6-85684 6 days |
| 43288 |
WenrongZou author:WenrongZou |
feat(RingTheory/Valuation): a valuation ring is the ring of integers of its valuation |
Let `A` is a valuation ring with fraction field `K`, then `A` is the ring of integers of the induced valuation, i.e. `(ValuationRing.valuation A K).Integers A`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
5/0 |
Mathlib/RingTheory/Valuation/ValuationRing.lean |
1 |
8 |
['Ruben-VandeVelde', 'WenrongZou', 'github-actions', 'jcommelin', 'mathlib-bors'] |
nobody |
0-74939 20 hours ago |
0-79413 22 hours ago |
0-82243 22 hours |
| 42132 |
mcdoll author:mcdoll |
feat(Algebra/Module): use `IsApply` for `LieHom` |
No obstacles in this 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$ |
60/59 |
Mathlib/Algebra/Lie/Basic.lean |
1 |
6 |
['github-actions', 'grunweg', 'leanprover-radar', 'mcdoll', 'themathqueen'] |
nobody |
0-74880 20 hours ago |
36-80618 36 days ago |
36-80498 36 days |
| 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 |
29/2 |
Mathlib/RingTheory/MvPowerSeries/Derivative.lean |
1 |
1 |
['github-actions'] |
nobody |
0-72708 20 hours ago |
6-1153 6 days ago |
6-1033 6 days |
| 42534 |
gloges author:gloges |
feat(LinearAlgebra/MultilinearMap): generalize `MultilinearMap` with common `RingHom` |
Generalizes multilinear maps to multi-semilinear maps.
In analogy with `LinearMap σ M N`, `MultilinearMap σ M N` is the space of multilinear maps from the `R`-module `∀ i, M i` to the `S`-module `N` over a ring homomorphism `σ : R →+* S`: fixing all but one coordinate gives a map `M i →ₛₗ[σ] N`.
Both `ContinuousLinearMap` and `AlternatingMap` extend `MultilinearMap` and are left defined in terms of `RingHom.id`.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor |
679/616 |
Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean,Mathlib/Analysis/Normed/Module/Multilinear/Curry.lean,Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basis.lean,Mathlib/LinearAlgebra/Multilinear/Curry.lean,Mathlib/LinearAlgebra/Multilinear/DFinsupp.lean,Mathlib/LinearAlgebra/Multilinear/DirectSum.lean,Mathlib/LinearAlgebra/Multilinear/FiniteDimensional.lean,Mathlib/LinearAlgebra/Multilinear/Finsupp.lean,Mathlib/LinearAlgebra/Multilinear/Pi.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/DFinsupp.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/TensorAlgebra/Basic.lean,Mathlib/LinearAlgebra/TensorPower/Pairing.lean,Mathlib/LinearAlgebra/TensorPower/Symmetric.lean,Mathlib/RingTheory/PiTensorProduct.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean |
24 |
17 |
['eric-wieser', 'github-actions', 'gloges', 'themathqueen', 'winstonyin'] |
nobody |
0-72427 20 hours ago |
16-74180 16 days ago |
25-13772 25 days |
| 43301 |
dependabot author:dependabot |
chore(deps): bump the actions-version-updates group across 1 directory with 6 updates |
Bumps the actions-version-updates group with 6 updates in the /.github/workflows directory:
| Package | From | To |
| --- | --- | --- |
| [reviewdog/action-actionlint](https://github.com/reviewdog/action-actionlint) | `1.73.0` | `1.73.2` |
| [leanprover/lean-action](https://github.com/leanprover/lean-action) | `1.5.0` | `1.6.0` |
| [actions/attest-build-provenance](https://github.com/actions/attest-build-provenance) | `4.1.1` | `4.2.2` |
| [corentinmusard/otel-cicd-action](https://github.com/corentinmusard/otel-cicd-action) | `4.1.0` | `4.1.1` |
| [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) | `21` | `24` |
| [softprops/action-gh-release](https://github.com/softprops/action-gh-release) | `3.0.2` | `3.0.3` |
Updates `reviewdog/action-actionlint` from 1.73.0 to 1.73.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/reviewdog/action-actionlint/releases">reviewdog/action-actionlint's releases</a>.</em></p>
<blockquote>
<h2>Release v1.73.2</h2>
<h2>What's Changed</h2>
<ul>
<li>chore(deps): update shogo82148/actions-create-release action to v1.9.1 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/reviewdog/action-actionlint/pull/223">reviewdog/action-actionlint#223</a></li>
<li>chore(deps): update python:3.14.7-alpine3.24 docker digest to 05b2b8b by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/reviewdog/action-actionlint/pull/224">reviewdog/action-actionlint#224</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/reviewdog/action-actionlint/compare/v1.73.1...v1.73.2">https://github.com/reviewdog/action-actionlint/compare/v1.73.1...v1.73.2</a></p>
<h2>Release v1.73.1</h2>
<h2>What's Changed</h2>
<ul>
<li>chore(deps): update python docker tag to v3.14.7 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/reviewdog/action-actionlint/pull/222">reviewdog/action-actionlint#222</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/reviewdog/action-actionlint/compare/v1.73.0...v1.73.1">https://github.com/reviewdog/action-actionlint/compare/v1.73.0...v1.73.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/reviewdog/action-actionlint/commit/dbe5299849118fd6f099ba563d263d770955a64a"><code>dbe5299</code></a> bump v1.73.2</li>
<li><a href="https://github.com/reviewdog/action-actionlint/commit/b471811634a26e55e955364a3994b1964826dfb4"><code>b471811</code></a> Merge branch 'main' into releases/v1</li>
<li><a href="https://github.com/reviewdog/action-actionlint/commit/d6436f566d69e2e80491464a45228f5c5aea1760"><code>d6436f5</code></a> Merge pull request <a href="https://redirect.github.com/reviewdog/action-actionlint/issues/224">#224</a> from reviewdog/renovate/python-3.14.7-alpine3.24</li>
<li><a href="https://github.com/reviewdog/action-actionlint/commit/3de11d290af449475183019cd17debaf810f0f45"><code>3de11d2</code></a> chore(deps): update python:3.14.7-alpine3.24 docker digest to 05b2b8b</li>
<li><a href="https://github.com/reviewdog/action-actionlint/commit/7d2a9fc6ece53c6e55c4ccda057a7ab9970e5348"><code>7d2a9fc</code></a> Merge pull request <a href="https://redirect.github.com/reviewdog/action-actionlint/issues/223">#223</a> from reviewdog/renovate/shogo82148-actions-create-rel...</li>
<li><a href="https://github.com/reviewdog/action-actionlint/commit/7499b9801ccecd347740bdbb6eb45f2e6bdf6a5a"><code>7499b98</code></a> chore(deps): update shogo82148/actions-create-release action to v1.9.1</li>
<li><a href="https://github.com/reviewdog/action-actionlint/commit/d63ba7532e0942965320cd8d73cbae4c7b3c5283"><code>d63ba75</code></a> bump v1.73.1</li>
<li><a href="https://github.com/reviewdog/action-actionlint/commit/3b8c49cd2c3d6fb88c60f8693cf8c5917f7db90b"><code>3b8c49c</code></a> Merge branch 'main' into releases/v1</li>
<li><a href="https://github.com/reviewdog/action-actionlint/commit/456ccb3a5a690242c9db743cab62f6af5425d2d3"><code>456ccb3</code></a> Merge pull request <a href="https://redirect.github.com/reviewdog/action-actionlint/issues/222">#222</a> from reviewdog/renovate/python-3.x</li>
<li><a href="https://github.com/reviewdog/action-actionlint/commit/7848b29a1b758d409e30f68c9f910e4bc62f8952"><code>7848b29</code></a> chore(deps): update python docker tag to v3.14.7</li>
<li>See full diff in <a href="https://github.com/reviewdog/action-actionlint/compare/50842263c20a7c46bd0065b9e624d3c569db061e...dbe5299849118fd6f099ba563d263d770955a64a">compare view</a></li>
</ul>
</details>
<br />
Updates `leanprover/lean-action` from 1.5.0 to 1.6.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/leanprover/lean-action/releases">leanprover/lean-action's releases</a>.</em></p>
<blockquote>
<h2>v1.6.0</h2>
<h3>Added</h3>
<ul>
<li>new <code>leanchecker-args</code> input to pass arguments to <code>lake env leanchecker</code>,
e.g. <code>leanchecker-args: "-v"</code> for verbose output or explicit module prefixes
such as <code>leanchecker-args: "MyPkg.Core"</code> to narrow the set of modules checked</li>
<li>new <code>axiom-audit</code> input to audit the project's axioms with <a href="https://github.com/leanprover-community/axiom-audit">axiom-audit</a>: fail if any declaration depends on an axiom outside the allowlist (catches <code>sorry</code>, <code>native_decide</code>, and home-rolled axioms). Default: false</li>
<li>new <code>axiom-audit-allow</code> input for the allowlist (default: <code>propext,Classical.choice,Quot.sound</code>)</li>
<li>new <code>axiom-audit-root</code> input to set the audited root namespace (default: the lakefile's library name)</li>
<li>new <code>axiom-audit-status</code> output parameter</li>
<li>new <code>lint-args</code> input to specify arguments to pass to <code>lake lint</code></li>
<li>new <code>mk_all-args</code> input to pass arguments to <code>lake exe mk_all --check</code>, e.g. <code>mk_all-args: "--lib Carleson"</code> to restrict the check to a specific library</li>
<li>new <code>release.yml</code> workflow which automates the release process (see <code>RELEASING.md</code>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>include <code>lake-package-directory</code> when hashing <code>lean-toolchain</code> and <code>lake-manifest.json</code> for the GitHub cache key, so projects whose Lake package lives in a subdirectory get a version-specific key instead of an empty one (the empty key previously caused stale, cross-version cache restores)</li>
<li>use a more portable shebang, useful for self-hosted runners</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/leanprover/lean-action/blob/main/CHANGELOG.md">leanprover/lean-action's changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<p>All notable changes to <code>lean-action</code> will be documented in this file.</p>
<p>The format is based on <a href="https://keepachangelog.com/en/1.1.0/">Keep a Changelog</a>,
and this project adheres to <a href="https://semver.org/spec/v2.0.0.html">Semantic Versioning</a>.</p>
<h2>Unreleased</h2>
<h2>v1.6.0 - 2026-08-22</h2>
<h3>Added</h3>
<ul>
<li>new <code>leanchecker-args</code> input to pass arguments to <code>lake env leanchecker</code>,
e.g. <code>leanchecker-args: "-v"</code> for verbose output or explicit module prefixes
such as <code>leanchecker-args: "MyPkg.Core"</code> to narrow the set of modules checked</li>
<li>new <code>axiom-audit</code> input to audit the project's axioms with <a href="https://github.com/leanprover-community/axiom-audit">axiom-audit</a>: fail if any declaration depends on an axiom outside the allowlist (catches <code>sorry</code>, <code>native_decide</code>, and home-rolled axioms). Default: false</li>
<li>new <code>axiom-audit-allow</code> input for the allowlist (default: <code>propext,Classical.choice,Quot.sound</code>)</li>
<li>new <code>axiom-audit-root</code> input to set the audited root namespace (default: the lakefile's library name)</li>
<li>new <code>axiom-audit-status</code> output parameter</li>
<li>new <code>lint-args</code> input to specify arguments to pass to <code>lake lint</code></li>
<li>new <code>mk_all-args</code> input to pass arguments to <code>lake exe mk_all --check</code>, e.g. <code>mk_all-args: "--lib Carleson"</code> to restrict the check to a specific library</li>
<li>new <code>release.yml</code> workflow which automates the release process (see <code>RELEASING.md</code>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>include <code>lake-package-directory</code> when hashing <code>lean-toolchain</code> and <code>lake-manifest.json</code> for the GitHub cache key, so projects whose Lake package lives in a subdirectory get a version-specific key instead of an empty one (the empty key previously caused stale, cross-version cache restores)</li>
<li>use a more portable shebang, useful for self-hosted runners</li>
</ul>
<h2>v1.5.0 - 2026-04-21</h2>
<h3>Added</h3>
<ul>
<li>new <code>nanoda</code> input to check environment with <a href="https://github.com/ammkrn/nanoda_lib">nanoda</a> external type checker</li>
<li>new <code>nanoda-allow-sorry</code> input to permit sorryAx axiom when running nanoda (default: true)</li>
<li>new <code>nanoda-status</code> output parameter</li>
<li>new reusable workflow <code>nanoda-daily.yml</code> for scheduled daily verification with notifications</li>
</ul>
<h3>Changed</h3>
<ul>
<li>rename the <code>lean4checker</code> input to <code>leanchecker</code>, while keeping <code>lean4checker</code> as a deprecated alias</li>
<li>use the bundled <code>leanchecker</code> binary on Lean <code>nightly-2026-01-09</code> / <code>v4.28.0-rc1</code> and newer, with fallback to the external <code>lean4checker</code> repository on older toolchains</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>fixed bug where callling <code>.test.sh</code> instead of <code>lake test</code> on lean4checker on Lean <code>v4.27.x</code> would cause a failure</li>
</ul>
<h2>v1.4.0 - 2026-01-15</h2>
<h3>Added</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/leanprover/lean-action/commit/50fcf42d2e460296f1a34b402e990d1b24f8b596"><code>50fcf42</code></a> feat: add <code>mk_all-args</code> input (<a href="https://redirect.github.com/leanprover/lean-action/issues/185">#185</a>)</li>
<li><a href="https://github.com/leanprover/lean-action/commit/6835ef47e8423fa9e9eacfcbb8fdf83fae42c820"><code>6835ef4</code></a> feat: automate the release process with a release workflow (<a href="https://redirect.github.com/leanprover/lean-action/issues/183">#183</a>)</li>
<li><a href="https://github.com/leanprover/lean-action/commit/0e73be80ca15302f7b414deda85446d8bb279623"><code>0e73be8</code></a> feat: add <code>leanchecker-args</code> input (<a href="https://redirect.github.com/leanprover/lean-action/issues/162">#162</a>)</li>
<li><a href="https://github.com/leanprover/lean-action/commit/18a062826fdb79a0d5aac97f7fd09d8bfe6696bc"><code>18a0628</code></a> feat: add opt-in axiom-audit check (<a href="https://redirect.github.com/leanprover/lean-action/issues/166">#166</a>)</li>
<li><a href="https://github.com/leanprover/lean-action/commit/6871e54eb1c5827d248c9767f1ea263ac65f6991"><code>6871e54</code></a> fix: pass resolved toolchain to <code>lake-lint-args</code> functional test (<a href="https://redirect.github.com/leanprover/lean-action/issues/182">#182</a>)</li>
<li><a href="https://github.com/leanprover/lean-action/commit/c7d824f443b42759660338f9d4968ebb1bec1398"><code>c7d824f</code></a> docs: document <code>LEAN_NUM_THREADS</code> workaround for <code>leanchecker</code> memory exhaust...</li>
<li><a href="https://github.com/leanprover/lean-action/commit/236e6155a3b84fd07019c3205b899871d2356635"><code>236e615</code></a> feat: add lint-args configuration input (<a href="https://redirect.github.com/leanprover/lean-action/issues/149">#149</a>)</li>
<li><a href="https://github.com/leanprover/lean-action/commit/62e5cb3cc94251736f17cfb2c4149efd7f2f39d6"><code>62e5cb3</code></a> chore(deps): bump actions/checkout from 4 to 7 (<a href="https://redirect.github.com/leanprover/lean-action/issues/174">#174</a>)</li>
<li><a href="https://github.com/leanprover/lean-action/commit/fd79d79bb522bcaa3532aabc22522cde2af0de07"><code>fd79d79</code></a> chore(deps): bump peter-evans/create-pull-request from 7 to 8 (<a href="https://redirect.github.com/leanprover/lean-action/issues/172">#172</a>)</li>
<li><a href="https://github.com/leanprover/lean-action/commit/44bde84f610b8c89a1c5064fdf4e42f446ac78cb"><code>44bde84</code></a> fix: include lake-package-directory in cache key hashes (<a href="https://redirect.github.com/leanprover/lean-action/issues/167">#167</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/leanprover/lean-action/compare/38fbc41a8c28c4cbaec22d7f7de508ec2e7c0dd9...50fcf42d2e460296f1a34b402e990d1b24f8b596">compare view</a></li>
</ul>
</details>
<br />
Updates `actions/attest-build-provenance` from 4.1.1 to 4.2.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/actions/attest-build-provenance/releases">actions/attest-build-provenance's releases</a>.</em></p>
<blockquote>
<h2>v4.2.2</h2>
<blockquote>
<p>[!NOTE]
As of version 4, <code>actions/attest-build-provenance</code> is simply a wrapper on top of <a href="https://github.com/actions/attest"><code>actions/attest</code></a>.</p>
<p>Existing applications may continue to use the <code>attest-build-provenance</code> action, but new implementations should use <code>actions/attest</code> instead.</p>
</blockquote>
<h2>What's Changed</h2>
<ul>
<li>Bump actions/attest from 4.2.0 to 4.2.1 in the actions-minor group by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/actions/attest-build-provenance/pull/862">actions/attest-build-provenance#862</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/actions/attest-build-provenance/compare/v4.1.1...v4.2.2">https://github.com/actions/attest-build-provenance/compare/v4.1.1...v4.2.2</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/actions/attest-build-provenance/commit/4d101475d8b20a2381f78447822ac1eab6504dd8"><code>4d10147</code></a> Bump actions/attest from 4.2.0 to 4.2.1 in the actions-minor group (<a href="https://redirect.github.com/actions/attest-build-provenance/issues/862">#862</a>)</li>
<li><a href="https://github.com/actions/attest-build-provenance/commit/e3fe62ef559997059fe8380e7d2b4c909e2d65f4"><code>e3fe62e</code></a> Bump the actions-minor group with 2 updates (<a href="https://redirect.github.com/actions/attest-build-provenance/issues/860">#860</a>)</li>
<li>See full diff in <a href="https://github.com/actions/attest-build-provenance/compare/0f67c3f4856b2e3261c31976d6725780e5e4c373...4d101475d8b20a2381f78447822ac1eab6504dd8">compare view</a></li>
</ul>
</details>
<br />
Updates `corentinmusard/otel-cicd-action` from 4.1.0 to 4.1.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/corentinmusard/otel-cicd-action/releases">corentinmusard/otel-cicd-action's releases</a>.</em></p>
<blockquote>
<h2>v4.1.1</h2>
<h3>Changed</h3>
<ul>
<li>CICD: skip the sourcemap when diffing dist. Streaming its diff to the job log dominated
the Validate dist step, pushing the build job to nearly ten minutes on a stale-bundle failure.</li>
<li>Build: rebuild dist for undici 6.28.0. Dependabot only updates package-lock.json,
but undici is a runtime dependency that rollup inlines into the committed bundle.</li>
<li>Editorial: Use Dash0 endpoints in README examples.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/dash0hq/otel-cicd-action/blob/main/CHANGELOG.md">corentinmusard/otel-cicd-action's changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<p>All notable changes to this project will be documented in this file.</p>
<p>The format is based on <a href="https://keepachangelog.com/en/1.1.0/">Keep a Changelog</a>,
and this project adheres to <a href="https://semver.org/spec/v2.0.0.html">Semantic Versioning</a>.</p>
<h2>[Unreleased]</h2>
<h2>[4.1.1] - 2026-08-14</h2>
<h3>Changed</h3>
<ul>
<li>CICD: skip the sourcemap when diffing dist. Streaming its diff to the job log dominated
the Validate dist step, pushing the build job to nearly ten minutes on a stale-bundle failure.</li>
<li>Build: rebuild dist for undici 6.28.0. Dependabot only updates package-lock.json,
but undici is a runtime dependency that rollup inlines into the committed bundle.</li>
<li>Editorial: Use Dash0 endpoints in README examples.</li>
</ul>
<h2>[4.1.0] - 2026-07-27</h2>
<h3>Added</h3>
<ul>
<li>Added the <code>otlpInsecureSkipVerify</code> input for exporting to trusted internal OTLP endpoints whose
TLS certificates cannot be verified.
Thanks <a href="https://github.com/OneCyrus"><code>@OneCyrus</code></a>!</li>
</ul>
<h3>Changed</h3>
<ul>
<li>
<p>Span status now follows the OpenTelemetry
<a href="https://opentelemetry.io/docs/specs/semconv/general/recording-errors/">recording-errors</a>
conventions: it is set to <code>Error</code> (with the standard <code>error.type</code> attribute) for the
<code>failure</code>, <code>timed_out</code>, and <code>startup_failure</code> conclusions, and left unset otherwise
(previously it was set to <code>Ok</code> on success and <code>Error</code> only for <code>failure</code>).</p>
</li>
<li>
<p><strong>Removed</strong> the non-standard boolean <code>error</code> attribute from workflow, job, and step spans.
Use the span status or the <code>error.type</code> attribute instead.</p>
</li>
<li>
<p>The <code>github.job.labels</code> attribute is now exported as an array of strings instead of a
comma-separated string, consistent with the PR label attributes.</p>
</li>
<li>
<p>The repository was transferred from <code>corentinmusard/otel-cicd-action</code> to
<a href="https://github.com/dash0hq/otel-cicd-action"><code>dash0hq/otel-cicd-action</code></a> and is now maintained
by <a href="https://www.dash0.com">Dash0</a>. Existing <code>uses: corentinmusard/otel-cicd-action@v4</code> references
keep working via GitHub's redirect, but updating to <code>dash0hq/otel-cicd-action@v4</code> is recommended.</p>
</li>
</ul>
<h2>[4.0.1] - 2026-03-18</h2>
<h3>Fixed</h3>
<ul>
<li>Updated dependencies</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/dash0hq/otel-cicd-action/commit/895874bfae14f840e3032f1a14c3f2b45c93f4af"><code>895874b</code></a> chore: prepare release v4.1.1 (<a href="https://redirect.github.com/corentinmusard/otel-cicd-action/issues/90">#90</a>)</li>
<li><a href="https://github.com/dash0hq/otel-cicd-action/commit/f6952e3b6c9f2e03aa1f9d2b161fa6a6a0a96263"><code>f6952e3</code></a> chore: update CHANGELOG with editorial/build/cicd updates. (<a href="https://redirect.github.com/corentinmusard/otel-cicd-action/issues/89">#89</a>)</li>
<li><a href="https://github.com/dash0hq/otel-cicd-action/commit/77885591de01eecfd4c5d7efa78006ce8fd9044f"><code>7788559</code></a> ci: skip the sourcemap when diffing dist</li>
<li><a href="https://github.com/dash0hq/otel-cicd-action/commit/46633641d19b828dc18d037ca6cd53e29dd0e2c5"><code>4663364</code></a> build: rebuild dist for undici 6.28.0</li>
<li><a href="https://github.com/dash0hq/otel-cicd-action/commit/31e4d4b3334b0eb76e7599441ab4475f8931e65b"><code>31e4d4b</code></a> build(deps): bump the npm_and_yarn group across 1 directory with 2 updates</li>
<li><a href="https://github.com/dash0hq/otel-cicd-action/commit/85d7618854e54f909adad504d6233c1dfed19b87"><code>85d7618</code></a> Use Dash0 endpoints in README examples, drop competitor links from website docs</li>
<li><a href="https://github.com/dash0hq/otel-cicd-action/commit/02e43cc25881ba326ebed7bd6b68f737d73c34d3"><code>02e43cc</code></a> chore: drop repository badges from the synced website docs (<a href="https://redirect.github.com/corentinmusard/otel-cicd-action/issues/85">#85</a>)</li>
<li>See full diff in <a href="https://github.com/corentinmusard/otel-cicd-action/compare/6022e68732c1cab4d2c8218b810f69006ee5cc34...895874bfae14f840e3032f1a14c3f2b45c93f4af">compare view</a></li>
</ul>
</details>
<br />
Updates `dawidd6/action-download-artifact` from 21 to 24
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/dawidd6/action-download-artifact/releases">dawidd6/action-download-artifact's releases</a>.</em></p>
<blockquote>
<h2>v24</h2>
<h2>What's Changed</h2>
<ul>
<li>fix: preserve workflow run ordering by <a href="https://github.com/dawidd6"><code>@dawidd6</code></a> in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/425">dawidd6/action-download-artifact#425</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/dawidd6/action-download-artifact/compare/v23...v24">https://github.com/dawidd6/action-download-artifact/compare/v23...v24</a></p>
<h2>v23</h2>
<h1>Info</h1>
<p>This release is rather big. Not gonna lie to you, I've used LLMs to get there. I can't vouch for all the changes but CI confirms there <em>should</em> be no regressions. Please report any issues you encounter with this release. You can always revert to previous working one.</p>
<h2>What's Changed</h2>
<ul>
<li>joint fixes and improvements by <a href="https://github.com/dawidd6"><code>@dawidd6</code></a> in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/417">dawidd6/action-download-artifact#417</a></li>
<li>build(deps): update brace-expansion by <a href="https://github.com/dawidd6"><code>@dawidd6</code></a> in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/418">dawidd6/action-download-artifact#418</a></li>
<li>Harden upload workflow token scope with explicit <code>GITHUB_TOKEN</code> permissions by <a href="https://github.com/dawidd6"><code>@dawidd6</code></a> with <a href="https://github.com/Copilot"><code>@Copilot</code></a> in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/419">dawidd6/action-download-artifact#419</a></li>
<li>fix: stream GHES artifact downloads by <a href="https://github.com/dawidd6"><code>@dawidd6</code></a> in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/420">dawidd6/action-download-artifact#420</a></li>
<li>chore: simplify action implementation by <a href="https://github.com/dawidd6"><code>@dawidd6</code></a> in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/421">dawidd6/action-download-artifact#421</a></li>
<li>chore: remove redundant action code by <a href="https://github.com/dawidd6"><code>@dawidd6</code></a> in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/422">dawidd6/action-download-artifact#422</a></li>
<li>chore: simplify artifact filtering by <a href="https://github.com/dawidd6"><code>@dawidd6</code></a> in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/423">dawidd6/action-download-artifact#423</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/dawidd6/action-download-artifact/compare/v22...v23">https://github.com/dawidd6/action-download-artifact/compare/v22...v23</a></p>
<h2>v22</h2>
<h2>What's Changed</h2>
<ul>
<li>build(deps): bump fast-xml-builder from 1.1.5 to 1.2.0 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/406">dawidd6/action-download-artifact#406</a></li>
<li>build(deps): bump actions/checkout from 6 to 7 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/407">dawidd6/action-download-artifact#407</a></li>
<li>build(deps): bump undici from 6.24.0 to 6.27.0 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/408">dawidd6/action-download-artifact#408</a></li>
<li>build(deps): bump filesize from 11.0.17 to 11.0.18 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/409">dawidd6/action-download-artifact#409</a></li>
<li>build(deps): bump filesize from 11.0.18 to 11.0.19 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/410">dawidd6/action-download-artifact#410</a></li>
<li>build(deps): bump adm-zip from 0.5.17 to 0.5.18 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/411">dawidd6/action-download-artifact#411</a></li>
<li>build(deps): bump filesize from 11.0.19 to 11.0.22 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/412">dawidd6/action-download-artifact#412</a></li>
<li>build(deps): bump adm-zip from 0.5.18 to 0.6.0 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/414">dawidd6/action-download-artifact#414</a></li>
<li>build(deps): bump undici from 6.27.0 to 6.28.0 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/415">dawidd6/action-download-artifact#415</a></li>
<li>node_modules: update by <a href="https://github.com/dawidd6"><code>@dawidd6</code></a> in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/416">dawidd6/action-download-artifact#416</a></li>
<li>Continue downloading after expired artifacts in non-fatal modes by <a href="https://github.com/oiahoon"><code>@oiahoon</code></a> in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/413">dawidd6/action-download-artifact#413</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/oiahoon"><code>@oiahoon</code></a> made their first contribution in <a href="https://redirect.github.com/dawidd6/action-download-artifact/pull/413">dawidd6/action-download-artifact#413</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/dawidd6/action-download-artifact/compare/v21...v22">https://github.com/dawidd6/action-download-artifact/compare/v21...v22</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/dawidd6/action-download-artifact/commit/d63b86af1b34672e53c440b1b83979861906bad7"><code>d63b86a</code></a> fix: preserve workflow run ordering (<a href="https://redirect.github.com/dawidd6/action-download-artifact/issues/425">#425</a>)</li>
<li><a href="https://github.com/dawidd6/action-download-artifact/commit/57aa996fc1713cc1579039614f4645a7f4841fd4"><code>57aa996</code></a> chore: simplify artifact filtering (<a href="https://redirect.github.com/dawidd6/action-download-artifact/issues/423">#423</a>)</li>
<li><a href="https://github.com/dawidd6/action-download-artifact/commit/7325d4694298cd63b2f5a28900f2e4c8dab127a0"><code>7325d46</code></a> chore: remove redundant action code (<a href="https://redirect.github.com/dawidd6/action-download-artifact/issues/422">#422</a>)</li>
<li><a href="https://github.com/dawidd6/action-download-artifact/commit/fdd98d5df412e1b2e66b544b4db823ae8046b226"><code>fdd98d5</code></a> chore: simplify action implementation (<a href="https://redirect.github.com/dawidd6/action-download-artifact/issues/421">#421</a>)</li>
<li><a href="https://github.com/dawidd6/action-download-artifact/commit/2156211c9c4919f6f7da650308a4fc3b9f44d772"><code>2156211</code></a> fix: stream GHES artifact downloads (<a href="https://redirect.github.com/dawidd6/action-download-artifact/issues/420">#420</a>)</li>
<li><a href="https://github.com/dawidd6/action-download-artifact/commit/a64f37ff0a7db82e37448a821118dd5688dd64ad"><code>a64f37f</code></a> Harden upload workflow token scope with explicit <code>GITHUB_TOKEN</code> permissions (...</li>
<li><a href="https://github.com/dawidd6/action-download-artifact/commit/b3e5a4caa7c334ec55e9d0966e40a0f2e1924853"><code>b3e5a4c</code></a> build(deps): update brace-expansion (<a href="https://redirect.github.com/dawidd6/action-download-artifact/issues/418">#418</a>)</li>
<li><a href="https://github.com/dawidd6/action-download-artifact/commit/01843d918b2bb1cf169ac0fc542e6c3181aa9219"><code>01843d9</code></a> joint fixes and improvements (<a href="https://redirect.github.com/dawidd6/action-download-artifact/issues/417">#417</a>)</li>
<li><a href="https://github.com/dawidd6/action-download-artifact/commit/7f871e041ed7fe12467d2d4196da8a466c5311ff"><code>7f871e0</code></a> fix: continue after expired artifacts (<a href="https://redirect.github.com/dawidd6/action-download-artifact/issues/413">#413</a>)</li>
<li><a href="https://github.com/dawidd6/action-download-artifact/commit/0015e1bd466de77cbc453080b6e744fe360b3c7b"><code>0015e1b</code></a> node_modules: update (<a href="https://redirect.github.com/dawidd6/action-download-artifact/issues/416">#416</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/dawidd6/action-download-artifact/compare/b6e2e70617bc3265edd6dab6c906732b2f1ae151...d63b86af1b34672e53c440b1b83979861906bad7">compare view</a></li>
</ul>
</details>
<br />
Updates `softprops/action-gh-release` from 3.0.2 to 3.0.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/softprops/action-gh-release/releases">softprops/action-gh-release's releases</a>.</em></p>
<blockquote>
<h2>v3.0.3</h2>
<p><code>3.0.3</code> is a maintenance release with updated dependencies. It also safely
classifies malformed GitHub API errors to avoid secondary failures (<a href="https://redirect.github.com/softprops/action-gh-release/issues/822">#822</a>).</p>
<h2>What's Changed</h2>
<h3>Bug fixes 🐛</h3>
<ul>
<li>fix: safely classify GitHub API errors by <a href="https://github.com/chenrui333"><code>@chenrui333</code></a> in <a href="https://redirect.github.com/softprops/action-gh-release/pull/822">softprops/action-gh-release#822</a></li>
</ul>
<h3>Other Changes 🔄</h3>
<ul>
<li>dependency updates</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md">softprops/action-gh-release's changelog</a>.</em></p>
<blockquote>
<h2>3.0.3</h2>
<p><code>3.0.3</code> is a maintenance release with updated dependencies. It also safely
classifies malformed GitHub API errors to avoid secondary failures (<a href="https://redirect.github.com/softprops/action-gh-release/issues/822">#822</a>).</p>
<h2>What's Changed</h2>
<h3>Bug fixes 🐛</h3>
<ul>
<li>fix: safely classify GitHub API errors by <a href="https://github.com/chenrui333"><code>@chenrui333</code></a> in <a href="https://redirect.github.com/softprops/action-gh-release/pull/822">softprops/action-gh-release#822</a></li>
</ul>
<h3>Other Changes 🔄</h3>
<ul>
<li>dependency updates</li>
</ul>
<h2>3.0.2</h2>
<p><code>3.0.2</code> is a patch release focused on release reliability and compatibility. It
reuses existing draft releases when publishing prereleases, supports replacing
release assets on Gitea, hardens streamed asset uploads, and provides clearer
release-creation diagnostics. It also includes TypeScript, coverage, and tooling
maintenance merged since <code>3.0.1</code>.</p>
<p>This release fixes <a href="https://redirect.github.com/softprops/action-gh-release/issues/795">#795</a>, <a href="https://redirect.github.com/softprops/action-gh-release/issues/438">#438</a>, and <a href="https://redirect.github.com/softprops/action-gh-release/issues/803">#803</a>. The upload transport hardening covers the
historical failure reported in <a href="https://redirect.github.com/softprops/action-gh-release/issues/790">#790</a>, although current hosted Node 24 runners did
not reproduce it naturally. The diagnostics work is related to <a href="https://redirect.github.com/softprops/action-gh-release/issues/786">#786</a> and does not
claim a reproducible release-creation fix.</p>
<h2>What's Changed</h2>
<h3>Exciting New Features 🎉</h3>
<ul>
<li>feat: improve release error reporting and test coverage by <a href="https://github.com/chenrui333"><code>@chenrui333</code></a> in <a href="https://redirect.github.com/softprops/action-gh-release/pull/813">softprops/action-gh-release#813</a></li>
</ul>
<h3>Bug fixes 🐛</h3>
<ul>
<li>fix: publish existing draft releases as prereleases by <a href="https://github.com/godfengliang"><code>@godfengliang</code></a> in <a href="https://redirect.github.com/softprops/action-gh-release/pull/801">softprops/action-gh-release#801</a></li>
<li>fix: upload small checksum assets reliably by <a href="https://github.com/chenrui333"><code>@chenrui333</code></a> in <a href="https://redirect.github.com/softprops/action-gh-release/pull/815">softprops/action-gh-release#815</a></li>
<li>fix: replace existing release assets on Gitea by <a href="https://github.com/chenrui333"><code>@chenrui333</code></a> in <a href="https://redirect.github.com/softprops/action-gh-release/pull/816">softprops/action-gh-release#816</a></li>
<li>fix: clarify release creation 404 errors by <a href="https://github.com/chenrui333"><code>@chenrui333</code></a> in <a href="https://redirect.github.com/softprops/action-gh-release/pull/817">softprops/action-gh-release#817</a></li>
</ul>
<h3>Other Changes 🔄</h3>
<ul>
<li>chore(deps): upgrade TypeScript to 7 by <a href="https://github.com/chenrui333"><code>@chenrui333</code></a> in <a href="https://redirect.github.com/softprops/action-gh-release/pull/812">softprops/action-gh-release#812</a></li>
<li>chore(deps): remove unused TypeScript tooling by <a href="https://github.com/chenrui333"><code>@chenrui333</code></a> in <a href="https://redirect.github.com/softprops/action-gh-release/pull/814">softprops/action-gh-release#814</a></li>
<li>dependency, Node 24 pin, and CI maintenance merged since <code>3.0.1</code></li>
</ul>
<h2>3.0.1</h2>
<ul>
<li>maintenance release with updated dependencies</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/softprops/action-gh-release/commit/efb35369e0ad2afab669f228072c1b0d510eae64"><code>efb3536</code></a> release 3.0.3 (<a href="https://redirect.github.com/softprops/action-gh-release/issues/840">#840</a>)</li>
<li><a href="https://github.com/softprops/action-gh-release/commit/6441963a7597ab67f36fea0287a7ae58a9bfd8fe"><code>6441963</code></a> chore(deps): bump the npm group with 2 updates (<a href="https://redirect.github.com/softprops/action-gh-release/issues/839">#839</a>)</li>
<li><a href="https://github.com/softprops/action-gh-release/commit/e5ee6bc58a36b838b92fc1217f2e4b414b5abcc8"><code>e5ee6bc</code></a> chore(deps): bump esbuild from 0.28.1 to 0.28.2 in the npm group (<a href="https://redirect.github.com/softprops/action-gh-release/issues/837">#837</a>)</li>
<li><a href="https://github.com/softprops/action-gh-release/commit/d1e66170d32c9ec7bbcb7fae044d3d686ce304d3"><code>d1e6617</code></a> chore(deps): bump undici from 6.27.0 to 6.28.0 (<a href="https://redirect.github.com/softprops/action-gh-release/issues/831">#831</a>)</li>
<li><a href="https://github.com/softprops/action-gh-release/commit/64037519ba20f54c01bc1dc90342c929aac5a2fa"><code>6403751</code></a> chore(deps): bump the npm group with 2 updates (<a href="https://redirect.github.com/softprops/action-gh-release/issues/835">#835</a>)</li>
<li><a href="https://github.com/softprops/action-gh-release/commit/7c7184b6876126a5df15adc5b679dc450a393725"><code>7c7184b</code></a> chore(deps): bump postcss from 8.5.19 to 8.5.25 (<a href="https://redirect.github.com/softprops/action-gh-release/issues/833">#833</a>)</li>
<li><a href="https://github.com/softprops/action-gh-release/commit/0f3f0d2943676d58f9698b3ab590c2056023d77d"><code>0f3f0d2</code></a> chore(deps): bump brace-expansion from 5.0.8 to 5.0.9 (<a href="https://redirect.github.com/softprops/action-gh-release/issues/832">#832</a>)</li>
<li><a href="https://github.com/softprops/action-gh-release/commit/77fb938f2f95e717ce6705d2909af527263360a0"><code>77fb938</code></a> chore(deps): bump prettier from 3.9.5 to 3.9.6 in the npm group (<a href="https://redirect.github.com/softprops/action-gh-release/issues/830">#830</a>)</li>
<li><a href="https://github.com/softprops/action-gh-release/commit/5a6f51711ce2ba103b78f5e9550f810679f11e0e"><code>5a6f517</code></a> chore(deps): bump brace-expansion from 5.0.7 to 5.0.8 (<a href="https://redirect.github.com/softprops/action-gh-release/issues/828">#828</a>)</li>
<li><a href="https://github.com/softprops/action-gh-release/commit/a3c91c98f80000f5b06c7fc0327c54f51c6ab7d8"><code>a3c91c9</code></a> chore(deps): bump the github-actions group with 2 updates (<a href="https://redirect.github.com/softprops/action-gh-release/issues/825">#825</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/softprops/action-gh-release/compare/3d0d9888cb7fd7b750713d6e236d1fcb99157228...efb35369e0ad2afab669f228072c1b0d510eae64">compare view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions
</details> |
dependencies
github_actions
CI
|
24/24 |
.github/workflows/actionlint.yml,.github/workflows/add_label_from_diff.yaml,.github/workflows/build_template.yml,.github/workflows/cache_test.yml,.github/workflows/check_pr_titles.yaml,.github/workflows/daily.yml,.github/workflows/docker_build.yml,.github/workflows/export_crossrefs.yml,.github/workflows/export_telemetry.yaml,.github/workflows/latest_import.yml,.github/workflows/maintainer_bors_wf_run.yml,.github/workflows/maintainer_merge_wf_run.yml,.github/workflows/nightly_bump_and_merge.yml,.github/workflows/nightly_merge_master.yml,.github/workflows/nolints.yml,.github/workflows/release.yml,.github/workflows/remove_deprecated_decls.yml,.github/workflows/rm_set_option.yml,.github/workflows/shake.yaml,.github/workflows/update_dependencies.yml,.github/workflows/weekly-lints.yml |
21 |
1 |
['github-actions'] |
nobody |
0-71549 19 hours ago |
0-72169 20 hours ago |
0-72049 20 hours |
| 42790 |
xroblot author:xroblot |
chore(RingTheory/Ideal/Norm): weaken the `Ideal.absNorm` API to rings with finite quotients |
The last results of the `Ideal.absNorm` API that still assumed a `ℤ`-basis are weakened to their honest hypotheses: `absNorm_eq_zero_iff` and its `nonZeroDivisors` corollaries only need `Ring.HasFiniteQuotients` and `Infinite`, while the results whose statement involves `ℤ` (`exists_prime_and_absNorm_eq_pow`, `exists_isMaximal_dvd_of_dvd_absNorm`) need `CharZero` or `FaithfulSMul ℤ` together with `Algebra.IsIntegral ℤ`.
`exists_prime_and_absNorm_eq_pow` is also split, the primed version taking `P ≠ ⊥` as an explicit hypothesis and the unprimed one deducing it.
`exists_isMaximal_dvd_of_dvd_absNorm` now takes `FaithfulSMul ℤ S` explicitly. This is not a new requirement on callers: it was previously implied by the `Module.Free ℤ S` that the statement no longer assumes.
This is the fourth part of a sequence of PRs generalizing `Ideal.absNorm` away from `Module.Free ℤ`, after #42081, #42784 and #42787.
Prepared with Claude Code 🤖
---
- [x] depends on: #42787
|
|
59/38 |
Mathlib/NumberTheory/NumberField/Discriminant/Different.lean,Mathlib/RingTheory/FractionalIdeal/Norm.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean |
3 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
0-71412 19 hours ago |
0-71412 19 hours ago |
0-71338 19 hours |
| 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 |
59/0 |
Mathlib/RingTheory/PowerSeries/Derivative.lean |
1 |
2 |
['WenrongZou', 'github-actions'] |
nobody |
0-68324 18 hours ago |
0-68956 19 hours ago |
0-68836 19 hours |
| 43304 |
emlis42 author:emlis42 |
feat: `Icc a b - Icc c d = Icc (a - d) (b - c)` |
This PR adds `Set.Icc_div_Icc` and `Set.Icc_sub_Icc` as companions to `Set.Icc_mul_Icc` and `Set.Icc_add_Icc` |
t-algebra label:t-algebra$ |
5/0 |
Mathlib/Algebra/Order/Group/Pointwise/Interval.lean |
1 |
1 |
['github-actions'] |
nobody |
0-66781 18 hours ago |
0-69092 19 hours ago |
0-68972 19 hours |
| 42312 |
sfingali author:sfingali |
feat(Topology): huber (f-adic) rings |
### Summary
Defines Huber (f-adic) rings: topological rings admitting an open subring whose
subspace topology is the `I`-adic topology for a finitely generated ideal `I`
(Wedhorn, *Adic Spaces*, arXiv:1910.05934, Prop. and Def. 6.1, p. 46).
* `HuberRing.RingOfDefinition` — the pair of definition `(A₀, I)`: an open subring
`A₀ ⊆ A` with `IsAdic I` for a finitely generated ideal `I` of `A₀` (data).
* `HuberRing.IsHuberRing` — a topological ring admitting a ring of definition
(property).
* `HuberRing.ringOfDefinition_iff_open_adic` — Wedhorn, Lemma 6.2 (a) ↔ (b), p. 46:
a subring is a ring of definition iff it is open and adic.
This is the first step of a planned adic/perfectoid pipeline (Huber rings →
Huber pairs → continuous valuations → Spa → perfectoid fields → tilting), following
the design of the Lean 3 `lean-perfectoid-spaces` project (ring of definition as
data, Huber ring as a property). Follow-ups (depending on #40013's boundedness):
Lemma 6.2 (c) (ring of definition ⟺ open + bounded) and Cor. 6.4(3) (the
power-bounded elements form a subring, the union of all rings of definition).
### References
* T. Wedhorn, *Adic Spaces*, arXiv:1910.05934, Prop. and Def. 6.1, Lemma 6.2,
Cor. 6.4 (pp. 46–47).
|
t-topology
new-contributor
|
84/0 |
Mathlib.lean,Mathlib/Topology/Algebra/Nonarchimedean/HuberRing.lean |
2 |
6 |
['github-actions', 'pepamontero'] |
nobody |
0-66161 18 hours ago |
32-38032 32 days ago |
32-38581 32 days |
| 30109 |
scholzhannah author:scholzhannah |
feat: the subcomplexes of a (relative classical) CW complex form a completely distributive lattice |
In this PR we prove that the space of subcomplexes `Subcomplex C` of a (relative classical) CW complex `C` is a `CompletelyDistribLattice`.
---
<!-- 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-topology |
313/0 |
Mathlib/Topology/CWComplex/Classical/Subcomplex.lean |
1 |
32 |
['ADedecker', 'felixpernegger', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'scholzhannah', 'themathqueen'] |
ADedecker assignee:ADedecker |
0-65474 18 hours ago |
0-65474 18 hours ago |
109-67637 109 days |
| 39692 |
YaelDillies author:YaelDillies |
chore(Algebra/Order/BigOperators): follow the `₀` naming convention |
The naming convention stipulates that `MonoidWithZero` lemmas corresponding to `Monoid` lemmas should be suffixed with `₀`, but currently in the big operators API it is the `Monoid` lemmas that are primed. This PR unprimes the `Monoid` lemmas and appends `₀` to the `MonoidWithZero` lemmas.
Also deprecate two primed lemmas that only differed from the unprimed versions in a minor way.
## Renames
Moves:
* `finprod_le_finprod'` → `finprod_le_finprod`
* `finprod_le_finprod` → `finprod_le_finprod₀`
* `Finset.prod_le_prod'` → `Finset.prod_le_prod`
* `Finset.one_le_prod'` → `Finset.one_le_prod`
* `Finset.one_le_prod''` → `Finset.one_le_prod`
* `Finset.sum_nonneg'` → `Finset.sum_nonneg`
* `Finset.prod_le_one'` → `Finset.prod_le_one`
* `Finset.prod_le_prod_of_subset_of_one_le'` → `Finset.prod_le_prod_of_subset_of_one_le`
* `Finset.prod_le_prod_of_subset_of_le_one'` → `Finset.prod_le_prod_of_subset_of_le_one`
* `Finset.prod_mono_set_of_one_le'` → `Finset.prod_mono_set_of_one_le`
* `Finset.prod_anti_set_of_le_one'` → `Finset.prod_anti_set_of_le_one`
* `Finset.prod_le_univ_prod_of_one_le'` → `Finset.prod_le_univ_prod_of_one_le`
* `Finset.prod_eq_one_iff_of_one_le'` → `Finset.prod_eq_one_iff_of_one_le`
* `Finset.prod_eq_one_iff_of_le_one'` → `Finset.prod_eq_one_iff_of_le_one`
* `Finset.single_le_prod'` → `Finset.single_le_prod`
* `Finset.prod_fiberwise_le_prod_of_one_le_prod_fiber'` → `Finset.prod_fiberwise_le_prod_of_one_le_prod_fiber`
* `Finset.prod_le_prod_fiberwise_of_prod_fiber_le_one'` → `Finset.prod_le_prod_fiberwise_of_prod_fiber_le_one`
* `Finset.abs_sum_of_nonneg'` → `Finset.abs_sum_of_nonneg`
* `Finset.prod_le_prod_of_subset'` → `Finset.prod_le_prod_of_subset`
* `Finset.prod_mono_set'` → `Finset.prod_mono_set`
* `Finset.prod_le_prod_of_ne_one'` → `Finset.prod_le_prod_of_ne_one`
* `Finset.prod_lt_prod'` → `Finset.prod_lt_prod`
* `Finset.prod_lt_prod_of_nonempty'` → `Finset.prod_lt_prod_of_nonempty`
* `Finset.prod_lt_prod_of_subset'` → `Finset.prod_lt_prod_of_subset`
* `Finset.single_lt_prod'` → `Finset.single_lt_prod`
* `Finset.exists_lt_of_prod_lt'` → `Finset.exists_lt_of_prod_lt`
* `Finset.exists_le_of_prod_le'` → `Finset.exists_le_of_prod_le`
* `Finset.exists_one_lt_of_prod_one_of_exists_ne_one'` → `Finset.exists_one_lt_of_prod_one_of_exists_ne_one`
* `Finset.prod_le_prod_of_injOn'` → `Finset.prod_le_prod_of_injOn`
* `Finset.prod_le_prod_of_injOn` → `Finset.prod_le_prod_of_injOn₀`
* `Fintype.prod_mono'` → `Fintype.prod_mono`
* `Fintype.prod_strictMono'` → `Fintype.prod_strictMono`
* `List.Forall₂.prod_le_prod'` → `List.Forall₂.prod_le_prod`
* `List.Sublist.prod_le_prod'` → `List.Sublist.prod_le_prod`
* `List.SublistForall₂.prod_le_prod'` → `List.SublistForall₂.prod_le_prod`
* `List.prod_le_prod'` → `List.prod_le_prod`
* `List.prod_lt_prod'` → `List.prod_lt_prod`
* `List.exists_lt_of_prod_lt'` → `List.exists_lt_of_prod_lt`
* `List.exists_le_of_prod_le'` → `List.exists_le_of_prod_le`
* `Multiset.prod_lt_prod'` → `Multiset.prod_lt_prod`
* `Multiset.prod_lt_prod_of_nonempty'` → `Multiset.prod_lt_prod_of_nonempty`
* `Finset.prod_le_prod` → `Finset.prod_le_prod₀`
* `Finset.prod_le_one` → `Finset.prod_le_one₀`
* `Finset.one_le_prod` → `Finset.one_le_prod`
* `Finset.prod_le_prod_of_subset_of_one_le` → `Finset.prod_le_prod_of_subset_of_one_le₀`
* `Finset.prod_le_prod_of_subset_of_le_one` → `Finset.prod_le_prod_of_subset_of_le_one₀`
* `Finset.prod_mono_set_of_one_le` → `Finset.prod_mono_set_of_one_le₀`
* `Finset.prod_anti_set_of_le_one` → `Finset.prod_anti_set_of_le_one₀`
* `Finset.prod_lt_prod` → `Finset.prod_lt_prod₀`
* `Finset.prod_lt_prod_of_nonempty` → `Finset.prod_lt_prod_of_nonempty₀`
## Deprecations
* `Finset.sum_nonneg'`, `Finset.one_le_prod''`
[Zulip](https://leanprover.zulipchat.com/#narrow/channel/345428-mathlib-reviewers/topic/The.20.E2.82.80.20suffix/with/604912624)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-order
label:t-algebra$ |
316/242 |
Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/BigOperators/Group/Multiset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/InnerProductSpace/Orientation.lean,Mathlib/Analysis/InnerProductSpace/Subspace.lean,Mathlib/Analysis/Normed/Ring/Basic.lean,Mathlib/Analysis/Normed/Ring/InfiniteProd.lean,Mathlib/Analysis/ODE/DiscreteGronwall.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Extremal.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/MeasureTheory/Constructions/Pi.lean,Mathlib/MeasureTheory/Measure/HasOuterApproxClosedProd.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/NumberTheory/Bertrand.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/NumberTheory/Height/MvPolynomial.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Basic.lean,Mathlib/NumberTheory/Primorial.lean,Mathlib/NumberTheory/SelbergSieve.lean,Mathlib/NumberTheory/SiegelsLemma.lean,Mathlib/NumberTheory/SmoothNumbers.lean,Mathlib/Probability/ProductMeasure.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Eval.lean,Mathlib/Topology/Algebra/InfiniteSum/ENNReal.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean |
36 |
17 |
['Vierkantor', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'vihdzp'] |
b-mehta assignee:b-mehta |
0-63720 17 hours ago |
3-54263 3 days ago |
49-85297 49 days |
| 43307 |
Parcly-Taxel author:Parcly-Taxel |
feat: quaternion operations wrt 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 rw [mk_mul_mk, QuaternionAlgebra.mk_one]; norm_num
inv_val := by rw [mk_mul_mk, QuaternionAlgebra.mk_one]; 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 |
1 |
['github-actions'] |
nobody |
0-63493 17 hours ago |
0-64805 17 hours ago |
0-64685 17 hours |
| 43271 |
loefflerd author:loefflerd |
chore(MeasureTheory/VectorMeasure): split long file Basic.lean |
... into 5 smaller files:
- Defs.lean (86 lines) - core definitions and coercions
- Basic.lean (413 lines) - basic API, algebraic structures, and Dirac measures
- Operations.lean (575 lines) - conversions, maps, restrictions, and trimming
- Order.lean (367 lines) - ordering, restricted inequalities, and signed-measure conversions
- Relations.lean (220 lines) - absolute continuity and mutual singularity
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
tech debt
|
1271/1095 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/Complex.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/MeasureTheory/VectorMeasure/Basic.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/Hahn.lean,Mathlib/MeasureTheory/VectorMeasure/Decomposition/Jordan.lean,Mathlib/MeasureTheory/VectorMeasure/Defs.lean,Mathlib/MeasureTheory/VectorMeasure/Operations.lean,Mathlib/MeasureTheory/VectorMeasure/Order.lean,Mathlib/MeasureTheory/VectorMeasure/Relations.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean,Mathlib/MeasureTheory/VectorMeasure/WithDensity.lean |
12 |
1 |
['github-actions'] |
nobody |
0-63343 17 hours ago |
1-44232 1 day ago |
1-44112 1 day |
| 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$ |
69/16 |
Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/FieldTheory/Separable.lean |
2 |
2 |
['copilot-pull-request-reviewer', 'github-actions'] |
nobody |
0-57260 15 hours ago |
3-67731 3 days ago |
3-68147 3 days |
| 43193 |
Brian-Nugent author:Brian-Nugent |
feat(Algebra/Category/ModuleCat): refactor Monoidal.lean to use `PresheafOfModulesOfCommRing` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #xyz [optional extra text]
-->
- [ ] depends on: #43192
[](https://gitpod.io/from-referrer/)
|
t-algebra
tech debt
large-import
t-category-theory
label:t-algebra$ |
42/44 |
Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean |
1 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-56881 15 hours ago |
0-57482 15 hours ago |
0-77306 21 hours |
| 43195 |
Brian-Nugent author:Brian-Nugent |
feat(Algebra/Category/ModuleCat/Differentials): refactor the presheaf of differentials to use `PresheafOfModulesOfCommRing` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #43192
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-category-theory
large-import
tech debt
label:t-algebra$ |
23/25 |
Mathlib/Algebra/Category/ModuleCat/Differentials/Presheaf.lean |
1 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-56699 15 hours ago |
0-57333 15 hours ago |
0-76692 21 hours |
| 42914 |
lman310 author:lman310 |
feat(Algebra): add zpow_right_injective |
Add `zpow_right_injective`, stating that for a nontrivial element `a` of a
multiplicatively torsion free group, the map `n : ℤ ↦ a ^ n` is injective,
as well as the corresponding additive theorem `zsmul_left_injective` using
`to_additive`
Use the new additive theorem in `CharZero.of_isAddTorsionFree`, replacing its
dependency on the general `smul_left_injective`. This allows
`CharZero.of_isAddTorsionFree` to move from
`Mathlib.Algebra.Module.Torsion.Free` to the earlier
`Mathlib.Algebra.Module.NatInt`, resolving the existing TODO
---
Codex was used to find the appropriate file `Mathlib.Algebra.Module.NatInt` for moving `CharZero.of_isAddTorsionFree`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
25/14 |
Mathlib/Algebra/Group/Torsion.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/Module/Torsion/Free.lean |
3 |
13 |
['felixpernegger', 'github-actions', 'lman310', 'themathqueen'] |
nobody |
0-50793 14 hours ago |
5-86370 5 days ago |
10-74354 10 days |
| 43312 |
plp127 author:plp127 |
feat: pushforward of uniform spaces |
We define the pushforward of uniforms spaces and show it is left adjoint to the pullback.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
136/2 |
Mathlib/Topology/UniformSpace/Basic.lean,Mathlib/Topology/UniformSpace/Cauchy.lean |
2 |
1 |
['github-actions'] |
nobody |
0-50745 14 hours ago |
0-53548 14 hours ago |
0-53605 14 hours |
| 33466 |
Shreyas4991 author:Shreyas4991 |
refactor(Combinatorics/Digraph): add vertex 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
277/52 |
Mathlib/Combinatorics/Digraph/Basic.lean,Mathlib/Combinatorics/Digraph/Orientation.lean |
2 |
124 |
['IvanRenison', 'Shreyas4991', 'SnirBroshi', 'YaelDillies', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vihdzp', 'vlad902'] |
YaelDillies assignee:YaelDillies |
0-49784 13 hours ago |
0-54253 15 hours ago |
31-30703 31 days |
| 41719 |
peakpoint author:peakpoint |
feat(Topology): paracompact TFAE for regular spaces |
This adds a result of Michael (https://ncatlab.org/nlab/show/Michael%27s+theorem) that states the equivalence of paracompactness with a few similar conditions for a regular space.
A consequence is that a regular Lindelof space is paracompact.
- [ ] depends on: #41967
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
125/1 |
Mathlib/Topology/Compactness/Paracompact.lean,Mathlib/Topology/LocallyFinite.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
0-49075 13 hours ago |
0-70179 19 hours ago |
7-65904 7 days |
| 42181 |
joelriou author:joelriou |
refactor(AlgebraicTopology): redefine the topological simplex using `StdSimplex` instead of `stdSimplex` |
Before #28893, the topological simplex (used for the definition of singular homology) was defined as a subtype of `Fin (n + 1) → ℝ≥0` which did not interact well with the convexity API which at the time required working with subtypes of vector spaces. Since #28893, we relied on `stdSimplex` which was a subtype of `Fin (n + 1) → ℝ` in order to use the convexity API. Since #31984, the convexity API allows to work with convex spaces not necessarily embedded in vector spaces and we have the new definition of `StdSimplex`, on which a topology was set up in #42131. This PR deprecates `stdSimplex` in favour of `StdSimplex`.
---
This PR lifts the ban about importing `Geometry` from `AlgebraicTopology`, `Computability` and `Topology`. (The need for this is that much of the convexity API moved from `Analysis` to `Geometry`.)
- [x] depends on: #43260
- [x] depends on: #43202
- [x] depends on: #43206
- [x] depends on: #43210
- [x] depends on: #42131
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
large-import
|
154/94 |
Mathlib/AlgebraicTopology/SimplicialSet/TopAdj.lean,Mathlib/AlgebraicTopology/SingularSet.lean,Mathlib/AlgebraicTopology/TopologicalSimplex.lean,Mathlib/Analysis/Convex/StdSimplex.lean,Mathlib/Analysis/Convex/Topology.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Topology/Category/TopCat/Monoidal.lean,Mathlib/Topology/Homotopy/TopCat/ZerothHomotopy.lean |
8 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-48342 13 hours ago |
0-52259 14 hours ago |
0-53613 14 hours |
| 41920 |
junjihashimoto author:junjihashimoto |
feat(Analysis/CliffordAlgebra): the pseudoscalar of Cl(n,0) and its complex structure |
We study the Clifford algebra of Euclidean `n`-space (the quadratic form `x ↦ ⟪x, x⟫_ℝ` on `EuclideanSpace ℝ (Fin n)`). The pseudoscalar `ω = e₀ ⋯ eₙ₋₁` satisfies
* `ω * ω = (-1) ^ (n.choose 2)` (`pseudoscalar_mul_pseudoscalar'`),
* `γᵢ * ω = (-1) ^ (n - 1) • (ω * γᵢ)` (`γ_mul_pseudoscalar`),
so it is central for odd `n`, and a square root of `-1` iff `n ≡ 2, 3 [MOD 4]`. In that case left multiplication by `ω` is a complex structure: we provide a scoped `Module ℂ` instance (via `Complex.liftAux` and `Module.compHom`; no commutation is needed for a module structure, which covers the non-central case `n ≡ 2 [MOD 4]`), and for `n ≡ 3 [MOD 4]` an `Algebra ℂ` structure as a non-instance def.
The sign computations are done by moving a generator through a product of distinct generators (`γ_mul_prod`, `γ_mul_prod_mem`, `prod_sq`), with no case analysis on `n`.
In a follow-up PR this makes the Clifford–Fourier transform (Ebling–Scheuermann) an instance of the ordinary vector-valued Fourier transform, giving Plancherel's theorem and the inversion formula.
- [ ] depends on: (nothing)
|
t-analysis
new-contributor
|
303/0 |
Mathlib.lean,Mathlib/Analysis/CliffordAlgebra/Euclidean.lean |
2 |
3 |
['github-actions', 'j-loreaux'] |
nobody |
0-46585 12 hours ago |
44-80697 44 days ago |
44-81077 44 days |
| 42704 |
gasparattila author:gasparattila |
refactor(Data/FunLike): make the arguments of `Is*Apply` implicit |
Since `IsAddApply F α β` and similar classes have `[FunLike F α β]` as an assumption, `α` and `β` can always be inferred from `F`, so they can be made implicit.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
201/201 |
Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Order/Group/End.lean,Mathlib/Algebra/Order/Module/PositiveLinearMap.lean,Mathlib/Analysis/BoxIntegral/Partition/Additive.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/TestFunction.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Analysis/Normed/Module/Seminorm/Basic.lean,Mathlib/Data/FunLike/Group.lean,Mathlib/Data/FunLike/IsApply.lean,Mathlib/Data/FunLike/Module.lean,Mathlib/Data/FunLike/Ring.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Operations.lean,Mathlib/MeasureTheory/VectorMeasure/Basic.lean,Mathlib/NumberTheory/ModularForms/Basic.lean,Mathlib/NumberTheory/ModularForms/SlashInvariantForms.lean,Mathlib/NumberTheory/Padics/Measure/Basic.lean,Mathlib/Probability/Kernel/Defs.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Positive.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean,Mathlib/Topology/Algebra/Module/Spaces/UniformConvergenceCLM.lean |
26 |
3 |
['gasparattila', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-45811 12 hours ago |
14-67980 14 days ago |
19-15965 19 days |
| 35548 |
gasparattila author:gasparattila |
fix(Tactic/FunProp): do not unfold semireducible definitions in the presence of projections |
Currently, `fun_prop` incorrectly unfolds semireducible definitions when a projection or recursor is applied. This PR fixes this by switching to `whnfR` together with `Lean.Meta.withCanUnfoldPred` for the custom unfolding logic.
Unfortunately, there are many proofs which rely on this bug. To avoid breaking proofs, the option `fun_prop.projDefaultTransparency` is added for locally restoring the previous behavior. Removing the uses of this option is left for future PRs.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
tech debt
|
114/53 |
Mathlib/Analysis/Matrix/Normed.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Condensed/Light/TopCatAdjunction.lean,Mathlib/Condensed/TopCatAdjunction.lean,Mathlib/Geometry/Convex/ConvexSpace/PathConnectedSpaceStdSimplex.lean,Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/NumberTheory/ModularForms/Bounds.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/FunctionData.lean,Mathlib/Tactic/FunProp/Mor.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/FunProp/Types.lean,Mathlib/Topology/Algebra/AffineSubspace.lean,Mathlib/Topology/Algebra/ConstMulAction.lean,Mathlib/Topology/Algebra/Constructions.lean,Mathlib/Topology/Algebra/ContinuousAffineEquiv.lean,Mathlib/Topology/Algebra/Field.lean,Mathlib/Topology/Algebra/Group/ContinuousDiv.lean,Mathlib/Topology/Algebra/Group/ContinuousInv.lean,Mathlib/Topology/Algebra/Group/Matrix.lean,Mathlib/Topology/Algebra/Group/Torsor.lean,Mathlib/Topology/Algebra/Group/Units.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Positive.lean,Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/Algebra/Module/IsWeak.lean,Mathlib/Topology/Algebra/Module/Spaces/WeakBilin.lean,Mathlib/Topology/Category/TopCat/Limits/Basic.lean,Mathlib/Topology/Constructions/SumProd.lean,Mathlib/Topology/ContinuousMap/Algebra.lean,Mathlib/Topology/Homeomorph/Lemmas.lean,Mathlib/Topology/Semicontinuity/Michael.lean,MathlibTest/FunPropMinimal.lean |
32 |
12 |
['DavidLedvinka', 'JovanGerb', 'gasparattila', 'github-actions', 'j-loreaux', 'lecopivo', 'mathlib-merge-conflicts'] |
nobody |
0-42112 11 hours ago |
0-45301 12 hours ago |
11-24601 11 days |
| 43320 |
JovanGerb author:JovanGerb |
chore(Order/ConditionallyCompleteLattice/Finset): use `to_dual` |
This PR uses `to_dual` in `Order/ConditionallyCompleteLattice/Finset`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
23/109 |
Mathlib/Order/ConditionallyCompleteLattice/Finset.lean |
1 |
1 |
['github-actions'] |
nobody |
0-41829 11 hours ago |
0-44431 12 hours ago |
0-44311 12 hours |
| 43118 |
homeowmorphism author:homeowmorphism |
feat(Geometry/Group): define a via word metric with respect to `Group.Generators` via `wordProd`. |
A word over a generating family `P : Group.Generators G ι` is a list of letters, each carrying a
sign: `List (ι × Bool)`. The evaluation map is then given by `Group.Generators.wordProd`.
The word length of an element is the length of a shortest representing word, over a generating
family given by `Group.Generators`, and the word metric is the distance it induces on `G`. The
resulting object is `NormedGroup G` with `dist g h = ‖g⁻¹ * h‖`.
---
Use of AI: Claude Fable was used to advise with API design using [mathlib-api](https://github.com/homeowmorphism/mathlib-api). I also used it to [pair-program](https://github.com/homeowmorphism/pair-programming) with me which means it would (at times heavily) hint at how to write statements/proofs. I used it for golfing and re-factoring 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-geometric-group-theory |
201/0 |
Mathlib.lean,Mathlib/Geometry/Group/WordMetric.lean,Mathlib/Geometry/Group/WordProd.lean |
3 |
32 |
['YaelDillies', 'github-actions', 'homeowmorphism', 'kbuzzard', 'tb65536'] |
nobody |
0-38552 10 hours ago |
4-72661 4 days ago |
5-41766 5 days |
| 42468 |
Cobord author:Cobord |
feat: added lambda rings |
Description:
This does lambda rings. It is mostly over rationals so we can concern ourselves only with the psi^n operations and not the more complicated lambda^n operations. Doing the more general case could be another PR. This also includes the Getzler type formulation as the map involving Lambda_R the ring of symmetric functions in countably many variables (which again because R is assumed as [Algebra Q R] is described with it's power sum generators). That is to say the Plethystic action. Homomorphisms of such lambda rings are also covered. In particular, those of inclusions of subrings closed under those psi^n operations. In addition, one of the primary motivating examples of K(GL(n)/P) otimes_Z Q is described as such an instance to provide an example that is not Lambda_R.
This was done with Claude Code for generating initial versions but I had not given a good full prompt about prefering psi^n over lambda^n or using a structure instead of a prop in AdamsHom so I ended up rewriting most of those parts by hand anyway. The exception is the PrimeExtend file which is about only giving the psi^p instead of all of the psi^n, but abstracted away from those particular details per clarifying instructions after an initial version.
Because PrimeExtend is so much, this has a tag of
LLM-generated
In addition even though it is in RingTheory it is highly relevant to
t-combinatorics
in the sense of algebraic combinatorics due to use of ring of symmetric functions in countably many variables. |
t-ring-theory
new-contributor
t-combinatorics
LLM-generated
|
898/0 |
Mathlib.lean,Mathlib/RingTheory/LambdaRing/AdamsHom.lean,Mathlib/RingTheory/LambdaRing/AdamsOperations.lean,Mathlib/RingTheory/LambdaRing/KFlagExample.lean,Mathlib/RingTheory/LambdaRing/PrimeExtend.lean,Mathlib/RingTheory/LambdaRing/SymmetricFunctions.lean |
6 |
4 |
['Cobord', 'github-actions'] |
nobody |
0-37403 10 hours ago |
22-62994 22 days ago |
22-63645 22 days |
| 43252 |
teorth author:teorth |
feat(NumberTheory/LSeries): functional equation for the log-derivative of the zeta function |
Adds `Mathlib/NumberTheory/LSeries/RiemannZetaLogDeriv.lean` with a single result, `logDeriv_riemannZeta_one_sub`: for `s` not an integer with `riemannZeta s ≠ 0`,
ζ'/ζ (s) = -ζ'/ζ (1 - s) + log (2 π) - digamma s + (π / 2) * tan (π * s / 2)
obtained by logarithmically differentiating the functional equation `riemannZeta_one_sub`, mirroring the existing `Complex.digamma_one_sub`.
---
Placed in a new leaf file because it needs both `riemannZeta` and `Complex.digamma`, which don't currently import
each other.
The code was initially generated by an AI, but then heavily golfed and reviewed by the author.
[](https://gitpod.io/from-referrer/)
|
t-number-theory |
55/0 |
Mathlib.lean,Mathlib/NumberTheory/LSeries/RiemannZetaLogDeriv.lean |
2 |
1 |
['github-actions'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
0-34796 9 hours ago |
2-7475 2 days ago |
2-7387 2 days |
| 42849 |
mcdoll author:mcdoll |
feat(Analysis/LocallyConvex): induction principles for `WithSeminorm` |
Adds two "induction principles" for seminorms: a property holds for a continuous seminorm if it holds for all seminorms that induce the topology, the zero seminorm, is monotone, and closed under taking suprema and scalar multiplication.
We add two versions: one where we checked suprema and one where we check addition (the later being more convenient in practice).
Co-authored-by: Anatole Dedecker <anatolededecker@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-analysis |
49/0 |
Mathlib/Analysis/LocallyConvex/WithSeminorms.lean |
1 |
5 |
['github-actions', 'j-loreaux', 'mcdoll'] |
nobody |
0-34327 9 hours ago |
0-35696 9 hours ago |
16-32528 16 days |
| 42076 |
JovanGerb author:JovanGerb |
feat(Algebra/Tropical/Basic): split `Tropical` into `MinTropical`/`MaxTropical` |
This PR renames `Tropical` to `MinTropical`, and uses `to_dual` to generate `MaxTropical` from it. Having both forms available is a lot more convenient than having to work with `Tropical (_ᵒᵈ)` if you want to use the opposite 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
376/249 |
Mathlib/Algebra/Order/Monoid/Unbundled/MinMax.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Pow.lean,Mathlib/Algebra/Tropical/Basic.lean,Mathlib/Algebra/Tropical/BigOperators.lean,Mathlib/Algebra/Tropical/Lattice.lean,Mathlib/Analysis/Asymptotics/ExpGrowth.lean |
6 |
4 |
['JovanGerb', 'b-mehta', 'github-actions', 'mathlib-bors'] |
nobody |
0-33565 9 hours ago |
0-47987 13 hours ago |
0-47883 13 hours |
| 43323 |
JovanGerb author:JovanGerb |
chore(Order): use `to_dual` in various places |
This PR uses `to_dual` for various order 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-order |
23/106 |
Mathlib/Order/Bounded.lean,Mathlib/Order/BoundedOrder/Monotone.lean,Mathlib/Order/Bounds/Image.lean,Mathlib/Order/Bounds/OrderIso.lean,Mathlib/Order/CompleteBooleanAlgebra.lean,Mathlib/Order/Filter/AtTopBot/Map.lean,Mathlib/Order/SuccPred/CompleteLinearOrder.lean |
7 |
1 |
['github-actions'] |
nobody |
0-33373 9 hours ago |
0-36508 10 hours ago |
0-36388 10 hours |
| 39585 |
chrisflav author:chrisflav |
chore(RingTheory): add `rfl` lemmas for `Ideal.quotientInfRingEquivPiQuotient` |
From Pi1.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
11/0 |
Mathlib/RingTheory/Ideal/Quotient/Operations.lean |
1 |
6 |
['felixpernegger', 'github-actions', 'mathlib-bors', 'riccardobrasca'] |
joneugster assignee:joneugster |
0-33245 9 hours ago |
22-82820 22 days ago |
91-60533 91 days |
| 40301 |
xroblot author:xroblot |
feat(RingTheory/UniqueFactorizationDomain): add emultiplicity characterizations |
Adds characterizations of primality, vanishing, associatedness and equality in `WfDvdMonoid`/`UniqueFactorizationMonoid` in terms of `emultiplicity`:
- `Prime.emultiplicity_self`, `Prime.emultiplicity_prime`
- `WfDvdMonoid.eq_zero_iff_forall_prime_pow_dvd`, `WfDvdMonoid.ne_zero_iff_finiteMultiplicity`
- `UniqueFactorizationMonoid.associated_iff_emultiplicity_eq(')`, `UniqueFactorizationMonoid.eq_iff_emultiplicity_eq`
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude. |
t-ring-theory |
67/0 |
Mathlib/RingTheory/UniqueFactorizationDomain/Multiplicity.lean |
1 |
1 |
['github-actions'] |
joneugster assignee:joneugster |
0-33244 9 hours ago |
0-77039 21 hours ago |
61-4301 61 days |
| 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 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
riccardobrasca assignee:riccardobrasca |
0-33243 9 hours ago |
5-48634 5 days ago |
5-48918 5 days |
| 41378 |
tb65536 author:tb65536 |
chore(RingTheory/QuasiFinite/Basic): extract instance from ramification proof |
This PR extracts an instance from the proof of `Ideal.ramificationIdx_pos`. This is a prerequisite for #41377.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
t-algebra
label:t-algebra$ |
13/7 |
Mathlib/RingTheory/QuasiFinite/Basic.lean,Mathlib/RingTheory/RamificationInertia/Ramification.lean |
2 |
1 |
['github-actions'] |
joneugster assignee:joneugster |
0-33241 9 hours ago |
59-30566 59 days ago |
59-30447 59 days |
| 41447 |
SnirBroshi author:SnirBroshi |
chore(Combinatorics/SimpleGraph/Trails): golf and cleanup |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
tech debt
|
49/87 |
Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean |
2 |
1 |
['github-actions'] |
JovanGerb assignee:JovanGerb |
0-33240 9 hours ago |
56-64156 56 days ago |
56-64036 56 days |
| 41651 |
xroblot author:xroblot |
feat(GroupTheory): coatoms of the subgroup lattice |
Add two group-theory results on maximal subgroups (coatoms of the subgroup lattice), plus a small API change:
- `isCyclic_of_isCoatom_subsingleton`: a group with at most one maximal subgroup is cyclic.
- `CommGroup.isSimpleGroup_iff_isCoatom`: a subgroup of a commutative group is maximal iff the quotient by it is simple.
- `comapMk'OrderIso`: retype the codomain of the correspondence-theorem order isomorphism to `Set.Ici N`, making the order API available (also it mirrors `Submodule.comapMkQRelIso`). The two codomains are defeq and there are no use.
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude. |
t-group-theory |
49/1 |
Mathlib.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Simple.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean |
4 |
13 |
['SnirBroshi', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'xroblot'] |
mattrobball assignee:mattrobball |
0-33239 9 hours ago |
48-5994 48 days ago |
48-6031 48 days |
| 42453 |
Multramate author:Multramate |
feat(NumberTheory/EllipticDivisibilitySequence): prove that a normalised elliptic divisibility sequence is an elliptic sequence |
This is the updated version of #13155 and contains the proof that a sequence satisfying the even and odd elliptic relations (with mild additional conditions) is an elliptic net and hence an elliptic sequence. This is the main argument in [Section 2 of Junyan's paper](https://arxiv.org/pdf/2604.05280). Previously it was broken down into hundreds of lines of multiple lemmas but I was able to condense it into a single lemma with multiple `wlog`s that are hopefully self-explanatory.
Co-authored-by: Junyan Xu <junyanxu.math@gmail.com>
---
- [x] depends on: #42477
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-number-theory
large-import
label:t-algebra$ |
115/8 |
Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean |
2 |
39 |
['Multramate', 'alreadydone', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536'] |
riccardobrasca assignee:riccardobrasca |
0-33237 9 hours ago |
0-45248 12 hours ago |
19-71181 19 days |
| 42802 |
Zeta-Wu author:Zeta-Wu |
feat(CategoryTheory): relate equivalences and skeletons |
This PR supersedes the previously closed PR #42789.
It adds several related characterizations of equivalences of categories, together with an API showing that an equivalence induces an isomorphism between the corresponding skeletons.
In `CategoryTheory/Equivalence.lean`, it adds:
* `Functor.isEquivalence_iff_exists_equivalence`, stating that a functor `F : C ⥤ D` is an equivalence (i.e. fully faithful and essentially surjective) if and only if it is the functor of some bundled equivalence `e : C ≌ D`.
In `CategoryTheory/Skeletal.lean`, it adds:
* `Functor.isEquivalence_iff_isIso_between_skeletal`: a functor between skeletal categories is an equivalence iff it is an isomorphism;
* `Functor.isEquivalence_iff_exists_isoCat_mapSkeleton`, stating that a functor `F : C ⥤ D` is an equivalence if and only if the induced functor on skeletons `F.mapSkeleton : Skeleton C ⥤ Skeleton D` is the functor of some categorical isomorphism `IsoCat (Skeleton C) (Skeleton D)`.
* `Functor.tfae_isEquivalence_bundledEquivalence_mapSkeletonIsoCat`, giving a `TFAE` for the following three statements:
* `F.IsEquivalence` : `F` is fully faithful and essentially surjective;
* `∃ e : C ≌ D, e.functor = F` : `F` is part of some bundled equivalence;
* `∃ e : IsoCat (Skeleton C) (Skeleton D), e.functor = F.mapSkeleton` : the induced functor on skeletons is a categorical isomorphism.
* `Equivalence.skeletonIsoCat (e : C ≌ D) : IsoCat (Skeleton C) (Skeleton D)`: an equivalence of categories induces an `IsoCat` between their skeletons.
It also updates the module docstring of `Skeletal.lean` to include these declarations.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
new-contributor
|
67/8 |
Mathlib/CategoryTheory/EssentiallySmall.lean,Mathlib/CategoryTheory/Skeletal.lean |
2 |
23 |
['Zeta-Wu', 'github-actions', 'joelriou', 'robin-carlier'] |
joelriou assignee:joelriou |
0-33236 9 hours ago |
14-82659 14 days ago |
17-11226 17 days |
| 42920 |
themathqueen author:themathqueen |
feat(Topology/Algebra/LinearMapCompletion): `f.extend toComplL = f.fromCompletion` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
6/0 |
Mathlib/Topology/Algebra/LinearMapCompletion.lean |
1 |
1 |
['github-actions'] |
ocfnash assignee:ocfnash |
0-33235 9 hours ago |
14-43323 14 days ago |
14-43258 14 days |
| 43190 |
lua-vr author:lua-vr |
chore(MeasureTheory): break import cycle between `QuasiMeasurePreserving` and `AEMeasurable` |
Moves `QuasiMeasurePreserving.restrict` and `AEMeasurable.comp_quasiMeasurePreserving` to the `QuasiMeasurePreserving.lean` file, making it possible to import the `AEMeasurable.lean` file from it.
This will be needed in #43191 to weaken `QuasiMeasurePreserving` from assuming `Measurable f` to `AEMeasurable` as suggested on Zulip.
---
https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/MeasureTheory.3A.20Various.20refactors/with/620111393
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
32/20 |
Mathlib/Dynamics/Ergodic/MeasurePreserving.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/AEStronglyMeasurable.lean,Mathlib/MeasureTheory/Measure/AEMeasurable.lean,Mathlib/MeasureTheory/Measure/QuasiMeasurePreserving.lean,Mathlib/MeasureTheory/Measure/Restrict.lean |
5 |
3 |
['felixpernegger', 'github-actions', 'lua-vr'] |
EtienneC30 assignee:EtienneC30 |
0-33234 9 hours ago |
4-54311 4 days ago |
4-54191 4 days |
| 43273 |
Raph-DG author:Raph-DG |
feat(AlgebraicGeometry): scheme level order of vanishing api |
In this PR, we develop some API for the order of vanishing of rational functions on schemes. We also change the file structure of order of vanishing in algebraic geometry to more closely mirror that of the ring theoretic order of vanishing 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/)
|
file-removed
t-algebraic-geometry
|
242/14 |
Mathlib.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicGeometry/OrderOfVanishing/Basic.lean,Mathlib/AlgebraicGeometry/OrderOfVanishing/DVR.lean |
4 |
1 |
['github-actions'] |
dagurtomas assignee:dagurtomas |
0-33233 9 hours ago |
1-5901 1 day ago |
1-6288 1 day |
| 43281 |
keyframe41 author:keyframe41 |
feat(NumberTheory/DiophantineApproximation): prove Hurwitz's approximation theorem |
Prove **Hurwitz's approximation theorem**: for irrational `ξ`, the set of rationals `q` with `|ξ - q| < 1 / (√5 * q.den ^ 2)` is infinite.
This strengthens `Real.infinite_rat_abs_sub_lt_one_div_den_sq_of_irrational` from`Mathlib/NumberTheory/DiophantineApproximation/Basic.lean`, which gives the same statement with constant `1` instead of `√5`. The constant `√5` is optimal, though the sharpness (using the golden ratio) is not included here.
The proof avoids continued fractions and opts for Farey brackets (quadruples `p/q < ξ < r/s` with `q * r - p * s = 1`) packaged as `Real.Hurwitz.IsFarey`. It uses the fact that at least one of `p/q`, `r/s`, and the mediant `(p + r)/(q + s)` satisfies the bound, as if not, we can contradict the irrationality of `√5`. By creating brackets of arbitrarily small width, infinitude follows by the same argument as in `Basic.lean`.
Some design choices:
* No `GenContFract` to avoid continued fractions/recursive sequences. This also follows the spirit of `Basic.lean`, which defines its own `Real.convergent` rather than building Legendre's theorem on `GenContFract.convs`.
* `Real.Hurwitz` namespace. Mirrors `Real.ContfracLegendre` in `Basic.lean` by putting the main result in `Real` and the technical material in a secondary namespace.
* `IsGoodApprox` is stated without division ** as `|y * ξ - x| * y * √5 < 1` for easier manipulation and linked to the quotient form in the actual theorem using `Real.Hurwitz.isGoodApprox_div_bound`.
---
I used Claude (Anthropic) which suggested the overall proof strategy/lemmas and reviewed naming and documentation against the mathlib conventions. All proofs are my own. As a first-time contributor, AI was also used to help in learning 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
new-contributor
|
390/0 |
Mathlib.lean,Mathlib/NumberTheory/DiophantineApproximation/Hurwitz.lean |
2 |
11 |
['SnirBroshi', 'github-actions'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
0-33232 9 hours ago |
1-10658 1 day ago |
1-11737 1 day |
| 36323 |
SproutSeeds author:SproutSeeds |
feat(Inversion): discontinuity and center/global fderiv formulas |
Part of #5939
Adds the discontinuity-at-center lemma for inversion and derives the center/global `fderiv` formulas from it. Rebased the inversion follow up onto current master after #36313 merged, removing the duplicated `Basic.lean` history and leaving only the intended `Calculus.lean` changes.
The incremental scope above #36313 is limited to `Mathlib/Geometry/Euclidean/Inversion/Calculus.lean`.
## Verification
- `lake build Mathlib.Geometry.Euclidean.Inversion.Calculus`
- `lake exe lint-style Mathlib.Geometry.Euclidean.Inversion.Calculus`
- `git diff --check`
Tools used: Codex 5.3 extra high
---
Happy to adjust naming, placement, or proof style based on maintainer preference.
|
t-euclidean-geometry
new-contributor
LLM-generated
|
22/0 |
Mathlib/Geometry/Euclidean/Inversion/Calculus.lean |
1 |
4 |
['SproutSeeds', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-32343 8 hours ago |
22-25964 22 days ago |
22-25844 22 days |
| 42355 |
sankalpsthakur author:sankalpsthakur |
fix(NormNum): stop after a location closes the goal |
`norm_num at h1 h2 ...` (and other tactics built on `Lean.Elab.Tactic.withNondepPropLocation`) unconditionally processed every hypothesis in the location list, then the target. If an earlier hypothesis closed the goal (e.g. `norm_num` found `h1` to already be `False`), processing continued against an already-closed goal instead of stopping.
Stops iterating once `getGoals` is empty.
Closes #28703.
---------
Note. `withNondepPropLocation` currently has no other callers in the Mathlib tree besides its own definition file.
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. |
new-contributor
LLM-generated
t-meta
|
18/2 |
Mathlib/Util/AtLocation.lean,MathlibTest/Tactic/NormNum/Basic.lean,MathlibTest/Tactic/ReduceModChar.lean |
3 |
21 |
['github-actions', 'grunweg', 'mathlib-merge-conflicts', 'sankalpsthakur', 'thorimur'] |
thorimur assignee:thorimur |
0-31529 8 hours ago |
5-6881 5 days ago |
13-15775 13 days |
| 42276 |
yuanyi-350 author:yuanyi-350 |
feat(IMO): archive IMO 2026 Q5 |
|
IMO |
200/0 |
Archive.lean,Archive/Imo/Imo2026Q5.lean |
2 |
9 |
['felixpernegger', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-28506 7 hours ago |
0-29093 8 hours ago |
30-1495 30 days |
| 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 |
52/17 |
Mathlib/Dynamics/Flow.lean,Mathlib/Dynamics/OmegaLimit.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
urkud assignee:urkud |
0-27485 7 hours ago |
0-28235 7 hours ago |
31-7676 31 days |
| 34963 |
Parcly-Taxel author:Parcly-Taxel |
feat(Archive): proof of the Robbins conjecture |
Cf. [#mathlib4 > Alternative axiomatization of boolean algebras @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Alternative.20axiomatization.20of.20boolean.20algebras/near/558900960) and #31924. |
t-algebra label:t-algebra$ |
407/0 |
Archive.lean,Archive/Robbins.lean |
2 |
6 |
['Parcly-Taxel', 'chrisflav', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts'] |
chrisflav assignee:chrisflav |
0-26930 7 hours ago |
5-83877 5 days ago |
90-57341 90 days |
| 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 |
0-26844 7 hours ago |
0-27479 7 hours ago |
0-27543 7 hours |
| 43325 |
kim-em author:kim-em |
feat: injectivity of Function.extend f Sum.inl Sum.inr |
This PR adds `Function.Injective.extend_sum_inl_inr`: for an injective `f : α → β`, the function `Function.extend f Sum.inl Sum.inr : β → α ⊕ β` (which tags range elements by their preimage and fixes everything else) is injective. This is useful for splitting a type into an embedded finite prefix and a remainder; it is used in leanprover/cslib#401 to build families of total orders for a comparison-sorting lower bound.
🤖 Prepared with Claude Code |
t-logic |
9/0 |
Mathlib/Logic/Function/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
0-26207 7 hours ago |
0-29403 8 hours ago |
0-29859 8 hours |
| 43329 |
mcdoll author:mcdoll |
chore(Analysis/LocallyConvex): make `Bounded.lean` independent of `NormedSpace` |
The only changes in the moved block is to add a section `NontriviallyNormedField` and open the scope `Pointwise`.
---
The overall goal is to make all of `LocallyConvex` independent of `NormedSpace`, which is morally the correct thing to do because locally convex topological vector spaces are more abstract than normed spaces, hence should not depend on them.
This changes indicate that there are various other places where we should separate out the theorems about normed spaces (or generalize to topological vector 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-analysis |
103/91 |
Mathlib/Analysis/Convex/Gauge.lean,Mathlib/Analysis/LocallyConvex/Bounded.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Module/Seminorm/Norm.lean,Mathlib/Analysis/Normed/Operator/Compact/Basic.lean,Mathlib/NumberTheory/Padics/Measure/Topology.lean,Mathlib/Topology/Algebra/Module/Multilinear/Topology.lean,Mathlib/Topology/Algebra/Module/Spaces/ContinuousLinearMap.lean |
8 |
1 |
['github-actions'] |
nobody |
0-22561 6 hours ago |
0-23894 6 hours ago |
0-25346 7 hours |
| 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
|
59/1 |
Mathlib/Data/List/PeriodicityLemma.lean |
1 |
8 |
['SnirBroshi', 'github-actions', 'theebayuser'] |
nobody |
0-21855 6 hours ago |
46-10505 46 days ago |
46-10385 46 days |
| 43275 |
MaxFeldman1 author:MaxFeldman1 |
feat(Topology/Maps): add `Continuous.isClosed_graph` and `continuous_of_isClosed_graph` |
Add new results relating continuity of `f : X → Y` to closedness of `Function.graph f` into `Topology/Maps`
* `Continuous.isClosed_graph`: when Y is Hausdorff and f is continuous then f has a closed graph.
* `continuous_of_isClosed_graph`: when Y is a compact space and f has a closed graph then f is continuous.
* `continuous_iff_isClosed_graph`: the bidirectional result when Y is both compact and Hausdorff.
I started by placing these functions in a new file but have after feedback have changed to put these into existing files, specifically `Continuous.isClosed_graph` is in `Mathlib/Topology/Separation/Hausdorff.lean` and the other two are in `Mathlib/Topology/Maps/Proper/Basic.lean`
AI usage: I drafted the theorem statements. Claude Fable 5 modified naming and style to match mathlib conventions, chose the file placement, and wrote the proofs, which I reviewed step by step.
|
t-topology
new-contributor
LLM-generated
|
26/0 |
Mathlib/Topology/Maps/Proper/Basic.lean,Mathlib/Topology/Separation/Hausdorff.lean |
2 |
13 |
['MaxFeldman1', 'github-actions', 'grunweg', 'mcdoll', 'scholzhannah'] |
scholzhannah assignee:scholzhannah |
0-21842 6 hours ago |
0-25978 7 hours ago |
0-58284 16 hours |
| 43308 |
marcelolynch author:marcelolynch |
feat(cache): read from cache.mathlib.org by default |
Cache reads use `https://cache.mathlib.org` by default. The endpoint serves the same `/{container}/{key}` namespace as the Azure storage account, and it caches artifacts at its edge.
Upcoming changes include separating the storage for forks from the master cache.
CI already reads through the endpoint: PR #42657 added the `MATHLIB_CACHE_BASE_URL` seam, and PR #42777 wired it from a repository variable. This PR makes the endpoint the default for every other client.
`MATHLIB_CACHE_DEBUG_USE_LEGACY=1` sends reads back to the storage account. The variable is a troubleshooting fallback, hence 'unsupported', albeit documented. `1` and `true` turn it on, `0`, `false`, and an absent or empty value turn it off, and any other value prints one warning and keeps the default.
`MATHLIB_CACHE_BASE_URL` stays as a durable way to choose a read host for CI, and it takes precedence.
The write path does not change in this PR.
After this PR, an empty `MATHLIB_CACHE_BASE_URL` selects the endpoint, not Azure. To send CI back to Azure, set the variable to `https://lakecache.blob.core.windows.net`.
Validation: `lake exe cache-test` passes with no variable set, with the legacy flag, and with a base URL set. A live `lake exe cache get Mathlib/Init.lean` fetched 64 of 64 files from the endpoint by default, and the same 64 from the storage account under the flag. A set base URL won over the flag, and an unrecognized flag value printed exactly one warning.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
CI |
214/53 |
Cache/Env.lean,Cache/Infra.lean,Cache/Main.lean,Cache/README.md,Cache/SECURITY.md,Cache/Test.lean |
6 |
6 |
['bryangingechen', 'github-actions', 'marcelolynch'] |
nobody |
0-20267 5 hours ago |
0-42691 11 hours ago |
0-42571 11 hours |
| 43203 |
SnirBroshi author:SnirBroshi |
fix(Tactic/FastInstance): telescope over instance families |
Fix `fast_instance%` to support for instance families (e.g. `Π i, Group (G i)` and `DecidableEq α`) (regression since #36420), both for the top-level instance and nested instances.
---
The `forallTelescopeReducing` only telescoped the `expectedType` but not `inst`; we have to `mkAppN` and give it the telescope metavariables.
Also moved the `forallTelescopeReducing` call to inside the function to restore support for nested instance families as well.
Added a bunch of tests, and also tweaked the docstring of `inferInstanceAs%` since it was inaccurate after Lean shipped a new `inferInstanceAs` elaborator (which wraps instances in auxiliary semireducible defs).
[#mathlib4 > fast_instance% recursion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/fast_instance.25.20recursion/with/619696862)
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
139/7 |
Mathlib/Tactic/FastInstance.lean,MathlibTest/FastInstance.lean |
2 |
11 |
['JovanGerb', 'SnirBroshi', 'github-actions'] |
nobody |
0-20074 5 hours ago |
0-74696 20 hours ago |
3-72192 3 days |
| 41915 |
theebayuser author:theebayuser |
feat(Data/List): infixes, the enumerator of contiguous factors |
Hello, this PR extends `Mathlib/Data/List/Infix.lean` with the missing third enumerator alongside `inits` and `tails`:
* `infixes l` — all contiguous factors (infixes) of `l`, with multiplicity, as every prefix of every suffix, and
* its membership characterization and basic API:
* `mem_infixes` (`@[simp]`) — `s ∈ t.infixes ↔ s <:+: t`, the infix analogue of `mem_inits`/`mem_tails`
* `infixes_nil`, `infixes_cons`, `length_infixes_cons`, `nil_mem_infixes`, `self_mem_infixes`, `infixes_ne_nil`.
This gives `∃ s, s <:+: t ∧ P s` and `∀ s, s <:+: t → P s` executable bounded-search forms (e.g. deciding repetition-freeness of a fixed word by `decide`), 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
|
38/3 |
Mathlib/Data/List/Infix.lean |
1 |
3 |
['github-actions', 'theebayuser'] |
nobody |
0-19803 5 hours ago |
45-23720 45 days ago |
45-23600 45 days |
| 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 |
2 |
['copilot-pull-request-reviewer', 'github-actions'] |
CoolRmal assignee:CoolRmal |
0-18941 5 hours ago |
3-30763 3 days ago |
3-30643 3 days |
| 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 |
1 |
['github-actions'] |
thorimur assignee:thorimur |
0-17081 4 hours ago |
21-44274 21 days ago |
21-44154 21 days |
| 42732 |
CoolRmal author:CoolRmal |
feat(TacticAnalysis): suggest `rwa` for `rw` followed by `assumption` |
This PR implements [mathlib-initiative/TaskList#55](https://github.com/mathlib-initiative/TaskList/issues/55).
|
t-meta |
86/36 |
Archive/Examples/Kuratowski.lean,Mathlib/Algebra/Regular/SMul.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/RootsExtrema.lean,Mathlib/Computability/Reduce.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Seq/Defs.lean,Mathlib/MeasureTheory/Integral/Lebesgue/DominatedConvergence.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/RepresentationTheory/Character.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/LocalProperties/Basic.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/FundamentalTheorem.lean,Mathlib/RingTheory/Perfection.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Category/Stonean/Basic.lean,MathlibTest/Tactic/Cases.lean,MathlibTest/TacticAnalysis.lean |
19 |
11 |
['CoolRmal', 'github-actions', 'j-loreaux', 'jcommelin', 'joneugster', 'leanprover-radar'] |
thorimur assignee:thorimur |
0-15669 4 hours ago |
0-19108 5 hours ago |
19-43422 19 days |
| 43326 |
kim-em author:kim-em |
feat: `Std.Total` instance for InvImage |
This PR adds `InvImage.total`: `Std.Total r` transfers to `Std.Total (InvImage r f)` for any `f`.
Note that `Order.Preimage.instTotal` already provides the same fact for the `f ⁻¹'o r` spelling, which is definitionally the same relation, but instance search does not fire on goals stated with `InvImage` (which is how goals arise from `WellFoundedRelation`-adjacent and `Sum.Lex`-based constructions). The neighboring `InvImage.asymm` and `InvImage.trichotomous` exist for the same reason. Used in leanprover/cslib#401.
```lean
example {α β : Type} (r : α → α → Prop) [Std.Total r] (f : β → α) :
Std.Total (InvImage r f) := inferInstance
```
🤖 Prepared with Claude Code |
t-order |
3/0 |
Mathlib/Order/RelClasses.lean |
1 |
3 |
['SnirBroshi', 'github-actions'] |
nobody |
0-15340 4 hours ago |
0-30033 8 hours ago |
0-29913 8 hours |
| 43321 |
owenpkent author:owenpkent |
feat(RingTheory/Polynomial/RationalRoot): rational root theorem with multiplicity |
This PR adds the rational root theorem with multiplicity to
`Mathlib/RingTheory/Polynomial/RationalRoot.lean`:
- `den_pow_rootMultiplicity_dvd_leadingCoeff`: if `r : K` is a root of `p : A[X]` (`A` a UFD, `K`
its fraction field) with multiplicity `m = rootMultiplicity r (p.map (algebraMap A K))`, then
`(den A r) ^ m ∣ p.leadingCoeff`;
- `prod_den_pow_rootMultiplicity_dvd_leadingCoeff`: the multi-point version, `∏ r ∈ s, (den A r) ^
rootMultiplicity r ∣ p.leadingCoeff` over any finite set `s : Finset K` (the denominators need
**not** be pairwise coprime in `A`; the recombination happens on the polynomial side, where the
root factors at distinct points are pairwise coprime over `K`);
- `den_mul_X_sub_C_num_pow_rootMultiplicity_dvd`: the `A`-level form both corollaries come from,
`(C (den A r) * X - C (num A r)) ^ m ∣ p` in `A[X]`.
These generalize the existing multiplicity-one statement `den_dvd_of_is_root`: at `m = 1` the new
theorem recovers it exactly (a guard `example` confirmed this against the branch). Two supporting
lemmas travel with them, placed in `Content.lean`, whose existing content they extend:
- `Polynomial.IsPrimitive.pow` and `Polynomial.isPrimitive_prod`: powers and finite
products of primitive polynomials stay primitive.
**Proof route.** The reduced linear factor `C (den A r) * X - C (num A r)` is primitive (a constant
divisor of both coefficients divides the reduced numerator/denominator pair, hence is a unit) and,
over `K`, a unit multiple of `X - C r`. Its `rootMultiplicity`-power therefore divides `p.map
(algebraMap A K)` (`pow_rootMultiplicity_dvd`), and one-sided Gauss descent (the existing
`IsPrimitive.dvd_of_fraction_map_dvd_fraction_map`) brings the divisibility back down to `A`;
multiplicativity of the leading coefficient finishes. The multi-point case recombines the same
argument over a product of linear factors that are pairwise coprime over `K`
(`isCoprime_X_sub_C_of_isUnit_sub`, `Finset.prod_dvd_of_coprime`).
**A hypothesis note.** `Polynomial.IsPrimitive.pow` / `Polynomial.isPrimitive_prod` are stated
under `[NormalizedGCDMonoid R]`, matching the hypothesis level of their host section in
`Content.lean` (neither proof needs anything UFD-specific). The six `RationalRoot.lean`
declarations (three public, and three `private` helpers about the reduced linear factor:
`isPrimitive_den_mul_X_sub_C_num`, `map_den_mul_X_sub_C_num`,
`leadingCoeff_den_mul_X_sub_C_num`) need only the file's existing
`UniqueFactorizationMonoid A` context: where a
`NormalizedGCDMonoid A` instance is required to invoke the `Content.lean` lemmas, the proofs
materialize one locally via `let : NormalizedGCDMonoid A := Nonempty.some inferInstance` (the
`Nonempty` instance comes from `UniqueFactorizationMonoid A` through `IsGCDMonoid A`, in scope via
the file's existing `RingTheory.Localization.NumDen` import), the same idiom `GaussLemma.lean`
already uses. The statements are instance-independent.
All eight new declarations (two in `Content.lean`, six in `RationalRoot.lean`) build green and
`#print axioms` clean (`[propext, Classical.choice, Quot.sound]`; no `sorryAx`, no
`native_decide`) on master commit `8acb872c31` (toolchain v4.34.0-rc2), with `lake exe lint-style`
and the batteries env linter (`runLinter`) passing on both touched modules, and all direct
downstream importers rebuilt green. Three `public import`s are added to `RationalRoot.lean`
(`RingTheory.Polynomial.GaussLemma`, `Algebra.Polynomial.BigOperators`,
`RingTheory.Coprime.Lemmas`); each is used directly by the new proofs (`shake` no longer exists as
a lake executable on current master, so no automated minimization pass was run).
**Import-graph cost: zero downstream.** The three added imports grow `RationalRoot.lean`'s own
transitive closure by 30 modules (1614 -> 1644), mostly the `FieldTheory.SplittingField` /
`IntermediateField` / `Minpoly` cone that `GaussLemma.lean` pulls in. That growth does not
propagate: `RationalRoot.lean` has exactly three importers in Mathlib
(`RingTheory/Polynomial/IsIntegral.lean`, `RingTheory/DedekindDomain/Basic.lean`,
`NumberTheory/Niven.lean`), and all three already import `GaussLemma` and
`SplittingField.Construction` transitively today, so no file in Mathlib gains an import from this
PR. If a maintainer would still rather keep `RationalRoot.lean` light, the six declarations move to
a new `RingTheory/Polynomial/RationalRootMultiplicity.lean` without any proof change; I am happy to
do that on request.
---
**AI use disclosure** (per Mathlib's contribution guidelines): this generalization was developed in
a personal research project with the help of an AI coding agent (Claude Code). The agent developed
the multiplicity generalization and its proof (building on the existing single-multiplicity
`den_dvd_of_is_root`), then ported it directly onto Mathlib's own source files: placing the two
primitivity lemmas in `Content.lean`'s existing `NormalizedGCDMonoid` section (a weaker hypothesis
than the UFD one the standalone draft used; neither proof needs anything UFD-specific), adapting
the imports to the module system, and rebasing onto current master. During the rebase the agent
found that Mathlib had independently generalized
`IsPrimitive.dvd_of_fraction_map_dvd_fraction_map` to the one-sided form an earlier draft of this
PR supplied as a new lemma, so that lemma was dropped and the proofs call the existing one. Build
green, `#print axioms` clean, and linters passing were confirmed directly against Mathlib's source
tree. The underlying result is a natural generalization of an existing Mathlib theorem, and every
proof step uses only existing Mathlib API. I have reviewed and understand the proofs, take
responsibility for the content, and will respond to review in my own words.
|
t-ring-theory
new-contributor
LLM-generated
|
129/1 |
Mathlib/RingTheory/Polynomial/Content.lean,Mathlib/RingTheory/Polynomial/RationalRoot.lean |
2 |
2 |
['github-actions'] |
nobody |
0-14739 4 hours ago |
0-44295 12 hours ago |
0-44175 12 hours |
| 43318 |
wpegden author:wpegden |
doc(1000): add the strong and weak perfect graph theorems |
Adds external-formalization entries for Q16680059 (strong perfect graph theorem) and Q2800071 (perfect graph theorem), both formalized in Lean 4 at https://github.com/wpegden/spgt with commit-pinned permalinks.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
8/0 |
docs/1000.yaml |
1 |
6 |
['github-actions', 'thorimur', 'wpegden', 'wwylele'] |
nobody |
0-13702 3 hours ago |
0-48509 13 hours ago |
0-48389 13 hours |
| 43086 |
joelriou author:joelriou |
feat(Algebra/Homology): the bijection of `Ext`-groups that is induced by an adjunction between exact functors |
If `adj : F ⊣ G` is an adjunction between exact functors between abelian categories, we promote the bijections `adj.homEquiv X Y : (F.obj X ⟶ Y) ≃ (X ⟶ G.obj Y)` into additive equivalences `adj.extEquiv : Ext (F.obj X) Y n ≃+ Ext X (G.obj Y) n` for any natural number `n`.
---
- [x] depends on: #43089
- [x] depends on: #43103
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
t-algebra
tech debt
label:t-algebra$ |
148/0 |
Mathlib.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/MapAdjunction.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
0-13095 3 hours ago |
0-13095 3 hours ago |
0-12976 3 hours |
| 43261 |
YaelDillies author:YaelDillies |
feat(Geometry/Convex): cancellative convex spaces |
Define cancellative convex spaces as those space where non-trivial binary combinations are injective in one of their inputs. Show that modules, affine spaces, products of cancellative convex spaces, subspaces of cancellative convex spaces... are cancellative convex spaces.
Generated by Claude Opus, reviewed and golfed by myself.
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
|
134/5 |
Mathlib/Algebra/Order/GroupWithZero/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 |
6 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-12676 3 hours ago |
0-15343 4 hours ago |
1-58096 1 day |
| 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.
Generated by Claude Opus following my existing draft, then reviewed and partly rewritten by myself.
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
|
259/4 |
Mathlib.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Geometry/Convex/ConvexSpace/Order.lean |
3 |
7 |
['YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-12145 3 hours ago |
0-14667 4 hours ago |
3-56709 3 days |
| 39387 |
marcelolynch author:marcelolynch |
feat(Tactic/Linter): add superfluousExpose linter |
Dual of `privateModule`: lints against modules with `@[expose] public section` where no declaration needs its body visible downstream. Suggests removing the `@[expose]` modifier. The removal hides the bodies of the section and does not change downstream typechecking.
A declaration 'benefits from exposure' iff its body matters to downstream typechecking: plain `def`, plain `inductive`, `@[match_pattern]` def, `@[irreducible]` def / `irreducible_def`, `@[reducible]` def, or a `@[to_additive]`-decorated def. A hidden body of a `@[reducible]` def breaks even same-file public `rfl` proofs, so only `abbrev` carries its own exposure. Theorems, abbrevs, classes, structures, instances, `unsafe`/`partial` defs, compiler-generated auxiliaries, projections, matchers, and notation-generated parser entries do not.
The linter is a stateful linter (leanprover/lean4#14357). It tracks maximal regions of commands whose scope is public and carries the `expose` attribute, and it classifies the declarations of each command while the scopes of that command are still active. Two properties follow. A file with several expose sections gets one verdict per section, so one exposed-body `def` no longer masks a sibling section. And `scoped instance` and `local instance` declarations classify correctly, which an end-of-file check cannot do: after the `end`, those declarations look like plain defs.
The linter is conservative: known limitations produce a false negative, never a false positive that would break downstream builds. The module docstring lists them. The main case is tactic-implementation defs, such as the defs behind `elab` or `simproc_decl`, which count as ordinary defs.
Includes test files covering positive and negative cases, one file per case. A companion cleanup applies the suggestions to mathlib: #39388.
Relevant Zulip thread: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Removing.20unnecessary.20.60.40.5Bexpose.5D.60/with/595180230
|
t-linter
LLM-generated
|
1063/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/SuperfluousExpose.lean,MathlibTest/Linter/SuperfluousExpose.lean,MathlibTest/Linter/SuperfluousExpose/Negative_ExposeInBlockComment.lean,MathlibTest/Linter/SuperfluousExpose/Negative_ExposeOnNonPublicSection.lean,MathlibTest/Linter/SuperfluousExpose/Negative_Inductive.lean,MathlibTest/Linter/SuperfluousExpose/Negative_InstPrefixedDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_IrreducibleDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_MatchPattern.lean,MathlibTest/Linter/SuperfluousExpose/Negative_NoExposeSection.lean,MathlibTest/Linter/SuperfluousExpose/Negative_PlainDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_ReducibleDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_TermPrefixedDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_ToAdditive.lean,MathlibTest/Linter/SuperfluousExpose/Positive_AbbrevOnly.lean,MathlibTest/Linter/SuperfluousExpose/Positive_ClassOnly.lean,MathlibTest/Linter/SuperfluousExpose/Positive_LocalInstance.lean,MathlibTest/Linter/SuperfluousExpose/Positive_MultiSection.lean,MathlibTest/Linter/SuperfluousExpose/Positive_Notation.lean,MathlibTest/Linter/SuperfluousExpose/Positive_PartialDef.lean,MathlibTest/Linter/SuperfluousExpose/Positive_Recursors.lean,MathlibTest/Linter/SuperfluousExpose/Positive_ScopedInstance.lean,MathlibTest/Linter/SuperfluousExpose/Positive_TheoremOnly.lean,MathlibTest/Linter/SuperfluousExpose/Positive_UnsafeDef.lean |
25 |
3 |
['eric-wieser', 'github-actions', 'marcelolynch'] |
thorimur assignee:thorimur |
0-11571 3 hours ago |
21-42681 21 days ago |
21-42561 21 days |
| 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 `⊤`/`⊥`
Generated by Claude Opus, largely rewritten by hand afterwards.
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
|
202/19 |
Mathlib.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/Finsupp/Option.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Finsupp/SMul.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/Geometry/Convex/ConvexSpace/WithTop.lean,Mathlib/RepresentationTheory/Basic.lean,Mathlib/RingTheory/Extension/Generators.lean,Mathlib/RingTheory/IsAdjoinRoot.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/FundamentalTheorem.lean |
12 |
13 |
['YaelDillies', 'eric-wieser', 'github-actions'] |
nobody |
0-11237 3 hours ago |
0-13909 3 hours ago |
3-63393 3 days |
| 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/)
|
|
59/1 |
Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/Padics/ValuativeRel.lean,Mathlib/Topology/Algebra/ValuativeRel/ValuativeTopology.lean |
3 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-11211 3 hours ago |
0-11920 3 hours ago |
1-1329 1 day |
| 42804 |
j-loreaux author:j-loreaux |
refactor: use `Set.Pairwise s Commute` for commutativity of subobject closures |
Given the subobject `closure s` generated by a set `s`, to ensure `IsMulCommutative s`, Mathlib assumed `∀ x ∈ s, ∀ y ∈ s, x * y = y * x`, but it suffices to prove `s.Pairwise Commute` and this gives us access to some API. This PR switches those hypotheses.
For star algebras, we switch from `∀ x ∈ s, ∀ y ∈ s, x * y = y * x` and `∀ x ∈ s, ∀ y ∈ s, x * star y = star y * x` to a collection of three hypotheses: `∀ x ∈ s, IsStarNormal x`, `s.Pairwise Commute` and `s.Pairwise (Commute · <| ·)`. Even though this is three separate hypotheses, we claim that in practice these are the more natural conditions (except in the trivial case when the ambient algebra is commutative, but that's not the point of `IsMulCommutative` anyway).
Moreover, we use Fuglede's theorem to conclude `s.Pairwise (Commute · <| star ·)` from the other two hypotheses in C⋆-algebras.
Along the way, we add a variety of convenience lemmas for `Set.Pairwise`, including its various interactions with commutativity and `star`. In particular, we characterize `(s ∪ star s).Pairwise Commute` as the conjunction of `s.Pairwise Commute`, `s.Pairwise (Commute · <| ·)` and `∀ x ∈ s, IsStarNormal x`. This allows for a few simplifications.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
131/88 |
Counterexamples/GrothendieckPower.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Group/Center.lean,Mathlib/Algebra/HierarchyDesign.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Algebra/Star/Subalgebra.lean,Mathlib/Analysis/CStarAlgebra/Fuglede.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/GroupTheory/Subgroup/Centralizer.lean,Mathlib/GroupTheory/Submonoid/Centralizer.lean,Mathlib/GroupTheory/Subsemigroup/Centralizer.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean |
18 |
12 |
['eric-wieser', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
0-10362 2 hours ago |
0-15065 4 hours ago |
14-53204 14 days |
| 43333 |
TJHeeringa author:TJHeeringa |
feat(Analysis/InnerProductSpace/Reproducing): add posSemidef_norm_sq_smul_kernel_sub_outerKernel |
This PR adds `posSemidef_norm_sq_smul_kernel_sub_outerKernel`, which shows that the matrix `(‖f‖ : 𝕜) ^ 2 • K - outerKernel 𝕜 f` is positive semi-definite.
---
#38584 has been split up into parts. This is one of these.
This is a supportive lemma/theorem for when an arbitrary function `f : X → V` is in the submodule `Submodule 𝕜 (X → V)` into which the RKHS embeds.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
23/2 |
Mathlib/Analysis/InnerProductSpace/Reproducing.lean |
1 |
1 |
['github-actions'] |
nobody |
0-9880 2 hours ago |
0-10615 2 hours ago |
0-10495 2 hours |
| 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/7 |
Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean |
2 |
1 |
['github-actions'] |
nobody |
0-9820 2 hours ago |
0-11417 3 hours ago |
0-11297 3 hours |
| 43335 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Trails): an Eulerian graph without isolated vertices is connected |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
9/1 |
Mathlib/Combinatorics/SimpleGraph/Trails.lean |
1 |
1 |
['github-actions'] |
nobody |
0-9508 2 hours ago |
0-10294 2 hours ago |
0-10174 2 hours |
| 42839 |
JadAbouHawili author:JadAbouHawili |
feat(Combinatorics/SimpleGraph/Connectivity): simple graph is 2-edge-connected iff it has no bridge |
This PR proves the equivalence of a graph being 2-edge-connected iff it has no bridge resolving the relevant TODO.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
13/3 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean |
1 |
33 |
['JadAbouHawili', 'SnirBroshi', 'github-actions'] |
nobody |
0-9113 2 hours ago |
13-6578 13 days ago |
16-49559 16 days |
| 43334 |
WenrongZou author:WenrongZou |
chore(MvPowerSeries/Derivative): make coeff ring implicit |
In this PR, we make the coeff ring `R` in the definition of derivative implicit.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
48/50 |
Mathlib/RingTheory/MvPowerSeries/Derivative.lean,Mathlib/RingTheory/PowerSeries/Derivative.lean,Mathlib/RingTheory/PowerSeries/Exp.lean,Mathlib/RingTheory/PowerSeries/Log.lean |
4 |
1 |
['github-actions'] |
nobody |
0-8714 2 hours ago |
0-9433 2 hours ago |
0-9397 2 hours |
| 26214 |
Thmoas-Guan author:Thmoas-Guan |
feat(Algebra): definition of depth |
In this PR, we defined the depth of two modules as the minimal order of nonvanishing `Ext` and the `I-depth` for ideal `I` and some basic properties. Including the equivalence of the two in the condition of rees theorem.
---
<!-- 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]
-->
- [x] depends on: #26212
- [x] depends on: #32966
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
410/0 |
Mathlib.lean,Mathlib/RingTheory/Depth/Basic.lean |
2 |
11 |
['Thmoas-Guan', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
joneugster assignee:joneugster |
0-7463 2 hours ago |
46-2644 46 days ago |
58-85413 58 days |
| 43297 |
aebrose author:aebrose |
feat(LinearAlgebra/Dimension/DivisionRing): lemmas about ranks of submodules |
We add four lemmas about ranks of submodules which were missing. We also cleaned up the module docstring and unused universes.
Co-authored-by: Justus Springer <justusspringer@gmx.de>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
large-import
maintainer-merge
label:t-algebra$ |
50/7 |
Mathlib/LinearAlgebra/Dimension/DivisionRing.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean |
2 |
10 |
['YaelDillies', 'aebrose', 'github-actions', 'wwylele'] |
nobody |
0-7446 2 hours ago |
0-8556 2 hours ago |
0-25760 7 hours |
| 43322 |
JovanGerb author:JovanGerb |
chore(Order/Atoms): use `to_dual` |
This PR uses `to_dual` for `IsAtomic`/`IsCoatomic` and `IsAtomistic`/`IsCoatomistic`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
118/334 |
Mathlib/Order/Atoms.lean,Mathlib/Order/Disjoint.lean,Mathlib/Order/ModularLattice.lean,Mathlib/Tactic/Translate/ToDual.lean |
4 |
1 |
['github-actions'] |
nobody |
0-7438 2 hours ago |
0-10636 2 hours ago |
0-12929 3 hours |
| 29558 |
Thmoas-Guan author:Thmoas-Guan |
feat(Algebra): definition of global dimension |
In this PR, we define projective dimension and global dimension using `CategoryTheory.HasProjectiveDimensionLT`
---
<!-- 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]
-->
- [ ] depends on: #32058
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
120/0 |
Mathlib.lean,Mathlib/RingTheory/GlobalDimension.lean |
2 |
18 |
['Thmoas-Guan', 'erdOne', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
erdOne assignee:erdOne |
0-5192 1 hour ago |
0-5821 1 hour ago |
28-31887 28 days |
| 43337 |
harahu author:harahu |
chore(Basic): fix typos |
Fix some typos and tidy white space.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
easy
|
14/17 |
Mathlib/Basic/ExistsUnique.lean,Mathlib/Basic/IsEmpty/Defs.lean,Mathlib/Basic/Logic/Basic.lean,Mathlib/Basic/Nonempty.lean,Mathlib/Basic/Nontrivial/Basic.lean,Mathlib/Basic/Unique.lean,Mathlib/Basic/UnivLE.lean |
7 |
2 |
['github-actions', 'harahu'] |
nobody |
0-4518 1 hour ago |
0-4609 1 hour ago |
0-4489 1 hour |
| 40182 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory): add lemma for span rank of maximal ideal under surjection |
In this PR, we added the following result : for noetherian local ring `(R, m, k)`, the span rank of maximal ideal of `R/I` adding `k` dimension of `I+m^2/m^2` is equal to span rank of maximal ideal of `R`.
This would be useful when dealing with regular local ring and quotient within `m^2`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
52/0 |
Mathlib/Algebra/Module/SpanRankOperations.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/LocalRing/ResidueField/Basic.lean |
3 |
4 |
['github-actions', 'riccardobrasca'] |
joneugster assignee:joneugster |
0-3764 1 hour ago |
90-76172 90 days ago |
90-76052 90 days |
| 43336 |
JovanGerb author:JovanGerb |
chore(Order/Irreducible): use `to_dual` |
This PR uses `to_dual` on `SupIrred`/`InfIrred` and `SupPrime`/`InfPrime`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
55/188 |
Mathlib/Order/Birkhoff.lean,Mathlib/Order/Interval/Finset/Basic.lean,Mathlib/Order/Irreducible.lean,Mathlib/Order/UpperLower/Principal.lean |
4 |
1 |
['github-actions'] |
nobody |
0-2264 37 minutes ago |
0-4870 1 hour ago |
0-4750 1 hour |
| 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 |
73/0 |
Mathlib.lean,Mathlib/RingTheory/Gorenstein/Defs.lean |
2 |
12 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
nobody |
0-1714 28 minutes ago |
41-15315 41 days ago |
41-17769 41 days |
| 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
- [ ] depends on: #31222
- [x] depends on: #32316
[](https://gitpod.io/from-referrer/)
|
t-topology |
379/0 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/BaseChange.lean |
2 |
8 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
nobody |
0-1438 23 minutes ago |
0-1985 31 minutes ago |
29-23945 29 days |
| 42622 |
JovanGerb author:JovanGerb |
chore(Order/WithBot): remove defeq between `WithBot.LE`/`LT` and `WithTop.LE`/`LT` |
This PR removes the defeq between `WithBot.LE` and `WithTop.LE`, and between `WithBot.LT` and `WithTop.LT`, by making them separate inductive types. This is a continuation of #19668, which turned these into inductive types in the first place.
This is a step towards making `WithBot` and `WithTop` be not defeq to eachother at all. This is something that the FRO wants (or at least wanted) for their interval arithmetic tactic.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #42628
[](https://gitpod.io/from-referrer/)
|
t-order |
129/112 |
Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Basic/Nontrivial/Basic.lean,Mathlib/Dynamics/TopologicalEntropy/NetEntropy.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Group/Action.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Map.lean,Mathlib/MeasureTheory/Measure/Basic.lean,Mathlib/MeasureTheory/Measure/Comap.lean,Mathlib/MeasureTheory/Measure/Decomposition/Exhaustion.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/MeasureTheory/Measure/Sum.lean,Mathlib/MeasureTheory/OuterMeasure/Basic.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/MeasureTheory/OuterMeasure/OfFunction.lean,Mathlib/MeasureTheory/OuterMeasure/Operations.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Hom/WithTopBot.lean,Mathlib/Order/Interval/Finset/DenselyOrdered.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/Topology/Algebra/InfiniteSum/ENNReal.lean,Mathlib/Topology/EMetricSpace/BoundedVariation.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean,Mathlib/Topology/MetricSpace/PiNat.lean |
30 |
5 |
['JovanGerb', 'SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-1244 20 minutes ago |
0-1165 17 minutes ago |
0-15861 4 hours |
| 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]
-->
- [ ] depends on: #32058
- [ ] 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 |
0-1131 18 minutes ago |
0-79265 21 hours ago |
0-81204 22 hours |
| 43043 |
qawbecrdtey author:qawbecrdtey |
feat(Combinatorics/Nullstellensatz): add generalized combinatorial nullstellensatz |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Formalization of generalized combinatorial nullstellensatz by Lasoń.
```lean
theorem combinatorial_nullstellensatz_exists_eval_nonzero_of_maximal
[IsDomain R] (f : MvPolynomial σ R) (t : σ →₀ ℕ) (ht : f.coeff t ≠ 0)
(ht' : ∀ t' : σ →₀ ℕ, t < t' → f.coeff t' = 0) (S : σ → Finset R) (htS : ∀ i, t i < #(S i)) :
∃ s : σ → R, (∀ i, s i ∈ S i) ∧ eval s f ≠ 0 := by
```
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
203/76 |
Mathlib/Algebra/MvPolynomial/Monad.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/Data/Finsupp/Weight.lean,docs/references.bib |
5 |
1 |
['github-actions'] |
nobody |
0-992 16 minutes ago |
10-29419 10 days ago |
10-59558 10 days |
| 41556 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory): add lemmas about `reesAlgebra` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
large-import
|
40/1 |
Mathlib/RingTheory/ReesAlgebra.lean |
1 |
4 |
['github-actions', 'vlad902'] |
nobody |
0-759 12 minutes ago |
54-27927 54 days ago |
54-27807 54 days |
| 43338 |
sgouezel author:sgouezel |
feat: in characteristic 0, precomposition by a linear map is analytic on the space of alternating maps |
This is the main missing ingredient to show that the bundle of alternating maps between C^n vector bundles is C^n, in #43234.
I was surprised to see that I need characteristic 0 (I could also do the proof in positive characteristic for finite-dimensional T2 spaces, but not in general -- not included in this PR, because the characteristic 0 is the one that interests me). I was afraid I was missing something stupid, then I checked Bourbaki and they have the same condition so it's probably reasonable after all.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
large-import
|
299/8 |
Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Normed/Module/Alternating/Basic.lean,Mathlib/Topology/Algebra/Module/Alternating/Basic.lean |
3 |
1 |
['github-actions'] |
nobody |
0-422 7 minutes ago |
0-2677 42 minutes ago |
0-2871 47 minutes |
| 42501 |
ADedecker author:ADedecker |
feat: a locally closed subgroup is closed |
We show that, in a topological group, a subgroup which is locally closed at one of its points is closed. We use this to reprove the fact that a discrete subgroup of a Hausdorff group is closed, without appealing to the theory of uniform 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 |
99/45 |
Mathlib/Topology/Algebra/IsUniformGroup/Basic.lean,Mathlib/Topology/Algebra/OpenSubgroup.lean,Mathlib/Topology/DiscreteSubset.lean,Mathlib/Topology/LocallyClosed.lean |
4 |
4 |
['ADedecker', 'github-actions', 'mathlib-merge-conflicts', 'mathlib-splicebot'] |
nobody |
0-392 6 minutes ago |
0-386 4 minutes ago |
0-1493 24 minutes |
| 43292 |
MichaelStollBayreuth author:MichaelStollBayreuth |
feat(AlgebraicGeometry/EllipticCurve/Affine/AddSubMap): add the main property of addSubMap and sym2x |
This is the next PR on the way to the approximate parallelogram law on an elliptic curve.
It shows that the addition-and-subtraction map satisfies its specification: it sends `sym2x P Q` to `sym2x (P+Q) (P-Q)`, up to a nonzero scaling factor.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
83/1 |
Mathlib/AlgebraicGeometry/EllipticCurve/Affine/AddSubMap.lean |
1 |
12 |
['MichaelStollBayreuth', 'Multramate', 'github-actions'] |
nobody |
0-316 5 minutes ago |
1-1062 1 day ago |
1-942 1 day |
| 43339 |
gasparattila author:gasparattila |
feat(Topology/Algebra): continuity of composing by a `ContinuousAffineMap` |
This allows upgrading `signedDist` to a `ContinuousAffineMap`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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/)
|
|
23/5 |
Mathlib/Geometry/Euclidean/SignedDist.lean,Mathlib/Topology/Algebra/ContinuousAffineMap/Topology.lean |
2 |
0 |
[] |
nobody |
0-251 4 minutes ago |
0-251 2 minutes ago |
0-131 2 minutes |
| 43328 |
JX-Mo author:JX-Mo |
feat(GroupTheory): add `DoubleCoset.IsLeftFinite` |
This PR is the second 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 over double cosets with finite left-coset decomposition. In this PR we introduce the prop class `IsLeftFinite`.
For a triple `(H₁, H₂, g)`, the prop class `DoubleCoset.IsLeftFinite H₁ H₂ g` says that the double coset H₁gH₂ admits finite decomposition into left cosets, i.e. the set `{xH₂ | H₁xH₂ = H₁gH₂}` is finite. We implement this by defining a numerical quantity `Quotient.degree = Nat.card {gH₂ | H₁gH₂ = x}` so that `{xH₂ | H₁xH₂ = H₁gH₂}` being finite is equivalent to `degree H₁gH₂ ≠ 0`. We provide lemmas to allow user to easily switch between the two indexing types `LeftDecomposition` `LeftDecompQuotient` freely when talking about finiteness using `degree`.
Degree also appears naturally in the involution calculation for unimodular groups, so it not a wrapper merely for finiteness. See e.g. the las statement `multiplicity_apply_one` of `Unimodular.lean` in the draft #43282.
- [ ] depends on: #43327 |
t-algebra label:t-algebra$ |
187/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Hecke/LeftFiniteDoubleCoset.lean |
2 |
1 |
['github-actions'] |
nobody |
0-206 3 minutes ago |
0-28086 7 hours ago |
0-27966 7 hours |
| 43286 |
JX-Mo author:JX-Mo |
feat(GroupTheory): add `LeftFiniteDoubleCoset` for Hecke theory |
This PR introduces a finiteness condition `DoubleCoset.IsLeftFinite` on double cosets and its bundled version `DoubleCoset₀`, which allows us to describe `Hom_G(k[G ⧸ H₁], k[G ⧸ H₂])` as the free module `k[DoubleCoset₀ H₁ H₂]`.
For a triple `(H₁, H₂, g)`, the property `DoubleCoset.IsLeftFinite H₁ H₂ g` says that the double coset H₁gH₂ admits a finite decomposition into left cosets, i.e. the set `{xH₂ | H₁xH₂ = H₁gH₂}` is finite. The collection of all such double cosets is bundled into a type `DoubleCoset₀`. We provide some finiteness instances which help define convolution product of double cosets.
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.
- [x] depends on: #43278
- [ ] depends on: #43328
|
t-group-theory
new-contributor
|
267/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Hecke/LeftFiniteDoubleCoset.lean |
2 |
3 |
['Whysoserioushah', 'github-actions'] |
nobody |
0-184 3 minutes ago |
1-4820 1 day ago |
1-6742 1 day |
| 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 |
| 35069 |
A-M-Berns author:A-M-Berns |
feat(Geometry/Polygon): simple polygons and boundary map |
This PR introduces Simple polygons with the predicate `IsSimple`, which captures the idea of a non-self-intersecting boundary, in the file Simple.lean. In the file Boundary.lean, a boundary map from `AddCircle n` is defined. I prove that the range of this map is the boundary and that this map is injective if and only if the polygon is simple. I kept Boundary.lean and Simple.lean separate because future results will include stuff just about the boundary map independent of simplicity (e.g. that it is continuous in the appropriate setting) and stuff just about simple polygons independent of the boundary map (e.g. that for n = 3, IsSimple iff HasNondegenerateVertices.) I used Claude Code to help generate some of the proof material, but I golfed and edited all AI contribution.
- [x] depends on: #34598
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-euclidean-geometry
LLM-generated
|
360/0 |
Mathlib.lean,Mathlib/Geometry/Polygon/Boundary.lean,Mathlib/Geometry/Polygon/Simple.lean,Mathlib/Logic/Equiv/Fin/Rotate.lean |
4 |
30 |
['A-M-Berns', 'eric-wieser', 'github-actions', 'joneugster', 'jsm28', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp', 'wwylele'] |
nobody |
102-32343 3 months ago |
188-58198 188 days ago |
191-5964 191 days |
| 40329 |
no-j author:no-j |
feat(Computability): matching εNFA.Path definition with NFA.Path |
Added εNFA.Path definition that is based on `Type` instead of `Prop` to match NFA's path definition
Added εNFA.Path.supp (same definition as NFA.Path.supp)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-computability
new-contributor
|
60/23 |
Mathlib/Computability/EpsilonNFA.lean |
1 |
3 |
['github-actions'] |
nobody |
86-84728 2 months ago |
86-85561 86 days ago |
86-85813 86 days |
| 40520 |
Julian-Kuelshammer author:Julian-Kuelshammer |
feat(CategoryTheory/Linear): linear Yoneda and coYoneda are linear |
Mathlib/CategoryTheory/Linear/Basic.lean:
Adds an instance that the opposite category of a linear category is linear.
Mathlib/CategoryTheory/Linear/Yoneda.lean:
Adds instances that the linearYoneda and linearcoYoneda are linear functors, which was a TODO before.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
large-import
|
27/2 |
Mathlib/CategoryTheory/Linear/Basic.lean,Mathlib/CategoryTheory/Linear/Yoneda.lean |
2 |
3 |
['github-actions'] |
nobody |
82-41656 2 months ago |
82-43092 82 days ago |
82-43505 82 days |
| 38606 |
dennj author:dennj |
feat: preparation for Vanishing Sum of Roots of Unity |
Adds the Mathlib API extensions needed for an upcoming formalization of the Lam-style classification theorem for vanishing sums of roots of unity.
* Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean
+ `exists_eq_const_of_sum_smul_eq_zero_of_sum_eq_zero_of_linearIndependent`: if `∑ vᵢ = 0` and the first `n-1` of `n` vectors are linearly independent, every linear relation has constant coefficients.
* Mathlib/RingTheory/Radical/NatInt.lean
+ `Nat.totient_eq_div_radical_mul_totient_radical`: Euler's totient splits as `φ(n) = (n / rad n) * φ(rad n)`.
* Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean
+ `IsPrimitiveRoot.sum_range_pow_mul_div_eq_zero_of_dvd`: the `d` evenly-spaced powers of a primitive `k`-th root sum to zero, for `d ∣ k` and `1 < d`.
* Mathlib/NumberTheory/Cyclotomic/LinearDisjoint.lean (new)
+ `IsPrimitiveRoot.linearDisjoint_adjoin_pow_of_coprime`: cyclotomic subfields of coprime orders are linearly disjoint over `ℚ`.
* Mathlib/NumberTheory/Cyclotomic/LinearRelations.lean (new)
+ `IsPrimitiveRoot.coeffs_eq_of_sum_pow_eq_zero_prime_coprime`: in the cyclotomic field of order `p * m` with `p` prime coprime to `m`, any `ℚ⟮ζ^p⟯`-linear relation among powers of `ζ^m` has all coefficients equal.
---
I need these as preparation to start formalizing the theorem:
Let k be a positive integer. If a finite family of complex k-th roots of unity sums to zero, then the size of the family is a non-negative integer combination of the prime divisors of k.
---
Human-made PR with AI used for golfing and documentation |
new-contributor |
219/0 |
Mathlib.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/NumberTheory/Cyclotomic/LinearDisjoint.lean,Mathlib/NumberTheory/Cyclotomic/LinearRelations.lean,Mathlib/RingTheory/Radical/Totient.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean |
6 |
4 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
76-31698 2 months ago |
76-33748 76 days ago |
84-65276 84 days |
| 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
|
48/0 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean,Mathlib/Data/List/Nodup.lean |
3 |
2 |
['github-actions'] |
nobody |
67-17513 2 months ago |
70-53739 70 days ago |
70-53704 70 days |
| 40561 |
iosephusferrum author:iosephusferrum |
feat(ModelTheory): quantifier elimination for first-order theories |
This PR introduces `HasQuantifierElimination` for first-order languages, along with some standard criteria to establish it for any language that satisfies them and prerequisite formalization `mathlib4` required on elementary extension pairs (`IsElementaryExtensionPair`) and < κ-generated substructures (`CardinalLTGenerated`). It also states and proves that the first-order theory DLO (dense linear order without endpoints) has quantifier elimination (`dlo_hasQuantifierElimination`), using the newly formalized quantifier elimination criteria.
Co-authored-by: Yağız Kaan Aydoğdu <y.kaan.aydogdu@gmail.com>
Co-authored-by: Salih Erdem Koçak <saliherdemkd@gmail.com>
Advised-by: Ayhan Günaydın <ayhan.gunaydin@bogazici.edu.tr>
Advised-by: Metin Ersin Arıcan <metin.arican@bogazici.edu.tr>
---
[](https://gitpod.io/from-referrer/)
Please note that we have utilized agentic AI tools (Claude Opus, ChatGPT Codex) during the development of this PR. Most of the proofs of the major theorems are directly "translated" from human-language source material (check the diff in `references.bib`) to Lean proofs using mentioned AI tools. However, all design/formalization decisions are made by us. |
new-contributor
LLM-generated
|
976/7 |
Mathlib.lean,Mathlib/ModelTheory/Complexity.lean,Mathlib/ModelTheory/ElementaryExtensionPair.lean,Mathlib/ModelTheory/FinitelyGenerated.lean,Mathlib/ModelTheory/Order.lean,Mathlib/ModelTheory/PartialEquiv.lean,Mathlib/ModelTheory/QuantifierElimination.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Substructures.lean,Mathlib/Tactic/Linter/TextBased/UnicodeLinter.lean,docs/references.bib |
11 |
6 |
['erdkocak', 'felixpernegger', 'github-actions'] |
nobody |
66-41641 2 months ago |
81-44251 81 days ago |
81-44417 81 days |
| 41217 |
Probablism author:Probablism |
feat(SimpleGraph/Matching): add graph-level IsMatching |
Closes #11911.
This adds a graph-level `SimpleGraph.IsMatching` predicate. It is support-based, so isolated
vertices are allowed: every vertex in the graph support is incident to exactly one edge.
The existing `Subgraph.IsMatching` predicate is unchanged. I added compatibility lemmas relating it
to `M.spanningCoe`, including an iff characterizing the subgraph predicate as graph-level matching
plus `M.support = M.verts`.
Validation:
- `lake env lean Mathlib/Combinatorics/SimpleGraph/Matching.lean`
- `lake build Mathlib.Combinatorics.SimpleGraph.Matching`
- `lake build Mathlib.Combinatorics.SimpleGraph.Hall Mathlib.Combinatorics.SimpleGraph.Tutte Mathlib.Combinatorics.SimpleGraph.UniversalVerts`
- `lake exe lint-style Mathlib/Combinatorics/SimpleGraph/Matching.lean`
- `lake build Mathlib`
- `lake test`
AI assistance: OpenAI Codex assisted with testing and validation.
|
t-combinatorics
new-contributor
|
41/3 |
Mathlib/Combinatorics/SimpleGraph/Matching.lean |
1 |
4 |
['Probablism', 'SnirBroshi', 'github-actions'] |
nobody |
63-34874 2 months ago |
63-36063 63 days ago |
63-35943 63 days |
| 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
|
272/0 |
Mathlib.lean,Mathlib/Order/Category/PartOrd/CartesianClosed.lean,Mathlib/Order/Category/PartOrd/Distributive.lean,Mathlib/Order/Category/Preord/CartesianClosed.lean,Mathlib/Order/Category/Preord/Distributive.lean |
5 |
5 |
['github-actions', 'intgrah'] |
nobody |
61-49672 1 month ago |
62-74250 62 days ago |
62-74130 62 days |
| 41337 |
gotrevor author:gotrevor |
doc(1000-yaml): add Goodstein's theorem and the Kirby–Paris theorem |
Claims two listed-but-unclaimed entries in the 1000+ theorems scoreboard by adding external-formalization pointers (no mathlib declaration; same pattern as Löb's theorem [`Q204884`](https://github.com/leanprover-community/mathlib4/blob/master/docs/1000.yaml#L201), the flypitch continuum-hypothesis independence [`Q208416`](https://github.com/leanprover-community/mathlib4/blob/master/docs/1000.yaml#L216), and Arrow's impossibility theorem [`Q33481`](https://github.com/leanprover-community/mathlib4/blob/master/docs/1000.yaml#L30)).
## Entries
| Wikidata | Theorem | Formalization |
|----------|---------|---------------|
| `Q1149185` | **Goodstein's theorem** — every Goodstein sequence terminates | [`lean-gallery`](https://github.com/gotrevor/lean-gallery/blob/main/LeanGallery/Logic/Goodstein/Statement.lean) (ordinal-descent proof) |
| `Q1149185X` | **Kirby–Paris theorem** — PA does not prove that every Goodstein sequence terminates | [`goodstein-independence`](https://github.com/gotrevor/goodstein-independence/blob/main/src/GoodsteinPA/Statement.lean) |
## Notes
- **`Q1149185X` (Kirby–Paris, 1982)** is built on the [`FormalizedFormalLogic/Foundation`](https://github.com/FormalizedFormalLogic/Foundation) library (the same library that backs the existing Löb's-theorem entry [`Q204884`](https://github.com/leanprover-community/mathlib4/blob/master/docs/1000.yaml#L201)), via the Wainer growth-rate route (`Goodstein` outgrows every PA-provably-total function). The headline `peano_not_proves_goodstein` is sorry-free and `#print axioms`-clean — it rests on exactly `[propext, Classical.choice, Quot.sound]`.
- **`Q1149185`** is Goodstein's theorem proper (the termination statement, provable in ZFC / Lean); mathlib does not currently contain it.
- Both formalizations are by Trevor Morris, developed with AI assistance: Claude Code (Fable 5, Opus), Codex, and Harmonic's Aristotle.
🤖 Generated with [Claude Code](https://claude.com/claude-code) |
new-contributor
LLM-generated
|
6/0 |
docs/1000.yaml |
1 |
4 |
['felixpernegger', 'github-actions'] |
nobody |
60-30561 1 month ago |
60-32816 60 days ago |
60-32696 60 days |
| 41358 |
erdkocak author:erdkocak |
doc(ModelTheory): fix partial equivalence theorem reference |
Fix a stale module doc reference in `ModelTheory.PartialEquiv`: the theorem is `equiv_between_cg`, and the conclusion is an isomorphism `M ≃[L] N`.
---
This documentation-only PR was split out from #41111 following review feedback.
Please note that ChatGPT Codex was used to help prepare this documentation-only PR. |
t-logic
new-contributor
|
3/3 |
Mathlib/ModelTheory/PartialEquiv.lean |
1 |
2 |
['github-actions'] |
nobody |
60-2129 1 month ago |
60-2718 60 days ago |
60-2598 60 days |
| 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
|
51/0 |
Mathlib/ModelTheory/FinitelyGenerated.lean,Mathlib/ModelTheory/Substructures.lean |
2 |
9 |
['NoahW314', 'erdkocak', 'felixpernegger', 'github-actions'] |
nobody |
60-1274 1 month ago |
60-2081 60 days ago |
65-86050 65 days |
| 39864 |
8e7 author:8e7 |
feat(Combinatorics/SimpleGraph/Acyclic): helly property on subtrees |
This PR adds several lemmas regarding connected subsets of vertices in trees (subtrees). The main result is the Helly property for subtrees: For a finite set of subtrees, if any pair of subtrees intersect, then there is a common vertex in all subtrees.
This lemma is part of an effort to formalize tree decompositions (see #38334), and will be used in a future PR to prove `G.cliqueNum - 1 <= G.treeWidth`.
AI Usage: The proofs were developed with the help of Claude Code. I vouch for all the code written and understand the content fully.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
LLM-generated
|
114/0 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean |
2 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
59-22295 1 month ago |
59-22850 59 days ago |
77-36903 77 days |
| 37683 |
SabrinaJewson author:SabrinaJewson |
feat(Order/OrdContinuous): every map between complete lattices that preserves sSup is a left adjoint of some Galois connection |
It is already proven that the left side of a Galois connection is left-continuous; this provides the converse.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #37682
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
|
14/0 |
Mathlib/Order/OrdContinuous.lean |
1 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
57-47307 1 month ago |
57-48974 57 days ago |
57-50301 57 days |
| 36813 |
AlexeyMilovanov author:AlexeyMilovanov |
feat(Computability.Encoding): add self-delimiting unary and pair encodings |
Adds self-delimiting boolean encodings to `Mathlib.Computability.Encoding`.
**Key changes:**
* **`unaryPrefixEncodingNat`**: A self-delimiting unary `Encoding ℕ Bool`, using the code $1^n0$.
* **`encodingProdBool`**: Builds an `Encoding (α × β) Bool` from boolean encodings of `α` and `β`, by prefixing the length of the first encoded component.
* **`encodingListBool`**: Builds an `Encoding (List α) Bool` from a boolean encoding of `α`, using self-delimiting element encodings.
* **`UnaryPrefix` helpers**: Internal-style helper API for the underlying length-prefixed boolean-list encoding and decoding. |
t-computability
new-contributor
|
98/0 |
Mathlib/Computability/Encoding.lean |
1 |
6 |
['AlexeyMilovanov', 'Komyyy', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
55-65165 1 month ago |
55-65165 55 days ago |
72-20922 72 days |
| 41537 |
Mathias-Stout author:Mathias-Stout |
feat(RingTheory/TwoSidedIdeal/Lattice): add lemmas on two-sided ideals |
We add three lemmas on two-sided ideals.
These are analogues of existing lemmas of `Submodule` with the same names.
This prepares a follow-up PR proving that quaternions are central simple.
Co-authored-by: Justus Springer [justusspringer@gmx.de](mailto:justusspringer@gmx.de)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
13/0 |
Mathlib/RingTheory/TwoSidedIdeal/Lattice.lean |
1 |
5 |
['Whysoserioushah', 'github-actions', 'kbuzzard'] |
nobody |
54-59496 1 month ago |
54-61939 54 days ago |
54-69596 54 days |
| 41781 |
teng10 author:teng10 |
feat(Algebra/Representation): add abstract permutation action in TensorPower |
Hello, I'm a new contributor. I had an introduction here on [zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Introduction.3A.20Schur.20Weyl.20Duality/with/607194314)
This PR is a first step in formalizing Shur Weyl duality, which I got feedback that it would be useful to mathlib. The final statement I had in mind has the form
/--
The centralizer of `{g^{⊗k} | g ∈ End(V)}`equals `Span{W_σ | σ ∈ S_k}`, for all dimensions `d` and tensor powers `k`.
---/
This PR tries to define permutation action on TensorPower; define permutation image space.
An initial version of the definition is more specific to the Euclidean space (for reference I list them below)
```
open scoped TensorProduct
variable {d : ℕ} {k : ℕ}
/-- The `k`-fold tensor power of `ℂ^d`, defined as `⨂[ℂ] (i : Fin k), (Fin d → ℂ)`. -/
abbrev PiTensorPower (d k : ℕ) : Type :=
PiTensorProduct ℂ (fun (_ : Fin k) => (Fin d → ℂ))
/-- The permutation operator `W_σ` on the tensor power `V^{⊗k}`.
Given `σ : Equiv.Perm (Fin k)`, this acts by permuting the tensor factors:
`W_σ (v₁ ⊗ ⋯ ⊗ vₖ) = v_{σ⁻¹(1)} ⊗ ⋯ ⊗ v_{σ⁻¹(k)}`. -/
def permAction (d : ℕ) {k : ℕ} (σ : Equiv.Perm (Fin k)) :
PiTensorPower d k ≃ₗ[ℂ] TensV d k :=
PiTensorProduct.reindex ℂ (fun (_ : Fin k) => (Fin d → ℂ)) σ
/-- The set of permutation operators in `End(V^{⊗k})`. -/
def permImage (d k : ℕ) : Set (Module.End ℂ (TensV d k)) :=
Set.range (fun σ : Equiv.Perm (Fin k) => (permAction d σ).toLinearMap)
```
LLM acknowledgement: I have used aristotle to write these definitions. However, I am very motivated to learn how to write proper code. I have looked more into `PiTensorProduct` and `TensorPower` module and came to the abstract version in the PR. I tried to ask aristotle about how it's defining things and whether it's suitable for mathlib.
And I would very much appreciate your thoughts on how appropriate these definitions are. Thanks for your time!
Yanting
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
new-contributor
label:t-algebra$ |
22/0 |
Mathlib/LinearAlgebra/TensorPower/Basic.lean |
1 |
4 |
['github-actions', 'teng10'] |
nobody |
48-63053 1 month ago |
48-65653 48 days ago |
48-65549 48 days |
| 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 |
48-30064 1 month ago |
48-30585 48 days ago |
56-13426 56 days |
| 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 |
5 |
['b-mehta', 'espottesmith', 'github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
47-70774 1 month ago |
72-67782 72 days ago |
209-71410 209 days |
| 41732 |
vaca22 author:vaca22 |
feat(RingTheory/ClassGroup): add mulEquiv_mk0 |
Add a simp lemma describing how the class-group equivalence induced by a ring equivalence acts on the class of a nonzero ideal.
The image is the class of the ideal mapped along the ring equivalence. The proof compares the corresponding fractional ideals through the existing class-group equivalence and localization membership API.
**AI disclosure**: this PR is primarily LLM-generated (Claude Code).
|
t-ring-theory
new-contributor
LLM-generated
|
43/0 |
Mathlib/RingTheory/ClassGroup/Basic.lean |
1 |
3 |
['github-actions', 'vaca22'] |
nobody |
47-59765 1 month ago |
49-75039 49 days ago |
49-74919 49 days |
| 41729 |
vaca22 author:vaca22 |
feat(RingTheory/DedekindDomain): add divisor group core |
Add the formal divisor group of a Dedekind domain and bundle the existing factorization API as an additive equivalence between nonzero fractional ideals and divisors.
Divisors are finitely supported integer-valued functions on height-one primes. divisor records FractionalIdeal.count, ofDivisor reconstructs a fractional ideal from prime powers, and divisorEquiv proves these operations are inverse and send ideal multiplication to divisor addition.
------------
This is the core of the earlier larger proposal. Principal divisors and weighted degrees are deliberately left for later pull requests.
**AI disclosure**: this PR is primarily LLM-generated (Claude Code).
|
t-ring-theory
new-contributor
LLM-generated
|
100/0 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Divisor.lean |
2 |
4 |
['github-actions', 'grunweg', 'vaca22'] |
nobody |
47-43212 1 month ago |
47-43212 47 days ago |
49-40295 49 days |
| 41911 |
kedlaya author:kedlaya |
feat(FieldTheory): implement Artin-Schreier extensions, Artin-Schreier theorem |
Implement the Artin-Schreier description of cyclic degree-p extensions of fields of characteristic p, and the related theorem of Artin-Schreier that a field with a finite algebraically closed extension is either algebraically closed or real closed.
|
t-algebra
new-contributor
label:t-algebra$ |
486/0 |
Mathlib.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/FieldTheory/ArtinSchreierExtension.lean,Mathlib/FieldTheory/IsRealClosed/ArtinSchreier.lean |
4 |
11 |
['SnirBroshi', 'github-actions', 'jcommelin', 'kedlaya'] |
nobody |
45-17696 1 month ago |
45-26546 45 days ago |
45-27767 45 days |
| 41934 |
NickKobs author:NickKobs |
feat(Order/Nucleus): a nucleus on a Boolean algebra is closed |
Adds `Mathlib/Order/Nucleus/Boolean.lean` — the Boolean specialization of the nucleus API:
```lean
theorem Nucleus.apply_eq_sup_apply_bot [BooleanAlgebra X] (n : Nucleus X) (a : X) :
n a = a ⊔ n ⊥
theorem Nucleus.isClosed_of_booleanAlgebra [BooleanAlgebra X] (n : Nucleus X) :
⇑n = fun a => a ⊔ n ⊥
theorem Nucleus.eq_of_apply_bot_eq [BooleanAlgebra X] {m n : Nucleus X} (h : m ⊥ = n ⊥) :
m = n
```
**Why.** `Mathlib.Order.Nucleus` provides the frame / Heyting-algebra structure of `Nucleus X`, the closure-operator view (`toClosureOperator`), and the pointwise `le_apply` / `idempotent` / `map_inf` API, but no Boolean specialization. On a Boolean algebra every nucleus is *closed* — completely determined by its value at `⊥` — which is the pointwise algebraic core of the classical fact that the assembly `N(L)` is Boolean iff `L` is (Beazer–Macnab; Simmons; Johnstone, *Stone Spaces*, II.2). It is the natural companion to the existing frame structure and a common building block in point-free topology.
**Proof.** `n a = n a ⊓ (a ⊔ aᶜ) = (n a ⊓ a) ⊔ (n a ⊓ aᶜ)`; the left join-and is `a` (inflationarity), the right is `≤ n a ⊓ n aᶜ = n (a ⊓ aᶜ) = n ⊥` (inflationarity of `aᶜ` + `map_inf`). The reverse inequality is inflationarity plus monotonicity applied to `⊥ ≤ a`. No completeness is needed — the statement is pointwise, so `[BooleanAlgebra X]` (not a complete Boolean algebra) suffices.
**References.**
* R. Beazer, D. S. Macnab, *Modal extensions of Heyting algebras*.
* H. Simmons, *A framework for topology*, Logic Colloquium '77.
* P. T. Johnstone, *Stone Spaces*, CUP (1982), II.2.
**Provenance.** The theorem was first mechanized (Mathlib-free, over a finite Boolean frame) in the BETTI/Araksha refusal-algebra work; this PR is the generalization to an arbitrary `BooleanAlgebra` against Mathlib's own `Nucleus` API. The result is classical open mathematics, cited above. An earlier revision of the file was compiled clean against master `c81c5cbb` (Lean `v4.33.0-rc1`); this revision adapts the header to the module system (`module` / `public import` / `@[expose] public section`).
|
t-order
new-contributor
LLM-generated
|
71/0 |
Mathlib.lean,Mathlib/Order/Nucleus/Boolean.lean |
2 |
5 |
['felixpernegger', 'github-actions'] |
nobody |
44-33100 1 month ago |
44-46843 44 days ago |
44-46723 44 days |
| 41947 |
hawkrobe author:hawkrobe |
feat(Order/Antisymmetrization): comparable minimal elements are equivalent |
Adds `Minimal.antisymmRel_of_ge` and `Minimal.antisymmRel_of_symmGen` at preorder generality.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
|
32/3 |
Mathlib/Order/Antisymmetrization.lean |
1 |
2 |
['github-actions'] |
nobody |
44-19481 1 month ago |
44-23567 44 days ago |
44-23447 44 days |
| 30637 |
strihanje01 author:strihanje01 |
feat(Combinatorics/SetFamily/Lindstrom): Lindstrom's theorem for subfamilies with equal unions |
add Lindstrom's theorem and its strengthening for equal intersections
---
<!-- 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
|
211/0 |
Mathlib.lean,Mathlib/Combinatorics/SetFamily/Lindstrom.lean |
2 |
2 |
['github-actions', 'mathlib4-merge-conflict-bot'] |
nobody |
41-32344 1 month ago |
62-85808 62 days ago |
94-48784 94 days |
| 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'] |
nobody |
39-79459 1 month ago |
40-31029 40 days ago |
40-30909 40 days |
| 42047 |
LegaSage author:LegaSage |
feat(RingTheory): add locally nilpotent derivations |
This introduces `Derivation.IsLocallyNilpotent` and basic iteration lemmas for locally nilpotent derivations. The main result is the method-style theorem `Derivation.IsLocallyNilpotent.apply_eq_zero_of_dvd`: over a characteristic-zero domain, if `f ∣ D f` for a locally nilpotent derivation `D`, then `D f = 0`.
The proof uses the iterated Leibniz rule and the top nonvanishing iterates of the two factors.
-----
The implementation and PR text were prepared with assistance from OpenAI Codex. |
t-ring-theory
new-contributor
LLM-generated
|
167/0 |
Mathlib.lean,Mathlib/RingTheory/Derivation/LocallyNilpotent.lean |
2 |
2 |
['github-actions'] |
nobody |
39-79440 1 month ago |
40-31029 40 days ago |
40-30909 40 days |
| 42082 |
attilavjda author:attilavjda |
feat(FieldTheory): reduce Frobenius powers modulo the extension degree |
Adds ring-hom and pointwise lemmas reducing powers of Frobenius modulo the extension degree of a finite 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/)
|
t-algebra
new-contributor
label:t-algebra$ |
12/0 |
Mathlib/FieldTheory/Finite/Basic.lean |
1 |
5 |
['attilavjda', 'felixpernegger', 'github-actions'] |
nobody |
38-69254 1 month ago |
38-70038 38 days ago |
38-78389 38 days |
| 41828 |
archiebrowne author:archiebrowne |
feat(RingTheory/HopfAlgebra/Convolution): add `ofAntipodeOfAdjoin` |
Adds `HopfAlgebra.ofAntipodeOfAdjoin`, which upgrades a bialgebra `A` to a Hopf
algebra given an algebra anti-homomorphism `S : A →ₐ[R] Aᵐᵒᵖ` that satisfies the
two antipode identities *only on a generating set* `X` with `adjoin R X = ⊤`.
Main additions (`Mathlib/RingTheory/HopfAlgebra/Basic.lean`):
* `HopfAlgebra.mul_antipode_rTensor_comul_adjoin_top` /
`HopfAlgebra.mul_antipode_lTensor_comul_adjoin_top`: the antipode axioms hold on
all of `A` when they hold on a generating set.
* `HopfAlgebra.ofAntipodeOfAdjoin`: the resulting `HopfAlgebra R A` structure,
with `antipode := (opLinearEquiv R).symm.toLinearMap ∘ₗ S.toLinearMap`.
Also in (`Mathlib/RingTheory/HopfAlgebra/Convolution.lean`):
* Golf `antipode_mul_id`, `id_mul_antipode`, and `antipode_id_cancel`.
* Add `id_antipode_cancel` (mirror of `antipode_id_cancel`). |
t-ring-theory
new-contributor
|
89/9 |
Mathlib/RingTheory/HopfAlgebra/Convolution.lean |
1 |
2 |
['github-actions'] |
nobody |
36-8785 1 month ago |
47-55063 47 days ago |
47-55985 47 days |
| 40416 |
sparckix author:sparckix |
feat(Order/Monotone): add diagonal subsequence extraction |
This PR adds a small diagonal extraction lemma for nested strictly monotone subsequences of `Nat`.
Given strict-mono maps `φ k : Nat -> Nat` such that each `φ (k + 1)` factors through `φ k` by a strict-mono map `τ k`, the diagonal sequence `fun n => φ n n` is strictly monotone and each tail of the diagonal factors through the corresponding `φ k` by a strict-mono map.
The lemma is intended as a reusable sequence/order fact and is placed near `Nat.exists_strictMono_subsequence`.
Local checks run:
```text
lake env lean Mathlib/Order/Monotone/Basic.lean
lake build Mathlib.Order.Monotone.Basic
lake exe lint-style Mathlib/Order/Monotone/Basic.lean
git diff --check
```
AI assistance disclosure: I used AI tools, including Codex and external model feedback, to help extract and review this small lemma from a local formalization project. I have checked the statement and proof myself and am responsible for the submitted code.
|
t-order
new-contributor
LLM-generated
|
66/0 |
Mathlib/Order/Monotone/Basic.lean |
1 |
3 |
['github-actions', 'pepamontero'] |
nobody |
35-69518 1 month ago |
84-64276 84 days ago |
84-64156 84 days |
| 42079 |
JX-Mo author:JX-Mo |
refactor(RepresentationTheory): weaken condition of Schur's lemma |
Replace the condition `[FiniteDimensional k V]` of Schur's lemma by `[FiniteDimensional k (IntertwiningMap ρ ρ)]`. Note that the former will automatically give the latter by typeclass inference.
This has an immediate downstream application: irreducible admissible smooth representations (of e.g. GL2(Qp)) are usually not finite dimensional but the weaker condition`[FiniteDimensional k (IntertwiningMap ρ ρ)]` can be easily deduced from the definition of being "irreducible admissible smooth". |
new-contributor
t-algebra
label:t-algebra$ |
16/14 |
Mathlib/RepresentationTheory/AlgebraRepresentation/Basic.lean,Mathlib/RepresentationTheory/Irreducible.lean |
2 |
6 |
['JX-Mo', 'Whysoserioushah', 'github-actions', 'pepamontero'] |
nobody |
35-69420 1 month ago |
39-21057 39 days ago |
39-20937 39 days |
| 41678 |
JX-Mo author:JX-Mo |
refactor(RepresentationTheory): record the concrete binary biproduct |
Record the concrete binary biproduct explicitly from the instance `HasBinaryBiproducts` to make its _**proof**_ reusable. This strengthens the exposed mathematical statement from "_the biproduct exists_" to "_the biproduct exists and is isomorphic to_ `prod _ _`".
This has an immediate downstream application: to prove that the property of being smooth is stable under product, we need to reconstruct the "product". The current instance `HasBinaryBiproducts` only tells that the product exists and the information about how the product looks like is not directly available, so now we need to reprove that `prod` is a concrete categorical (bi)product. This PR aims to eliminate such future duplicated proofs. |
t-algebra
new-contributor
label:t-algebra$ |
23/7 |
Mathlib/RepresentationTheory/Rep/Basic.lean |
1 |
9 |
['JX-Mo', 'Whysoserioushah', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
35-33739 1 month ago |
35-34371 35 days ago |
50-81141 50 days |
| 42188 |
arcaputo3 author:arcaputo3 |
feat(Combinatorics/SimpleGraph): the line graph signature identity |
For a finite simple graph `G` with `n` vertices and `m` edges, we prove the classical identity
`s(A(L(G))) = n - m + p - q`
where `s` is the signature of the (real) adjacency matrix of the line graph `L(G)`, and `(p, q)` are the numbers of positive/negative eigenvalues of `Q(G) - 2•1`, with `Q(G) = D(G) + A(G)` the signless Laplacian, all counted with multiplicity.
The proof is the Gram-pairing argument: the `V × E(G)` incidence matrix `B` satisfies `Bᵀ * B = A(L(G)) + 2•1` and `B * Bᵀ = Q(G)`, and the two products have equal nonzero spectra by `Matrix.charpoly_mul_comm'`. Eigenvalue counts are transported along the resulting root-multiset identity.
New declarations:
- `Mathlib/Analysis/Matrix/Inertia.lean`: the inertia indices `Matrix.IsHermitian.posInertia` / `negInertia` / `signature` of a real symmetric matrix, and `Matrix.IsHermitian.charpoly_add_smul_one` / `roots_charpoly_add_smul_one` (the characteristic polynomial of `A + c • 1` splits over the shifted eigenvalues).
- `Mathlib/Combinatorics/SimpleGraph/LineGraphSignature.lean`: `SimpleGraph.signlessLapMatrix`, `SimpleGraph.edgeIncMatrix` (the `V × E(G)`-indexed incidence matrix) together with the two Gram identities above (stated over an arbitrary (non-assoc) semiring), a `DecidableRel` instance for `lineGraph.Adj`, and the main theorem `SimpleGraph.signature_adjMatrix_lineGraph`.
---
**AI disclosure** (per the mathlib policy on AI-assisted contributions): this PR was formalized end-to-end with Claude Code (Anthropic model Claude Fable 5). The choice of statement and the decision to contribute are mine; the Lean proofs were authored by the tool and verified by compilation. `#print axioms SimpleGraph.signature_adjMatrix_lineGraph` reports `[propext, Classical.choice, Quot.sound]`.
Notes for reviewers:
- `signlessLapMatrix` could alternatively live in `Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean`, and the `DecidableRel G.lineGraph.Adj` instance in `LineGraph.lean`; happy to move them.
- The inertia API is deliberately minimal (what the main theorem needs); extensions (e.g. rank/inertia relations, congruence invariance / Sylvester's law) would be natural follow-ups.
- I do not yet have push access to non-master mathlib branches, so this PR comes from a fork; happy to move the branch onto the main repository once access is granted.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
new-contributor
LLM-generated
|
326/0 |
Mathlib.lean,Mathlib/Analysis/Matrix/Inertia.lean,Mathlib/Combinatorics/SimpleGraph/LineGraphSignature.lean |
3 |
2 |
['github-actions'] |
nobody |
35-20577 1 month ago |
35-71048 35 days ago |
35-70928 35 days |
| 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'] |
nobody |
35-5489 1 month ago |
35-6055 35 days ago |
35-5935 35 days |
| 42223 |
cameronfreer author:cameronfreer |
feat(Computability/Reduce): the halting problem is many-one complete |
`Mathlib/Computability/Halting.lean` proves that the halting problem is recursively enumerable (`ComputablePred.halting_problem_re`) and not computable (`ComputablePred.halting_problem`), but not that it is complete: there is no `REPred R → R ≤₀ K`, and neither `Halting.lean` nor `RE.lean` mentions `≤₀`.
This PR adds three results:
```lean
theorem REPred.manyOneReducible_halting_problem {R : ℕ → Prop} (h : REPred R) (n : ℕ) :
R ≤₀ fun c : Code => (Code.eval c n).Dom
theorem halting_problem_manyOneEquiv_halting_problem₂ (n : ℕ) :
ManyOneEquiv (fun c : Code => (Code.eval c n).Dom)
(fun p : Code × ℕ => (Code.eval p.1 p.2).Dom)
theorem REPred.manyOneReducible_halting_problem₂ {R : ℕ → Prop} (h : REPred R) :
R ≤₀ fun p : Code × ℕ => (Code.eval p.1 p.2).Dom
```
(I've stated the results in `Reduce.lean` rather than alongside the other halting-problem results because `≤₀` is defined here, and `Reduce` imports `Halting` rather than the other way around.)
🤖 These proofs were written with the assistance of Claude Opus 5 high and reviewed by GPT Sol 5.6 xhigh.
|
t-computability
new-contributor
LLM-generated
|
41/0 |
Mathlib/Computability/Reduce.lean |
1 |
3 |
['cameronfreer', 'github-actions'] |
nobody |
33-68578 1 month ago |
35-9986 35 days ago |
35-9866 35 days |
| 42189 |
cameronfreer author:cameronfreer |
feat(ModelTheory/Basic): add characterization of languages with countably many symbols |
`Language.Countable.countable_functions` currently projects `Countable L.Symbols` onto the function symbols, but there is no counterpart for relations. This PR adds the missing instance; in doing so it relates the two ways that Mathlib already expresses "countable language": the bundled `Language.card ≤ ℵ₀` and the unbundled `Countable (Σ l, L.Functions l)` / `Countable (Σ l, L.Relations l)` hypotheses that model-theoretic statements tend to carry separately.
* `Countable.countable_relations`, `countable_symbols_iff`, and `card_le_aleph0_iff_countable` connect the bundled and unbundled formulations of symbol countability.
* `Countable.countable_sum`, `Countable.countable_constantsOn`, and `Countable.countable_withConstants` centralize countability instances for language constructors and remove the corresponding local instances from `Encoding.lean`.
## Motivation
Following review feedback from @NoneMore, this PR now also simplifies existing Mathlib code: generic countability instances for `Language.sum`, `constantsOn`, and `withConstants` live beside those constructors, so `Encoding.lean` no longer needs its own cardinal-arithmetic proofs for them.
The broader motivation comes from projects in infinitary model theory that build on Mathlib, in which one typically needs to carry around a hypothesis about countability of the set of symbols.
Specifically, in [cameronfreer/infinitary-logic](https://github.com/cameronfreer/infinitary-logic) the two sorts are carried unbundled and independently throughout; there are roughly 180 occurrences of the relation-symbol hypothesis and 24 of the function-symbol one. Here are a few examples:
* [`Methods/Henkin/ModelExistence.lean#L60`](https://github.com/cameronfreer/infinitary-logic/blob/1a478e80794080a536931c029281bb65266b3171/InfinitaryLogic/Methods/Henkin/ModelExistence.lean#L60): model existence, carrying both hypotheses side by side;
* [`Admissible/Compactness.lean#L90`](https://github.com/cameronfreer/infinitary-logic/blob/1a478e80794080a536931c029281bb65266b3171/InfinitaryLogic/Admissible/Compactness.lean#L90): Barwise completeness, likewise;
* [`Descriptive/Polish.lean#L46`](https://github.com/cameronfreer/infinitary-logic/blob/1a478e80794080a536931c029281bb65266b3171/InfinitaryLogic/Descriptive/Polish.lean#L46): a section variable assuming only the relation symbols are countable, which is where one notices the missing companion instance;
* [`Methods/LopezEscobar/CodeClass.lean#L29`](https://github.com/cameronfreer/infinitary-logic/blob/1a478e80794080a536931c029281bb65266b3171/InfinitaryLogic/Methods/LopezEscobar/CodeClass.lean#L29): a custom `Countable (Σ n, L.Functions n)` instance for relational languages, which is an example of the bookkeeping that arises from the two sorts not being related by a single lemma.
(Note that the `countable_functions` and `countable_relations` instances only project *out of* `Countable L.Symbols` into a summand; the converse direction is stated as a theorem rather than an instance, so there is no risk of an instance cycle.)
🤖 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 |
33-68552 1 month ago |
35-8924 35 days ago |
35-12012 35 days |
| 42203 |
cameronfreer author:cameronfreer |
feat(Algebra/MvPolynomial): compact only the right summand of a sum of variables |
Currently `exists_fin_rename` reindexes the entire variable type along an injection `Fin n → σ`. At `σ ⊕ τ` this renumbers the left-hand variables together with the right-hand ones, so it cannot be used when the left summand carries meaning that has to be preserved.
This PR adds two variants that leave the left summand alone, mirroring the existing `exists_finset_rename` / `exists_fin_rename` pair:
```lean
theorem exists_finset_right_rename (p : MvPolynomial (σ ⊕ τ) R) :
∃ (t : Finset τ) (q : MvPolynomial (σ ⊕ { x // x ∈ t }) R),
p = rename (Sum.map id (↑)) q
theorem exists_fin_right_rename (p : MvPolynomial (σ ⊕ τ) R) :
∃ (n : ℕ) (f : Fin n → τ) (_hf : Injective f) (q : MvPolynomial (σ ⊕ Fin n) R),
p = rename (Sum.map id f) q
```
The first of these factors `exists_finset_rename` through `Finset.toRight`: rename along the map that fixes the left-hand variables and sends each right-hand variable of the finset into `s.toRight`.
The second one then enumerates that right-hand finset with `Fintype.equivFin`, the same way that `exists_fin_rename` does.
Motivation: a Diophantine relation is presented as a polynomial in input variables along with existentially quantified witness variables, and the normal form wants inputs indexed by `Fin n` and witnesses compacted to `Fin m`. Only the witnesses may be reindexed; renumbering the inputs changes the relation being represented. This comes up in work I've been exploring towards Hilbert's tenth problem (the TODO in `Mathlib.NumberTheory.Dioph`), though the statement is independent of that.
🤖 These proofs were written with the assistance of Claude Opus 5 high and reviewed by GPT Sol 5.6 xhigh.
|
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
41/0 |
Mathlib/Algebra/MvPolynomial/Rename.lean |
1 |
3 |
['cameronfreer', 'github-actions'] |
nobody |
33-68552 1 month ago |
35-45955 35 days ago |
35-46659 35 days |
| 42178 |
cameronfreer author:cameronfreer |
feat(Computability/Primrec/List): add theorems showing that List.all, List.any and List.sum are primitive recursive |
Add the parameterized `list_all`, `list_any` and natural-number `list_sum`, in the style of the existing `list_map`, `list_foldr` and `list_findIdx`.
Mathlib already has a parameterized core, but no direct lemmas for these standard list operations, so downstream developments tend to reconstruct them from `list_foldr` at each use site. In the course of writing [cameronfreer/computable-analysis](https://github.com/cameronfreer/computable-analysis) I ended up needing this in three places, all of which can now make use of the results here instead (see [a6898b5](https://github.com/cameronfreer/computable-analysis/commit/a6898b5), in particular `Weihrauch/Principles/Limit.lean:117`, `TypeTwo/PrefixTable.lean:334,351,369`, and `Measure/DisintegrateLower.lean:877,902`).
:robot: These proofs were written with the assistance of Claude Opus 5 high and reviewed by GPT Sol 5.6 xhigh. |
t-computability
new-contributor
LLM-generated
|
21/1 |
Mathlib/Computability/Primrec/List.lean |
1 |
4 |
['cameronfreer', 'github-actions'] |
nobody |
33-68545 1 month ago |
36-2070 36 days ago |
36-1950 36 days |
| 41696 |
vaca22 author:vaca22 |
feat(RingTheory): generalize relNorm_eq_pow_of_isMaximal to separable fraction field extensions |
This PR relaxes the hypothesis of Ideal.relNorm_eq_pow_of_isMaximal and its supporting Ring.NormalClosure instances.
Originally the theorem required the fraction ring of base Dedekind domain R to be a perfect field. Now we only require the fraction field extension to be separable.
The perfect field condition excludes function fields with imperfect constant fields, which is an important case we want to support. The core mathematical insight is that the normal closure of a separable field extension stays separable, so we can construct the Galois structure without a perfect base.
This change is fully backwards compatible: any existing code relying on the old perfect field assumption still compiles, since perfect fields automatically give separable extensions. Only two files are modified: NormalClosure.lean and RelNorm.lean, with small diff and no extra imports.
AI disclosure: I used AI tools to assist with initial code drafting and full CI validation. All mathematical reasoning and proof logic I worked through independently, and I can explain every adjustment in review. My original PR text relied too heavily on AI output, I’ve fully rewritten this description manually. |
new-contributor
t-ring-theory
LLM-generated
|
23/3 |
Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/NormalClosure.lean |
3 |
15 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'vaca22', 'xroblot'] |
nobody |
33-7091 1 month ago |
41-56522 41 days ago |
46-65312 46 days |
| 40728 |
Formalistic03 author:Formalistic03 |
feat(Combinatorics/SimpleGraph/Hasse): more properties of Hasse graphs of linear orders |
- two forms of an intermediate value theorem for linear orders
- the Hasse graph of a linear order is acyclic
- a path graph is locally finite
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
99/24 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/CycleGraph.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Data/Fintype/Defs.lean |
4 |
23 |
['Formalistic03', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
32-44139 1 month ago |
32-47239 32 days ago |
71-34050 71 days |
| 42345 |
TomOleDiem author:TomOleDiem |
feat(Analysis/Normed/Algebra): characterize continuous one-parameter subgroups |
This PR proves that every continuous one-parameter subgroup of the unit group of a real Banach algebra has a unique exponential generator.
The theorem applies to any function-like type from `Multiplicative ℝ` to `Eˣ` carrying `MonoidHomClass` and `ContinuousMapClass` instances.
The proof first derives differentiability from an invertible local average. It then identifies the subgroup with the exponential of its derivative at zero and proves uniqueness by differentiation at zero.
The new module builds successfully and passes `lint-style`.
Substantial AI assistance was used to develop and review this formalization. |
t-analysis
new-contributor
LLM-generated
|
248/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Algebra/OneParameterSubgroup.lean |
2 |
3 |
['TomOleDiem', 'github-actions'] |
nobody |
31-51868 1 month ago |
31-51868 31 days ago |
31-51748 31 days |
| 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 |
42 |
['LAC1213', 'NoahW314', 'github-actions', 'robin-carlier'] |
nobody |
31-38216 1 month ago |
36-72805 36 days ago |
37-11013 37 days |
| 41871 |
stalex444 author:stalex444 |
feat(RingTheory/IntegralClosure): integer powers of integral elements are integral |
This PR adds IsIntegral.zpow and its subalgebra-membership analogs (zpow_mem, zpow_mem_adjoin, Algebra.IsIntegral.zpow_mem), generalizing the existing inv lemmas from the −1 power to all integer powers.
This Lean code was drafted with the help of AI (Claude Code), I reviewed it and built it locally against the current master.
---
Happy to adjust the placement or the type-variable names.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
new-contributor
|
20/0 |
Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean |
1 |
10 |
['SnirBroshi', 'github-actions', 'stalex444'] |
nobody |
29-79199 29 days ago |
46-55487 46 days ago |
46-55367 46 days |
| 42225 |
matt-w-horn author:matt-w-horn |
feat(Order): Knaster–Tarski fixed points on an interval |
`lfpIcc f a b` and `gfpIcc f a b`: least and greatest fixed points of `f` on `Set.Icc a b` in a conditionally complete lattice, for `f` monotone on the interval and mapping it into itself. Also interval membership, endpoint-iterate bounds, and monotonicity in `f`.
`OrderHom.lfp` gives this through the complete-lattice instance on the subtype, but wants a `Fact (a ≤ b)` and returns subtype elements. These take `MonotoneOn` and `MapsTo` directly and stay in `α`. Bridge lemmas between the two are a follow-up.
Used on intervals of ℝ in Overload, a sorry-free Lean library on retry and overload dynamics: https://github.com/matt-w-horn/overload/tree/main/Overload
Claude Fable wrote the Lean from a spec I gave it. I reviewed and tested it myself, including adversarial tests and the suites in the library above, and did the same for its dependencies.
Assisted-by: Claude Fable 5 |
t-order
new-contributor
LLM-generated
|
168/0 |
Mathlib.lean,Mathlib/Order/FixedPointsIcc.lean |
2 |
7 |
['github-actions', 'matt-w-horn', 'wwylele'] |
nobody |
29-22612 29 days ago |
30-32198 30 days ago |
30-32078 30 days |
| 42446 |
ipezygj author:ipezygj |
feat(Algebra/Order/Ring/Pow): bernoulli's inequality for a subtracted term |
Adds `one_sub_mul_le_pow`, the mirror of `one_add_mul_le_pow`:
```lean
lemma one_sub_mul_le_pow (H : a ≤ 2) (n : ℕ) : 1 - n * a ≤ (1 - a) ^ n
```
`Mathlib/Algebra/Order/Ring/Pow.lean` already carries Bernoulli in the `1 + a` form
and one reformulation of it (`one_add_mul_sub_le_pow`); this is the `1 - a` form,
which is the shape that comes up when bounding a product of complements — for
example showing that `1 - (1 - p) ^ n ≤ n * p`, the comparison between the Šidák and
Bonferroni corrections in statistics, which follows immediately by `linarith`.
The hypothesis `a ≤ 2` is exactly what `one_add_mul_le_pow`'s `-2 ≤ -a` becomes, and
it is load-bearing rather than decorative: the inequality fails for `a > 2` (checked
numerically over a grid before writing the proof).
Proof is two lines and reduces directly to the existing lemma.
This is my first contribution to mathlib, so please do point out anything that does
not match the library's conventions.
---
[Blueprint] not applicable.
|
t-algebra
new-contributor
label:t-algebra$ |
6/0 |
Mathlib/Algebra/Order/Ring/Pow.lean |
1 |
3 |
['github-actions'] |
nobody |
28-58082 28 days ago |
28-61082 28 days ago |
28-60962 28 days |
| 40963 |
Formalistic03 author:Formalistic03 |
feat(Combinatorics/SimpleGraph/Paths): add lemma about the first dart if dropLast is a path |
If `dropLast` of a walk is a path, a dart of the walk sharing its first vertex with the walk also shares its second vertex.
I thought this was a natural more general form of `IsPath.eq_snd_of_mem_edges`, useful for cycles for example.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
15/0 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean |
2 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
27-56210 27 days ago |
27-56828 27 days ago |
69-76403 69 days |
| 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$ |
50/0 |
Mathlib/Algebra/BigOperators/Group/Finset/Powerset.lean |
1 |
3 |
['bocowgill', 'github-actions'] |
nobody |
26-75144 26 days ago |
26-75144 26 days ago |
26-75024 26 days |
| 42315 |
sfingali author:sfingali |
feat(Topology): the adic spectrum Spa(A, A+) as a topological space |
### Summary
Defines the adic spectrum `Spa(A, A⁺)` as a set and topological space for a
topological ring `A` and a subring `A⁺` (Wedhorn, *Adic Spaces*,
arXiv:1910.05934, Def. 7.23 and Def. 7.29, pp. 62–63).
* `SpaPoint A A⁺` — a point of the adic spectrum: a continuous valuation
`v : A → Γ₀` with `v(f) ≤ 1` for all `f ∈ A⁺`.
* `SpaPoint.rationalSubset s T` — the rational subset `R(T/s)`.
* `SpaPoint.spaTopologicalSpace` — the topology generated by the rational
subsets with `T · A` open in `A`; `isOpen_rationalSubset` shows every such
rational subset is open.
* `SpaPoint.mem_rationalSubset_one` — Wedhorn, Rem. 7.30(4): `R(f/1)` is the
set `{x | |f(x)| ≤ 1}`.
Third step of an adic/perfectoid pipeline (Huber rings #42312 → continuous
valuations #42314 → Spa → Huber pairs → perfectoid → tilting). This PR works
with the element-level notion (a bundled continuous valuation with a fixed
value group); Wedhorn defines `Spa(A, A⁺)` as a subspace of the valuation
spectrum `Spv(A)` — the comparison is added once the spectrum PR lands.
### References
* T. Wedhorn, *Adic Spaces*, arXiv:1910.05934, Def. 7.23, Def. 7.29,
Rem. 7.30 (pp. 62–63).
|
new-contributor |
411/0 |
Mathlib.lean,Mathlib/RingTheory/Valuation/ContinuousValuation.lean,Mathlib/Topology/Algebra/Nonarchimedean/Spa.lean |
3 |
3 |
['github-actions', 'tb65536'] |
nobody |
24-53814 24 days ago |
30-61712 30 days ago |
30-65586 30 days |
| 42314 |
sfingali author:sfingali |
feat(RingTheory): continuous valuations |
### Summary
Defines continuous valuations on topological rings: a valuation `v : A → Γ₀`
whose underlying function is continuous for the order topology on `Γ₀`
(Wedhorn, *Adic Spaces*, arXiv:1910.05934, Def. 7.7 and Rem. 7.8(1), p. 58).
* `ContinuousValuationClass` — the class of continuous valuations: a
`ValuationClass` whose functions are continuous.
* `ContinuousValuation` — a bundled continuous valuation.
* `ContinuousValuation.isOpen_lt` — the primary definition of Wedhorn,
Def. 7.7: `{a | v a < γ}` is open for every `γ`.
This is the second step of an adic/perfectoid pipeline (Huber rings → Huber
pairs → continuous valuations → Spa → perfectoid → tilting); #42312 defines
Huber rings. The subspace `Cont(A) ⊆ Spv(A)` of continuous valuations
(Wedhorn, p. 58) will build on `ValuationSpectrum` once #38009 lands — this
PR provides the element-level notion, which is independent of the spectrum
topology.
### References
* T. Wedhorn, *Adic Spaces*, arXiv:1910.05934, Def. 7.7, Rem. 7.8 (p. 58).
|
t-ring-theory
new-contributor
|
99/0 |
Mathlib.lean,Mathlib/RingTheory/Valuation/ContinuousValuation.lean |
2 |
7 |
['github-actions', 'sfingali', 'wwylele'] |
nobody |
24-47106 24 days ago |
32-37927 32 days ago |
32-38353 32 days |
| 40741 |
AntoineduFresne author:AntoineduFresne |
feat(order): dilworth's and mirsky's theorems for finite orders |
I add Dilworth's theorem and its order dual, Mirsky's theorem, for finite subsets of a partial order, together with the order-theoretic lemmas they rest on.
A prior external formalization by Vlad Tsyrklevich is linked from `1000.yaml`; this is an independent `Finset`-based development using Galvin's proof, and I agreed the `1000.yaml` update with him.
I split the min-max content, as for Hall's marriage theorem, into a weak-duality inequality and a strong-duality existence of a matching pair, so I never define an extremal quantity over families of sets (no `Finset.min'` / `Finset.max'`):
- `dilworth` / `mirsky` — an antichain and a chain cover (resp. a chain and an antichain cover) of equal size;
- `antichain_le_chain_cover` / `chain_le_antichain_cover` — the weak-duality inequalities, for an arbitrary relation;
- `dilworth_partition` / `mirsky_partition` — the same with a pairwise-disjoint partition.
For Dilworth I use Galvin's induction (gluing step `chainCover_glue`); I avoid the König /
bipartite-matching route since König isn't in Mathlib yet (at least last time I checked). I prove Mirsky directly (peeling off minimal elements) rather than via `OrderDual`, since the direct induction seems simpler to me and the two proofs already share their foundations (the closure lemmas and the injective weak dualities).
Internally I work with an injection `f : α → Finset α` on the antichain rather than with the
`Finset (Finset α)` cover directly, so distinctness of the chains comes from the antichain property instead of a separate bookkeeping.
## Questions I'd like input on
1. Explicit min-max? I give weak duality plus a matching pair, from which "largest antichain = smallest chain cover" follows; I do not state that equality as a single theorem (doing so would, I think, mean defining the extremal quantities I wanted to avoid). Would you also like an explicit min-max statement?
2. Two layers of weak duality. I expose it twice: an injective form (`IsAntichain.exists_injOn_mem_chains`, over an arbitrary relation and an arbitrary index type, no finiteness) and a `Finset` cardinality form (`antichain_le_chain_cover`), the latter a one-line specialization of the former. I'm not sure whether exposing both is right, or whether one of them should be canonical. And is there appetite to push the general core to an `ℕ∞` / infinite version, or is the finite form the right scope here?
3. `[DecidableEq α]` on the main theorems. It comes only from writing the cover as
`s = 𝒞.biUnion id` (`Finset.biUnion` needs it); a membership-form coverage condition such as `∀ x, x ∈ s ↔ ∃ C ∈ 𝒞, x ∈ C` would drop the assumption, though it seems to me a bit less readable. Which do you prefer? (I think the injective-form weak dualities assume neither order, finiteness, nor `DecidableEq`.)
4. Naming. I use `C` / `A` for a chain / antichain and `𝒞` / `𝒜` for a chain / antichain cover (for hopefully obvious reason). Happy to change these if you would prefer something else.
## Open questions
- File placement (`Mathlib/Order/Dilworth.lean`?), and whether the general lemmas (the injective transversal and the weak dualities) should live in `Mathlib/Order/Antichain.lean` rather than in a new file.
The maximal-antichain closure lemma that was originally here has been split out into #42590.
Zulip: https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Antoine.20du.20Fresne.20von.20Hohenesche/with/604112426
AI use: I worked out all proofs on paper first and most of the design structure of the file. I then used Claude Code (Claude Opus) to transcribe my paper proofs into Lean, weaken hypotheses, reduce redundancy, and fix comment typos.
|
t-order
new-contributor
LLM-generated
|
568/3 |
Mathlib.lean,Mathlib/Order/Dilworth.lean,docs/1000.yaml |
3 |
18 |
['AntoineduFresne', 'SnirBroshi', 'github-actions', 'tdwag123'] |
nobody |
24-2059 24 days ago |
24-2691 24 days ago |
76-11036 76 days |
| 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`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
174/0 |
Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/Basis.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Standard.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
4 |
12 |
['github-actions', 'thefundamentaltheor3m', 'wwylele'] |
nobody |
23-9898 23 days ago |
23-13056 23 days ago |
51-72512 51 days |
| 42615 |
williamjblair author:williamjblair |
feat(Data/Nat/Prime/Basic): a nonzero natural has a prime not dividing it |
Any prime factor of `n + 1` works, so the proof needs nothing beyond `minFac`.
---
[](https://gitpod.io/from-referrer/) |
t-data
new-contributor
LLM-generated
|
8/0 |
Mathlib/Data/Nat/Prime/Basic.lean |
1 |
3 |
['github-actions', 'williamjblair'] |
nobody |
22-60716 22 days ago |
22-63092 22 days ago |
22-62972 22 days |
| 42614 |
williamjblair author:williamjblair |
chore(Algebra/Group/Action/Pointwise/Set): generalize smul_mem_smul_set_iff to IsLeftCancelSMul |
The lemma only needs `a • ·` to be injective, which is what `IsLeftCancelSMul` says. Moving it into that section covers the previous `[Group α] [MulAction α β]` case through the existing instance, and also covers `[Mul α] [IsLeftCancelMul α]` acting on itself.
---
[](https://gitpod.io/from-referrer/) |
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
5/4 |
Mathlib/Algebra/Group/Action/Pointwise/Set/Basic.lean |
1 |
3 |
['github-actions', 'williamjblair'] |
nobody |
22-60498 22 days ago |
22-63317 22 days ago |
22-63197 22 days |
| 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 |
2 |
['github-actions'] |
nobody |
22-26609 22 days ago |
22-27204 22 days ago |
22-27084 22 days |
| 42265 |
cameronfreer author:cameronfreer |
chore(RingTheory/PowerSeries): simplify coeff_inv_aux |
This replaces the hand-written `Finset.sum_nbij'` in `coeff_inv_aux` with `simp_rw` + `simp`, via `Finsupp.antidiagonal_single`, the same rewrite that `PowerSeries.coeff_mul` already uses.
:robot: Golfing target found by GPT Pro 5.6 Sol, initial version of code written by Opus 5 high, refined by GPT 5.6 Sol xhigh, then again by Opus 5 high following @felixpernegger's review suggestion. |
t-ring-theory
new-contributor
LLM-generated
|
2/19 |
Mathlib/RingTheory/PowerSeries/Inverse.lean |
1 |
8 |
['cameronfreer', 'felixpernegger', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
21-60413 21 days ago |
21-61113 21 days ago |
34-2003 34 days |
| 42505 |
attilavjda author:attilavjda |
chore(Algebra/Tropical/Basic): deduplicate five pairs of lemmas |
`On a LinearOrder`, `⊓`/`⊔` are `min`/`max`, so `trop_inf`, `untrop_sup`, `inf_eq_add`, and `trop_sup_def` are the same statements as `trop_min`, `untrop_max`, `min_eq_add`, and `trop_max_def`, respectively (three duplicated `simp` lemmas). Likewise, `injective_trop`/`injective_untrop` duplicate `trop_injective`/`untrop_injective`. The removed lemmas become deprecated aliases.
[I used Aristotle AI](https://github.com/attilavjda/formal-contributions/blob/main/tropical_dedup_lemmas/RequestProject/TropicalDedup.lean) it helped find the duplicates, and generated the solutions, verified the equivalences, and helped in understanding the proofs, and meaning of the refactor.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
LLM-generated
label:t-algebra$ |
8/17 |
Mathlib/Algebra/Tropical/Basic.lean |
1 |
2 |
['github-actions', 'wwylele'] |
nobody |
20-85756 20 days ago |
26-51431 26 days ago |
26-55183 26 days |
| 40472 |
karlesmarin author:karlesmarin |
feat(Combinatorics/SimpleGraph): oriented incidence matrix and the La… |
# feat(Combinatorics/SimpleGraph): oriented incidence matrix and the Laplacian factorization
## Summary
Adds the **oriented incidence matrix** of a simple graph and the standard **Gram factorization
of the graph Laplacian**:
- **`SimpleGraph.orientedIncMatrix R : Matrix α (Sym2 α) R`** — in the column of an edge
`e = s(u, w)` with `u < w`: `+1` at row `w` (the larger endpoint), `-1` at row `u`, `0`
elsewhere; columns of non-edges are zero. Orientation induced by a `LinearOrder` on the
vertex type.
- **`SimpleGraph.orientedIncMatrix_mul_transpose`** — `N * Nᵀ = G.lapMatrix R` (= `D − A`).
- Supporting API mirroring `incMatrix`: `orientedIncMatrix_apply`,
`orientedIncMatrix_of_notMem_incidenceSet`, `orientedIncMatrix_mul_self`
(the square of an entry is the unoriented `incMatrix` entry), and the two sign lemmas
`orientedIncMatrix_apply_mul_apply_of_adj` (product of the two endpoint entries = `-1`),
`orientedIncMatrix_apply_add_apply_of_adj` (their sum = `0`), plus
`orientedIncMatrix_apply_mul_apply_of_ne` (vanishing away from the common edge).
## Why
Mathlib has the unoriented `G.incMatrix`, whose Gram matrix is the **signless** Laplacian
`D + A` (`incMatrix_mul_transpose_diag` ff.), and it has `G.lapMatrix = D − A` with its kernel
theory — but no object connecting the two. The oriented incidence matrix is that object, and
`N Nᵀ = D − A` is the factorization behind: positive semidefiniteness of the Laplacian as a
Gram fact, Kirchhoff/matrix-tree determinant arguments (via Cauchy–Binet on the reduced
factorization), and total unimodularity of incidence matrices.
## Design notes
- The fixed smaller→larger orientation is harmless: any orientation gives the same Gram matrix
(each edge contributes `(±1)²` on the diagonal and `(+1)(−1)` off it). This is stated in the
module docstring; no orientation-genericity machinery is introduced.
- The headline proof is entrywise: the diagonal reduces to `sum_incMatrix_apply` (= degree)
through `orientedIncMatrix_mul_self`; an off-diagonal `(u, w)` entry is supported on the
single column `s(u, w)`, handled by `Finset.sum_eq_single` and the sign lemmas.
- `[Ring R]` for the API section (signs need negation); the definition itself only needs
`[Zero R] [One R] [Neg R]`.
## Files / placement
- `Mathlib/Combinatorics/SimpleGraph/OrientedIncMatrix.lean` (new)
- `Mathlib.lean` (+1 import line)
## Verification
- `lake env lean` on the file: clean, zero warnings.
- `#print axioms SimpleGraph.orientedIncMatrix_mul_transpose` → 3 standard axioms.
- The factorization and the downstream matrix-tree chain were validated numerically in exact
arithmetic (SageMath) before formalization.
Downstream context: DOI [10.5281/zenodo.20629746](https://doi.org/10.5281/zenodo.20629746).
|
new-contributor
LLM-generated
|
157/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/OrientedIncMatrix.lean |
2 |
1 |
['github-actions'] |
nobody |
20-75853 20 days ago |
83-62760 83 days ago |
83-62733 83 days |
| 42380 |
matt-w-horn author:matt-w-horn |
feat(Algebra/Ring): add sum_range_id_mul_geometric_add |
Over a `CommRing`: `∑ k < m, k * (x ^ k * (1 - x)) + m * x ^ m = ∑ k ∈ Icc 1 m, x ^ k`. Summation by parts for the geometric sum; it computes the mean of a censored geometric distribution, which #42381 adds.
Used in Overload, a library on retry and overload dynamics, where it's stated over `ℝ` with a side condition that turns out to be unnecessary: https://github.com/matt-w-horn/overload/blob/4ecbebf/Overload/Retry/Amplification.lean
Claude Fable wrote the Lean from a spec I gave it. I reviewed and tested it myself, including adversarial tests and the suites in the library above, and did the same for its dependencies.
Assisted-by: Claude Fable 5 |
t-algebra
new-contributor
LLM-generated
easy
label:t-algebra$ |
14/0 |
Mathlib/Algebra/Ring/GeomSum.lean |
1 |
4 |
['github-actions', 'matt-w-horn'] |
nobody |
20-42061 20 days ago |
20-43224 20 days ago |
20-43104 20 days |
| 41847 |
stalex444 author:stalex444 |
feat(Analysis/Matrix): tightness of the Tsirelson bound |
This file constructs the explicit real-Pauli CHSH tuple in 4×4 real matrices — X⊗1, Z⊗1, and (√2)⁻¹·(1⊗(X±Z)) — and proves it's a CHSH tuple. It also shows its CHSH operator sends the Bell vector ![1,0,0,1] to √2^3 times itself.
The PR also goes further than the request: √2^3 is the least constant bounding that operator in the Loewner order (via the scoped MatrixOrder instances + the existing tsirelson_inequality), so the constant in tsirelson_inequality cannot be improved.
Small honest caveat worth stating: the "over every algebra" corollary quantifies over Type (universe-0), since hypotheses can't quantify universes; the concrete least-constant statement is universe-free.
This Lean code was drafted with the help of AI (Claude Code). I reviewed the file; built it locally against current Mathlib master and confirmed that it compiled.
---
Questions for reviewers:
- happy to make B₀' and B₁' private if preferred
- happy to provide a ℂ-matrix version if that's more 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/)
|
new-contributor
LLM-generated
|
229/6 |
Mathlib.lean,Mathlib/Algebra/Star/CHSH.lean,Mathlib/Analysis/Matrix/CHSH.lean |
3 |
8 |
['github-actions', 'stalex444', 'vihdzp'] |
nobody |
20-40213 20 days ago |
47-33826 47 days ago |
47-33706 47 days |
| 42313 |
deancureton author:deancureton |
feat(RingTheory): embDomain composition and range, Laurent series expansion |
Add to the Hahn series API:
- `embDomain_embDomain` (composition of domain embeddings)
- `mem_range_embDomain_iff` (range of `embDomain` is characterized by support containment)
Add to the Laurent series API:
- the expansion ring endomorphism `LaurentSeries.expand` with its monomial and `orderTop` lemmas
- follows the pattern of `Polynomial.expand`, `MvPolynomial.expand`, `PowerSeries.expand`
- its opposite `LaurentSeries.contract`, with the decomposition of a Laurent series by exponent residues mod `n` (`sum_single_mul_expand_contract`) and its uniqueness (`contract_eq_of_sum_eq`)
- `exists_ofPowerSeries_eq_of_orderTop_nonneg`
This is the first of a series of PRs formalizing Puiseux series and Puiseux's theorem (entry 41 of Freek Wiedijk's 100 theorems list). |
t-ring-theory
new-contributor
LLM-generated
|
116/0 |
Mathlib/RingTheory/HahnSeries/Basic.lean,Mathlib/RingTheory/LaurentSeries.lean |
2 |
16 |
['deancureton', 'github-actions', 'wwylele'] |
nobody |
20-35102 20 days ago |
20-36442 20 days ago |
32-40057 32 days |
| 41517 |
sadasant author:sadasant |
feat(MeasureTheory): define Hellinger affinity |
Define the Hellinger affinity (Bhattacharyya coefficient) of two measures as an `ENNReal`-valued lintegral against the canonical dominating measure `μ + ν`, making the definition total with no absolute-continuity or integrability side conditions. Provide symmetry, invariance under the choice of sigma-finite dominating measure, the self-affinity of a probability measure, the `rnDeriv` and `withDensity` computation rules, the bound `≤ 1` for probability measures (via Hölder with `p = q = 2`), and the characterization that the affinity vanishes iff the measures are mutually singular. Groundwork for a formalization of Kakutani's dichotomy (1948) for infinite products of probability measures.
---
**Design notes.**
On the value type ("why not `ℝ` / `ℝ≥0` / `EReal`"): the `ℝ≥0∞`-valued lintegral against `μ + ν` makes the affinity total, which is what makes the singular direction of Kakutani's dichotomy (planned follow-up PRs) case-split-free — `hellingerAffinity_eq_zero_iff` already characterizes mutual singularity with no absolute-continuity hypothesis. `InformationTheory.klDiv` sets the precedent of an `ℝ≥0∞`-valued, standalone divergence-like quantity. The invariance lemma `hellingerAffinity_eq_lintegral_rnDeriv_mul_rnDeriv` recovers the textbook `∫ √(dμ/dρ · dν/dρ) dρ` for any σ-finite dominating `ρ`.
**Relation to f-divergences** (CC @RemyDegenne for coordination with the planned `fDiv` upstreaming from TestingLowerBounds): the affinity is the f-integral at `f = √·`, equivalently `1 −` the Hellinger-½ divergence, with `H²(μ,ν)/2 = 1 − affinity`. Rather than block on an unlanded framework, this PR keeps the affinity standalone (the `klDiv` pattern); when `fDiv` lands, a single bridging lemma of the shape `fDiv hellingerFun μ ν = 1 - hellingerAffinity μ ν` reconciles them, and I am happy to contribute it. Also happy to move the file to `Mathlib/InformationTheory/` if reviewers prefer that home over `Mathlib/MeasureTheory/Measure/`.
**Roadmap.** This is PR 1 of a planned sequence building toward Kakutani's dichotomy for `Measure.infinitePi` over an arbitrary index type (stronger than the textbook countable statement): the `lintegral` product Fubini and `Measure.pi_withDensity`, the infinite-product/summability bridges, then the singular and absolutely-continuous directions and the packaged dichotomy. Natural follow-up API for this file, available on request: `hellingerAffinity_pos_iff`, monotonicity in each argument, and the relation to the squared Hellinger distance once a distance exists.
**Attribution and AI disclosure.** This material was developed in the public [riemann-venue](https://github.com/idolum-ai/riemann-venue) repository by Daniel Rodriguez in collaboration with Claude Fable 5 (Anthropic), as part of a machine-checked formalization of Kakutani's dichotomy (1948) for infinite products of probability measures. The definitions, proofs, and the drafting of this description were done with Claude Fable 5 via Claude Code, working from a design and statement plan reviewed by the human author; all proofs are checked by Lean (`#print axioms` on the main results reports only `propext`, `Classical.choice`, `Quot.sound`), and the human author reviewed the final form, takes responsibility for it, and will answer all review comments personally. I am applying the `LLM-generated` label per the contribution guidelines. |
t-measure-probability
LLM-generated
new-contributor
|
214/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/Hellinger.lean |
2 |
4 |
['github-actions', 'sadasant'] |
RemyDegenne assignee:RemyDegenne |
20-33232 20 days ago |
55-42685 55 days ago |
55-42565 55 days |
| 42719 |
justinhalford author:justinhalford |
feat(LinearAlgebra/BilinearForm): totally isotropic subspaces have dimension at most half |
Adds one lemma to `Mathlib/LinearAlgebra/BilinearForm/Orthogonal.lean`:
```lean
lemma two_mul_finrank_le_of_le_orthogonal (hB : B.Nondegenerate) {W : Submodule K V}
(hW : W ≤ B.orthogonal W) : 2 * finrank K W ≤ finrank K V
```
A subspace contained in its own orthogonal complement — a *totally isotropic* subspace — has dimension at most half the dimension of the ambient space, when `B` is nondegenerate.
### Why
This is the standard dimension bound underlying the Witt decomposition, and it is the missing step in a number of applications: the Eventown theorem in extremal combinatorics, bounds on self-orthogonal linear codes, and dimension bounds for isotropic subspaces of quadratic forms. Searching for `totally isotropic` / `IsotropicSubmodule` / `isTotallyIsotropic` in Mathlib returns nothing, so as far as I can tell the bound is not currently available in any form.
The hypothesis is deliberately phrased as `W ≤ B.orthogonal W` rather than introducing a new `IsTotallyIsotropic` predicate, so that it composes directly with the existing `orthogonal` API and needs no new definitions.
### Proof
Three existing lemmas and arithmetic: `Submodule.finrank_mono` on the hypothesis, `finrank_orthogonal` (immediately above it in the same file), and `Submodule.finrank_le`. It sits directly after `finrank_orthogonal`, whose statement it consumes.
### Verification
Compiles against `master` with no errors or warnings. `#print axioms` reports only `[propext, Classical.choice, Quot.sound]`. No new imports, no new definitions — `+9 -0` in a single file.
### Disclosure
Written with AI assistance (Claude Opus 5) and checked against the Lean kernel; I have read the statement and proof through before submitting. Happy to rename or restate as maintainers prefer — in particular if there is an appetite for an `IsTotallyIsotropic` predicate, I am glad to add one and state this in those terms instead.
### Related
Companion to #42718 (the linear algebra method and Oddtown), which will use this bound for the Eventown theorem, but the two are independent and this one stands alone.
|
t-algebra
new-contributor
label:t-algebra$ |
9/0 |
Mathlib/LinearAlgebra/BilinearForm/Orthogonal.lean |
1 |
2 |
['github-actions'] |
nobody |
19-85509 19 days ago |
19-86117 19 days ago |
19-85997 19 days |
| 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 |
2 |
['github-actions'] |
nobody |
19-83919 19 days ago |
19-85680 19 days ago |
19-85560 19 days |
| 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 |
19-82410 19 days ago |
20-494 20 days ago |
20-374 20 days |
| 42693 |
justin-palumbo author:justin-palumbo |
feat(Topology/MetricSpace): a Gδ subset of a Polish space is Polish |
Adds `IsGδ.polishSpace`: a Gδ subset of a Polish space is Polish.
The proof follows the outline in Anush Tserunyan's descriptive set theory notes, https://www.math.mcgill.ca/atserunyan/Teaching_notes/dst_lectures.pdf where it is attributed to A. Bernshteyn. The "usual" approach (as in Kechris's Classical Descriptive Set Theory) constructs a complete compatible metric (the "Alexandrov metric"). The approach taken here is snappier to formalize - the idea is to give a closed embeddding from the G\delta set into another Polish space, and appeal to the fact closed subsets of Polish spaces are Polish. [Note the Alexandrov metric is recoverable from the embedding via the induced complete metrics on the product topology.]
This PR is a pure addition: nothing is removed and no existing signature changes. `TopologicalSpace.Opens.CompleteCopy` and `IsOpen.polishSpace` are untouched, so the open case is still proved independently rather than derived from this result.
---
Question: `IsOpen.polishSpace` could now be proven directly from`isGδ.polishSpace`, and `CompleteCopy` completely retired. That feels cleaner to me, given `CompleteCopy` has had no users since it was ported along with everything else in 2023: #3357. The main argument for keeping is that leveraging `CompleteCopy` is slightly more explicit in proving that open subsets are Polish. Happy to remove in a follow-up, in this PR, or not at all :)
LLM usage disclaimer: I wrote an original local version of this PR myself, and then used Claude Opus to double-check / simplify / help me pull out names of relevant theorems from mathlib. The primary non-trivial contribution from LLM was idea of leveraging isClosed_eq (ie proving closure of range by framing the range of the embedding as a countable intersection of pairs satisfying closed equations). I take full responsibility for the code here |
new-contributor
t-topology
|
117/2 |
Mathlib/Topology/MetricSpace/Polish.lean |
1 |
9 |
['felixpernegger', 'github-actions', 'justin-palumbo'] |
nobody |
19-67692 19 days ago |
20-58465 20 days ago |
20-58345 20 days |
| 42737 |
Jack1320 author:Jack1320 |
feat(Algebra/Order/Kleene): add Kleene algebra instances for MulOppos… |
Add IdemSemiring, IdemCommSemiring, and KleeneAlgebra instances for MulOpposite, AddOpposite, and ULift, partially addressing #7987.
In accordance to the AI disclosure guidelines - Claude was used as a learning aid, but all code is personally written and reasoned through.
The remaining instances (Subsemiring, Subring, Subalgebra) are deferred to a follow-up PR.
|
t-algebra
new-contributor
label:t-algebra$ |
100/2 |
Mathlib/Algebra/Order/Kleene.lean |
1 |
2 |
['github-actions'] |
nobody |
19-62891 19 days ago |
19-64910 19 days ago |
19-66138 19 days |
| 42343 |
brianrabern author:brianrabern |
feat(Combinatorics/SimpleGraph): extend a coloring to one more vertex |
Add `Colorable.of_induce_compl_singleton`: if deleting a vertex `v` leaves an `n`-colourable graph and `deg(v) < n`, then `G` itself is `n`-colourable.
This is a local colouring-extension / induction step (colour `G - v`, then assign `v` a free colour). It is useful for inductive arguments such as Brooks' theorem. The global greedy bound `χ ≤ Δ + 1` is developed separately in #38357.
AI assistance: LLM was used to smooth it out and put things in the expected style
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
LLM-generated
|
35/0 |
Mathlib/Combinatorics/SimpleGraph/Coloring/Vertex.lean |
1 |
11 |
['Parcly-Taxel', 'SnirBroshi', 'bocowgill', 'brianrabern', 'github-actions'] |
nobody |
19-44372 19 days ago |
28-65805 28 days ago |
31-20805 31 days |
| 40368 |
Sanghyeok0 author:Sanghyeok0 |
feat: add confluence predicates for relations |
This PR adds a minimal relation-level API for confluence-style properties:
* `Relation.Diamond`
* `Relation.Confluent`
* `Relation.ChurchRosser`
It also adds the basic API connecting these predicates:
* `Relation.ReflTransGen.to_eqvGen`
* `Relation.Join.to_eqvGen`
* `Relation.ChurchRosser.confluent`
* `Relation.Confluent.churchRosser`
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*.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
79/5 |
Mathlib/Logic/Relation.lean |
1 |
8 |
['Sanghyeok0', 'chenson2018', 'github-actions', 'mathlib-merge-conflicts'] |
fpvandoorn assignee:fpvandoorn |
19-33243 19 days ago |
44-77527 44 days ago |
68-2798 68 days |
| 41258 |
ungatz author:ungatz |
feat(Analysis/Fourier/FiniteAbelian): add the Donoho-Stark support uncertainty principle |
This adds the Donoho–Stark support uncertainty inequality for the unitary Fourier transform on a finite abelian group, plus the supporting Fourier-inversion machinery indexed by the Pontryagin dual `AddChar G ℂ`.
The headline:
> **Theorem `AddChar.donoho_stark`.** For nonzero `f : G → ℂ`,
> `Fintype.card G ≤ (support f).ncard * (support (fourierTransform f)).ncard`,
> where `fourierTransform f ψ = |G|^(-1/2) * ∑ g, conj (ψ g) * f g` ranges over `ψ : AddChar G ℂ`.
The proof is the elementary (L¹, L∞) duality argument that any harmonic-analysis textbook gives for the classical `ZMod N` case; no Parseval or Cauchy–Schwarz is needed. The finite-abelian generalisation is folklore (stated in Tao–Vu *Additive Combinatorics* and Terras *Fourier Analysis on Finite Groups*); I did not find it formalised in Mathlib or any other major library.
### Why this belongs in Mathlib
Mathlib already has the supporting infrastructure — character theory of finite abelian groups (`Mathlib.Algebra.Group.AddChar`), character orthogonality and Pontryagin duality (`Mathlib.Analysis.Fourier.FiniteAbelian.{Orthogonality, PontryaginDuality}`). The Donoho–Stark inequality is the canonical application of all three, and its absence is a real gap: I needed it for a downstream operator-uncertainty result (a diagonal-operator `rank * Pauli-support` bound on the finite Heisenberg group reduces to it) and ended up proving it from scratch. Beyond that use, it is a standard tool in compressed sensing on finite abelian groups, additive combinatorics, and discrete signal recovery (the 1989 paper has ~3500 citations).
### What's in this PR
A single new file, `Mathlib/Analysis/Fourier/FiniteAbelian/DonohoStark.lean`:
- `AddChar.fourierTransform` — the unitary (symmetric) Fourier transform indexed by `AddChar G ℂ`;
- `AddChar.fourier_inversion` — the inversion formula;
- `AddChar.norm_fourierTransform_le`, `AddChar.norm_le_sum_norm_fourierTransform` — the two `L∞ ≤ |G|^(-1/2) · L¹` triangle bounds;
- `AddChar.donoho_stark` — the support uncertainty inequality.
Design choices I expect questions on, and my defaults:
- **`ℂ` rather than `RCLike`**: matches the cited literature and the cleanest home of `AddChar.norm_apply`; happy to generalise if preferred.
- **`Set.ncard` for support sizes**: avoids needing `DecidableEq ℂ` in the statement.
- **A new sibling file** of `Orthogonality.lean` / `PontryaginDuality.lean` rather than a subsection: orthogonality is the tool, Donoho–Stark is the application; can inline if preferred.
Deliberately *not* included: the diagonal-operator `rank * Pauli-support ≥ 2^n` corollary from my workspace — the Pauli-word machinery has no natural home in `Analysis/Fourier` yet; happy to factor it into a follow-up if there is interest.
### AI usage disclosure
Per the [AI contribution policy](https://leanprover-community.github.io/contribute/index.html): the original Lean proof was generated by **Aristotle** (Harmonic AI's automated proof system) from a dispatch containing the statement and the (L¹, L∞) proof strategy, as part of my PhD research workspace. I audited the delivery line by line against Donoho–Stark 1989 (the dispatch also produced a kernel-checked counterexample to a tempting wrong variant — replacing rank by the count of distinct eigenvalues — which the 2×2 identity falsifies). The file here is my adaptation to Mathlib conventions and to current master (module system, `Set.ncard` statement, robust cast handling in the inversion proof), with final tactic-level repairs done with the assistance of Claude (Anthropic). I understand and can defend every line without AI assistance. Please add the `LLM-generated` label (I cannot set labels myself).
### Test plan
- [x] `lake build Mathlib.Analysis.Fourier.FiniteAbelian.DonohoStark` clean (0 errors, 0 warnings).
- [x] `#print axioms` on all five declarations: `[propext, Classical.choice, Quot.sound]`.
- [x] `lake exe lint-style` clean; all lines ≤ 100 chars.
- [x] `Mathlib.lean` updated in alphabetical position.
- [x] Imports minimal (`PontryaginDuality` + `RCLike.Basic` only).
### Reference
Donoho, D. L. and Stark, P. B. (1989). *Uncertainty principles and signal recovery.* SIAM Journal on Applied Mathematics, **49**(3): 906–931. https://doi.org/10.1137/0149053
---
|
t-analysis
new-contributor
LLM-generated
|
283/0 |
Mathlib.lean,Mathlib/Analysis/Fourier/FiniteAbelian/DonohoStark.lean |
2 |
4 |
['YaelDillies', 'copilot-pull-request-reviewer', 'felixpernegger', 'github-actions'] |
urkud assignee:urkud |
19-33243 19 days ago |
62-38923 62 days ago |
62-38803 62 days |
| 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'] |
nobody |
18-65974 18 days ago |
51-51091 51 days ago |
53-19273 53 days |
| 42786 |
rshlyakh author:rshlyakh |
feat(Data/Finsupp/NatCard): count finsupps of bounded degree |
Adds the formula that the number of finitely-supported functions `α →₀ ℕ` with degree less than or equal to `n` is equal to `Nat.choose (Nat.card α + n) n`. The proof is by establishing an equivalence `Sym (Option α) n ≃ {f : α →₀ ℕ // f.degree ≤ n}` and using the stars-and-bars formula `Sym.equivNatSum.`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
new-contributor
|
56/0 |
Mathlib.lean,Mathlib/Data/Finsupp/NatCard.lean |
2 |
2 |
['github-actions'] |
nobody |
18-28464 18 days ago |
18-29106 18 days ago |
18-31620 18 days |
| 42788 |
andreylukin author:andreylukin |
feat(Combinatorics/Sperner): define facet incidence data |
## Summary
Adds a small finite facet-ridge incidence interface intended as a prerequisite for the general Sperner lemma (#25231).
- defines finite facets, ridges, and their incidence relation;
- assumes every ridge has one or two cofacets;
- defines boundary and interior ridges and proves that they are disjoint and partition the ridges.
This deliberately does not claim the geometric Sperner theorem. A future development must connect finite triangulations of the standard simplex to this incidence interface and establish the required coface-count property.
## Validation
- `lake build Mathlib.Combinatorics.Sperner.Basic`
- `lake env lean -DwarningAsError=false Mathlib.lean`
Towards #25231
|
t-combinatorics
new-contributor
|
117/0 |
Mathlib.lean,Mathlib/Combinatorics/Sperner/Basic.lean |
2 |
2 |
['github-actions'] |
nobody |
17-63876 17 days ago |
17-66571 17 days ago |
17-66571 17 days |
| 42758 |
cameronfreer author:cameronfreer |
feat(ModelTheory): add syntax and semantics for infinitary logic |
Add basic syntax and semantics for infinitary model theory of L∞ω (and Lω₁ω).
The new `BoundedFormulaInf L ι α n` uses index type `ι` for all of a formula's infinitary conjunctions and disjunctions, and the definitional
```lean
abbrev BoundedFormulaω (α : Type u') (n : ℕ) := L.BoundedFormulaInf ℕ α n
```
lands in exactly the universe of 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).
This PR contains `iSup`/`iInf` constructors, derived connectives together with `alls`/`exs`, `Realize` with `simp` lemmas for every 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 |
17-48514 17 days ago |
19-31415 19 days ago |
19-31295 19 days |
| 40495 |
gw90 author:gw90 |
feat: weighted graphs with killing term |
Adding basic definitions and API for weighted graphs and weighted graphs with killing term.
---
My goal is to develop the basic theory from the beginning of [this textbook](https://www.math.uni-potsdam.de/fileadmin/user_upload/Prof-GraphTh/Keller/KellerLenzWojciechowski_GraphsAndDiscreteDirichletSpaces_wu_version.pdf). I also have some definitions and lemmas regarding Dirichlet forms and Laplacians to PR later, but I tried to pare down this first PR as much as possible. It currently has only 4 main definitions and sufficient API to demonstrate their correctness.
Note that I did not use [SimpleGraph.edgeLabeling](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=SimpleGraph.EdgeLabeling#doc) for the edgeWeight function because it is important that vertices that are not adjacent have an edge weight of zero. That is, the edgeWeight must be defined for all pairs of vertices and respect the underlying adjacency relation on the graph.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
368/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Weighted/Basic.lean,docs/references.bib |
3 |
2 |
['github-actions'] |
b-mehta assignee:b-mehta |
17-33243 17 days ago |
82-30906 82 days ago |
82-30786 82 days |
| 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'] |
nobody |
16-67853 16 days ago |
16-80619 16 days ago |
16-80499 16 days |
| 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$ |
10/0 |
Mathlib/Algebra/MonoidAlgebra/Grading.lean |
1 |
4 |
['github-actions', 'wwylele'] |
nobody |
16-63252 16 days ago |
17-39120 17 days ago |
17-39611 17 days |
| 42783 |
barni120400 author:barni120400 |
feat(Algebra/MvPolynomial): partial derivatives commute |
Add `MvPolynomial.pderiv_comm`: partial derivatives of a multivariate polynomial commute.
🤖 Prepared with Claude Code
|
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
10/0 |
Mathlib/Algebra/MvPolynomial/PDeriv.lean |
1 |
2 |
['github-actions', 'wwylele'] |
nobody |
16-3327 16 days ago |
18-43003 18 days ago |
18-42934 18 days |
| 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 |
15-86272 15 days ago |
22-3582 22 days ago |
25-21654 25 days |
| 40582 |
dennj author:dennj |
feat(Analysis): the one-sided Laplace transform |
Introducing Laplace transform `ℒ(f)(s) = ∫ t in Ioi 0, exp (-s * t) • f t`
It is needed in physlib
I modelled the file following Mellin transform.
## Main definitions
* `LaplaceConvergent f s`: the Laplace integral is well-defined at `s`.
* `laplace f s`: the Laplace transform, a total function
* `HasLaplace f s m`: convergence together with the value `m`.
## Main results
* Linearity: `laplace_add`/`sub`/`const_smul`/`neg`/`zero`/`div_const`, at the `laplace`, `LaplaceConvergent`, and `HasLaplace` levels.
* `laplaceConvergent_iff_norm`, `norm_laplace_le_integral_norm`: reduction of convergence and norm bounds to the real exponential weight.
* `laplaceConvergent_of_isBigO_exp`: existence for functions of exponential order, on the appropriate right half-plane.
* `LaplaceConvergent.of_re_le`/`of_re_lt`: monotonicity of convergence in `s.re` (the half-plane structure).
* `laplace_cexp_smul`: the frequency-shift rule.
* `laplace_indicator_comp_sub`: the time-shift rule.
* `laplace_comp_mul_left`/`right`: behaviour under positive dilation.
* `hasLaplace_const`/`hasLaplace_one`/`hasLaplace_cexp`: basic transform values.
Human made PR |
t-measure-probability
new-contributor
|
653/0 |
Mathlib.lean,Mathlib/Analysis/LaplaceTransform.lean |
2 |
34 |
['AlyciaBHZ', 'EtienneC30', 'dennj', 'github-actions', 'mathlib-splicebot'] |
sgouezel assignee:sgouezel |
15-48347 15 days ago |
26-68326 26 days ago |
79-26853 79 days |
| 42881 |
forxhunter author:forxhunter |
feat(Analysis/SpecialFunctions/Gamma): Mittag-Leffler expansion of the Beta function |
For `0 < re u` and `0 < re v`, the Beta function admits the classical absolutely
convergent partial-fraction (Mittag-Leffler) expansion over its poles in the first
variable:
`Β(u, v) = ∑' n : ℕ, Ring.choose (n - v) n / (n + u)` (`Complex.hasSum_betaIntegral`),
where `Ring.choose (n - v) n = (1 - v)⁽ⁿ⁾ / n!` is the `n`-th binomial-series
coefficient of `x ↦ (1 - x) ^ (v - 1)`. The proof expands the Euler integral
`Complex.betaIntegral` by the binomial series
(`Complex.one_div_one_sub_cpow_hasFPowerSeriesOnBall_zero`) and integrates term by
term via `MeasureTheory.hasSum_integral_of_summable_integral_norm`.
Main new results, in `Mathlib/Analysis/SpecialFunctions/Gamma/BetaMittagLeffler.lean`:
* `Ring.choose_add_natCast_eq_prod_range`:
`Ring.choose (t + n) n = ∏ k < n, (t + k + 1) / (k + 1)` in a characteristic-zero
field (the rising-factorial form `(t + 1)⁽ⁿ⁾ / n!` with the factorial distributed
into the product).
* `Complex.norm_ringChoose_add_natCast_le`: the Stirling-free growth bound
`‖Ring.choose (t + n) n‖ ≤ Real.exp (normSq t) * (n + 1) ^ t.re` for `t.re ≤ 0`.
Mathlib has no complex Stirling formula and no `Γ`-ratio asymptotics, so the
textbook route via `Ring.choose (t + n) n ∼ n ^ t / Γ (t + 1)` is unavailable; the
proof instead applies `Real.log (1 + u) ≤ u` to each factor of the product above and
sums against `Real.log (n + 1) ≤ harmonic n` and the telescoping bound
`∑ k < n, 1 / (k + 1) ^ 2 ≤ 2 - 2 / (n + 1)`. This bound is what makes the pole
series absolutely convergent (`Complex.summable_norm_ringChoose_div`) for
`t.re < 0`, a restriction that is sharp: at `t = 0` the series is harmonic.
* `Complex.hasSum_ringChoose_mul_pow`: the binomial series
`(1 - x) ^ (-t - 1) = ∑' n, Ring.choose (t + n) n * x ^ n` on the open unit disc,
in `HasSum` form.
* `integral_Ioo_cpow` / `integral_Ioo_rpow`: `∫ x in Ioo 0 1, x ^ w = 1 / (w + 1)`,
`Ioo`-restricted versions of `integral_cpow` / `integral_rpow`.
Motivation: this arises from an ongoing Lean formalization of dispersion relations
and positivity bounds in effective field theory, where the Beta function (the
tree-level Veneziano amplitude at fixed momentum transfer) serves as the witness for
a dispersive spectral representation; the expansion above is exactly its pole/residue
form. The material here is the physics-free analytic core, stated purely in terms of
`Complex.betaIntegral` and `Ring.choose`.
**AI disclosure**: this PR was substantially generated with Claude Code (Anthropic) —
proof scripts, the Stirling-free bounding strategy, and the port to current master.
It is opened as a **draft** while the human author reviews the content; it will be
marked ready only after that review, per the policy that contributors must understand
and be able to defend AI-assisted contributions. The `LLM-generated` label applies
and should be added by a maintainer.
awaiting-author items (will be resolved before marking ready):
- [x] Author review of the full file per the AI-contribution policy: done.
- [x] The `Authors:` line is finalized as `Tianyu (forxhunter)`
- [ ] If reviewers prefer, `Ring.choose_add_natCast_eq_prod_range` can move to
`Mathlib/RingTheory/Binomial.lean` and `integral_Ioo_cpow` / `integral_Ioo_rpow`
to `Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean`; they are kept in the
new file for now to keep the PR single-file.
---
Possible follow-ups (not in this PR): positivity of `Ring.choose (t + n) n` for real
`t > -1` (and its sharpness at `t < -1`), and the residue identification of
`u ↦ Β(u, v)` at `u = -n` as a `Tendsto`/`meromorphicAt` statement.
|
new-contributor
t-analysis
|
425/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Gamma/BetaMittagLeffler.lean |
2 |
2 |
['github-actions'] |
nobody |
15-47537 15 days ago |
15-48131 15 days ago |
15-48201 15 days |
| 42365 |
hawkrobe author:hawkrobe |
feat(LinearAlgebra/TensorProduct): tensor product of graded modules is graded |
---
Split from #39849, also a first step toward the TODO in `LinearAlgebra/TensorProduct/Graded/Internal.lean` (the tensor product of graded algebras is graded.) I tried to model it after [AddMonoidAlgebra.gradeBy](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/MonoidAlgebra/Grading.html#AddMonoidAlgebra.gradeBy).
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
158/0 |
Mathlib/Data/DFinsupp/Defs.lean,Mathlib/LinearAlgebra/TensorProduct/Decomposition.lean,Mathlib/LinearAlgebra/TensorProduct/Map.lean |
3 |
2 |
['github-actions'] |
nobody |
15-43211 15 days ago |
15-52700 15 days ago |
30-46187 30 days |
| 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 |
7 |
['EzequielS2', 'github-actions', 'themathqueen', 'wwylele'] |
nobody |
15-30529 15 days ago |
15-32808 15 days ago |
56-49651 56 days |
| 42775 |
hawkrobe author:hawkrobe |
feat(RingTheory/HopfAlgebra): construct Hopf algebras from generators |
Upgrade a bialgebra to a Hopf algebra from antipode data on an algebra-generating set (`HopfAlgebra.ofGenerators`), plus the primitive-element form `HopfAlgebra.ofPrimitives`. Split out of #39841.
This looks more elegant using Sweedler notation (this proof was taken from a comment in #31898) but mathlib doesn't have the notation available as far as I know.
- [x] depends on: #39841 |
t-ring-theory
new-contributor
|
153/6 |
Mathlib.lean,Mathlib/RingTheory/HopfAlgebra/Generators.lean,Mathlib/RingTheory/HopfAlgebra/Primitive.lean |
3 |
3 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
15-1695 15 days ago |
16-14683 16 days ago |
16-29439 16 days |
| 42451 |
FawadHa1der author:FawadHa1der |
perf(Analysis/Distribution/SchwartzSpace): split denseRange_toLpCLM off Basic to shorten the longest pole |
Shortening the "longest pole" in the mathlib build. LLM help was used.
Per [lake prof report](https://speed.lean-lang.org/mathlib4-out/c8830a1d9ceaffabd7c8c7493d9a9be3ead6ea74/) SchwartzSpace/Basic.lean sits on the longest pole. With this change SchwartzSpace/Basic no longer imports SmoothApprox( which imported the whole manifold chain) hence shortening the longest pole by **23s** of ~502 s
denseRange_toLpCLM is moved to a new file SchwartzSpace/DenseLp.lean. |
t-analysis
new-contributor
longest-pole
|
58/16 |
Mathlib.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/DenseLp.lean,Mathlib/Analysis/Fourier/LpSpace.lean |
4 |
8 |
['FawadHa1der', 'github-actions', 'luigi-massacci', 'mathlib-merge-conflicts'] |
nobody |
14-66675 14 days ago |
14-68207 14 days ago |
21-82864 21 days |
| 42843 |
than4213 author:than4213 |
feat(Combinatorics/SimpleGraph): transition matrix of the simple random walk |
Adds SimpleGraph.walkMatrix, the transition matrix of the simple random walk on a graph: row v is the uniform distribution on the neighbours of v. This is SimpleGraph.adjMatrix with each row divided by G.degree v, turning adjacency counts into transition probabilities.
Main results are that the matrix is row stochastic, and hence so is G.walkMatrix ^ n — the latter follows immediately from Matrix.rowStochastic being a Submonoid.
Two choices worth flagging:
- Valued in ℚ. Every entry is (G.degree v)⁻¹, so nothing irrational arises. This keeps entries computable — #eval evaluates G.walkMatrix ^ n on a concrete graph.
- Placed in Combinatorics/SimpleGraph. The file imports no probability theory, only Mathlib.LinearAlgebra.Matrix.Stochastic, and sits alongside adjMatrix, incMatrix and lapMatrix.
The walk is undefined at isolated vertices, so the results take ∀ v, ¬ G.IsIsolated v.
Used Claude Code in the creation of this PR. |
t-combinatorics
new-contributor
LLM-generated
|
107/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/RandomWalk.lean |
2 |
8 |
['SnirBroshi', 'github-actions', 'than4213'] |
nobody |
14-66498 14 days ago |
14-67841 14 days ago |
15-37542 15 days |
| 42895 |
cameronfreer author:cameronfreer |
feat(SetTheory/Ordinal): add lift_sSup and lift_iSup |
Add `InitialSeg.map_sSup` and `InitialSeg.map_iSup` for conditionally complete linear orders with bottom. Specializing these to `Ordinal.liftInitialSeg` gives `Ordinal.lift_sSup`, `Ordinal.lift_iSup`, `Ordinal.lift_iSup_le`, and `Ordinal.lift_iSup_le_iff`.
The `sSup` theorem handles the empty set using preservation of bottom and the nonempty case using normality. The `iSup` theorem is derived from it. Both use an explicit boundedness hypothesis; in particular, `lift_iSup` assumes `BddAbove (Set.range f)` rather than requiring the index type to be small.
🤖 This PR was developed with assistance from Claude and GPT models, using [lean4-skills](https://github.com/cameronfreer/lean4-skills) and [lean-lsp-mcp](https://github.com/oOo0oOo/lean-lsp-mcp).
|
t-set-theory
new-contributor
LLM-generated
|
40/0 |
Mathlib/Order/IsNormal.lean,Mathlib/SetTheory/Ordinal/Family.lean |
2 |
11 |
['cameronfreer', 'github-actions', 'plp127', 'vihdzp'] |
nobody |
14-59710 14 days ago |
14-76812 14 days ago |
14-77646 14 days |
| 40498 |
wangying11123 author:wangying11123 |
feat(Geometry/Euclidean): unoriented angle eq of oriented angle eq |
This PR adds two theorems to Mathlib/Geometry/Euclidean/Angle/Oriented/Affine.lean
`angle_eq_of_oangle_eq`: If two oriented angles are equal, and the four endpoint pairs are nondegenerate, then the
corresponding unoriented angles are equal.
`angle_eq_of_oangle_eq_not_collinear`: If two oriented angles are equal, and the first triple is not collinear, then the
corresponding unoriented angles are equal. |
new-contributor |
22/0 |
Mathlib/Geometry/Euclidean/Angle/Oriented/Affine.lean |
1 |
6 |
['github-actions', 'plp127', 'wangying11123'] |
nobody |
13-65896 13 days ago |
13-68227 13 days ago |
67-60387 67 days |
| 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.
---
- [ ] 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'] |
nobody |
12-82582 12 days ago |
13-76427 13 days ago |
13-76604 13 days |
| 42165 |
bocowgill author:bocowgill |
feat(Probability/HasCondDistrib): characterize independence using conditional distributions |
This PR uses conditional distributions to characterize independence of two random variables.
It adds eight public declarations to `Mathlib/Probability/HasCondDistrib.lean`, which is the only file modified:
- `indepFun_iff_hasCondDistrib_const_of_hasLaw`: characterizes independence using a constant conditional-distribution kernel when the laws are specified.
- `indepFun_iff_hasCondDistrib_const`: specializes this characterization to the marginal laws `P.map X` and `P.map Y`.
- `IndepFun.hasCondDistrib_const`: the forward implication of the preceding equivalence.
- `HasCondDistrib.indepFun_of_const`: the reverse implication.
- `hasCondDistrib_condDistrib`: shows that the regular conditional distribution `condDistrib Y X P` satisfies `HasCondDistrib`.
- `hasCondDistrib_iff_condDistrib_ae_eq`: characterizes finite kernels satisfying `HasCondDistrib` by almost-everywhere equality with `condDistrib`.
- `indepFun_iff_condDistrib_ae_eq_const_of_hasLaw`: characterizes independence by almost-everywhere equality of `condDistrib` with the constant kernel at the specified law.
- `indepFun_iff_condDistrib_ae_eq_const`: specializes this characterization to the marginal laws.
The PR adds no new file and makes no change to the root `Mathlib.lean` imports.
---
### Motivation
These results provide a basic building block for formalizing randomized experiments and causal identification. The main result provides a starting point for later ignorability and conditional-independence results in causal inference.
### LLM disclosure
For theorem planning and Lean implementation, I substantially used Codex by OpenAI. I also used it for suggestions around naming and documentation, for iterating on the proofs, and for validating my commits locally.
I manually searched for the best locations and earlier results to build upon. I personally reviewed both the mathematical statements and Lean code (line-by-line), as well as the suggestions around naming and API choices. I also reviewed and confirmed that I can explain each step of the results (both Mathematics and Lean syntax).
To validate the change, I directly compiled the modified file and ran a targeted build. I also ran the style linter, and completed a full `lake build` and a full `lake test`.
Please note: This is one of my first mathlib contributions. I welcome corrections or suggestions about all aspects of this PR. I'm prepared to revise it as necessary, and to learn from the review.
|
t-measure-probability
LLM-generated
new-contributor
large-import
maintainer-merge
|
73/3 |
Mathlib/Probability/HasCondDistrib.lean |
1 |
29 |
['CoolRmal', 'EtienneC30', 'bocowgill', 'github-actions', 'leanprover-radar'] |
kex-y assignee:kex-y |
12-65982 12 days ago |
13-24250 13 days ago |
36-16022 36 days |
| 42965 |
arihallak author:arihallak |
feat(Analysis/Normed/Group/Pointwise): diameter of pointwise inversion, multiplication, and division |
This PR adds API lemmas for extended and real diameters (`EMetric.ediam` and `Metric.diam`) of pointwise inversion, multiplication, and division of sets in a `SeminormedCommGroup` (and automatically generates the additive counterparts via `@[to_additive]`).
### New declarations
- `ediam_inv` (additive: `ediam_neg`): `ediam s⁻¹ = ediam s`
- `ediam_div_le` (additive: `ediam_sub_le`): `ediam (s / t) ≤ ediam s + ediam t`
- `diam_inv` (additive: `diam_neg`): `diam s⁻¹ = diam s`
- `diam_mul_le` (additive: `diam_add_le`): `diam (s * t) ≤ diam s + diam t` (for bounded sets)
- `diam_div_le` (additive: `diam_sub_le`): `diam (s / t) ≤ diam s + diam t` (for bounded sets)
Tested with all 14 `#lint` linters. |
t-analysis
new-contributor
|
26/0 |
Mathlib/Analysis/Normed/Group/Pointwise.lean |
1 |
6 |
['github-actions', 'wwylele'] |
nobody |
12-34104 12 days ago |
13-31240 13 days ago |
13-31120 13 days |
| 40973 |
certik author:certik |
feat: multiplicative automatic continuity on ℝ |
This PR adds the multiplicative companion of the existing additive automatic-continuity theorem `AddMonoidHom.continuous_of_measurable`. See the git commit descriptions for all the details.
Depends on https://github.com/leanprover-community/mathlib4/pull/40976.
AI usage disclosure: I used Claude Opus 4.8 to create the theorems and proofs in my own Lean project, then extracted them into this PR since I think they are general purpose and would be useful for other people. I iterated on the proofs until they are as simple as I could get them. I am new to Lean, so if something should be reworked, please let me know. Lean is amazing, I was able to use it to prove various theorems and check my derivations. This is my little contribution back to the project. |
t-measure-probability
LLM-generated
new-contributor
|
159/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/Haar/AutomaticContinuity.lean |
2 |
10 |
['certik', 'github-actions', 'mathlib-merge-conflicts', 'wwylele'] |
RemyDegenne assignee:RemyDegenne |
12-33241 12 days ago |
67-10771 67 days ago |
69-34348 69 days |
| 41523 |
Harmenszoon author:Harmenszoon |
feat(Analysis/SpecialFunctions): add the Chase-Lovett diagonal reduction for binEntropy |
This PR adds the two-variable entropy inequality of Chase and Lovett ([arXiv:2211.11689](https://arxiv.org/abs/2211.11689), Lemma 2.2): for `x, y ∈ [0, 1]`,
```
x * binEntropy y + y * binEntropy x ≤ 2 * sqrt (x * y) * binEntropy (sqrt (x * y))
```
in a new leaf file `Mathlib/Analysis/SpecialFunctions/BinaryEntropy/Diagonal.lean`, together with its `negMulLog (1 - ·)` half (`Real.mul_negMulLog_one_sub_add_le`) and a `private` concavity layer for the comparison function `η u = exp u * negMulLog (1 - exp (-u))`. Two entries are added to `docs/references.bib` (Chase–Lovett arXiv:2211.11689, Boppana arXiv:2301.09664).
**Motivation.** This inequality is the reusable reduction step behind the recent entropic lower bounds for Frankl's union-closed sets conjecture (Gilmer; Alweiss–Huang–Sellke; Chase–Lovett; Sawin; Boppana): it reduces two-variable inequalities of Boppana type `K * (x * h y + y * h x) ≤ h (x * y)` to one-variable inequalities `2 * K * t * h t ≤ h (t ^ 2)`. `Mathlib/Analysis/SpecialFunctions/BinaryEntropy.lean` currently contains calculus basics for `binEntropy` only, and no inequality of this family; I checked current master for collisions before opening this. A kernel-checked downstream application — a complete Lean formalization of the union-closed lower bound at the constant `(3 - √5)/2` that uses exactly this reduction — is public at https://github.com/demonstrandum-research/artifacts (the `UCFrankl` development), which I maintain.
**Proof shape** (one page of calculus): substituting `x = exp (-u)`, the inequality becomes midpoint concavity of `η` on `[0, ∞)`; the `negMulLog (x * y)` parts of the two sides cancel exactly, the `negMulLog (1 - ·)` parts transfer to `η` via the identity `x * η (-log x) = negMulLog (1 - x)`, and `η'' ≤ 0` reduces to `log t ≤ t - 1`. Stating `η` through `negMulLog` absorbs the `0 * log 0` boundary behaviour, so no separate edge-case argument is needed at `x = 1`.
**Design notes / open questions for reviewers.**
- Hypotheses are stated as `0 ≤ x`/`x ≤ 1` pairs rather than `x ∈ Set.Icc 0 1`; happy to convert if the membership form is preferred.
- The `η`-machinery is `private`; it could be exposed if judged independently useful.
- File placement: a new `BinaryEntropy/Diagonal.lean` leaf keeps the import footprint of `BinaryEntropy.lean` unchanged (the proof needs `Analysis.Convex.Deriv`); merging into the main file is also possible if preferred.
- Naming: `mul_binEntropy_add_mul_binEntropy_le` / `mul_negMulLog_one_sub_add_le` follow the conclusion-based convention but I am glad to rename.
**AI disclosure** (per the [mathlib AI policy](https://leanprover-community.github.io/contribute/index.html)): the Lean code in this PR was generated by LLM agents (Anthropic's Claude, running in an agent pipeline that I operate under the name Demonstrandum), and was then compile-verified against mathlib and reviewed by me. This PR description was also prepared with AI assistance and reviewed by me. The proof is elementary calculus as summarized above; I understand it and take full responsibility for the contribution. I am adding the `LLM-generated` label as required. The downstream `UCFrankl` development linked above (kernel-checked, axioms `[propext, Classical.choice, Quot.sound]` only) is the evidence that the lemma carries real weight in applications.
---
- [x] depends on: nothing
|
t-analysis
LLM-generated
new-contributor
|
227/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/BinaryEntropy/Diagonal.lean,docs/references.bib |
3 |
5 |
['Harmenszoon', 'Timeroot', 'github-actions'] |
urkud assignee:urkud |
12-33240 12 days ago |
55-21146 55 days ago |
55-21026 55 days |
| 42823 |
attilavjda author:attilavjda |
chore: let `to_additive` generate hand-written additive twins |
In eight `to_additive` sites the additive declaration is written out by hand, but `@[to_additive]` on the multiplicative one generates the same statement.
This PR replaces the glue with a tag, deletes the twins, and `(attr := simp)` is used where the additive side must stay a simp lemma.
Aristotle AI found these duplicates, and suggested the solution.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-group-theory
new-contributor
|
8/60 |
Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/Category/Grp/Limits.lean,Mathlib/Algebra/Category/MonCat/Limits.lean,Mathlib/Algebra/Group/DivInvMonoid.lean,Mathlib/Algebra/Symmetrized.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfStabilizer.lean,Mathlib/GroupTheory/Nilpotent.lean |
7 |
5 |
['attilavjda', 'github-actions', 'mathlib-merge-conflicts', 'wwylele'] |
nobody |
11-84521 11 days ago |
12-1068 12 days ago |
16-42329 16 days |
| 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
|
31/11 |
Mathlib/Data/List/Sort.lean |
1 |
2 |
['github-actions'] |
nobody |
11-49777 11 days ago |
12-23606 12 days ago |
12-23486 12 days |
| 40579 |
jcreinhold author:jcreinhold |
feat(Algebra/Category/Ring): preserve limits to CommMonCat |
Adds the missing instance saying that forgetting a commutative ring to its multiplicative commutative monoid preserves limits. |
t-algebra
new-contributor
label:t-algebra$ |
7/0 |
Mathlib/Algebra/Category/Ring/Limits.lean |
1 |
8 |
['felixpernegger', 'github-actions', 'jcreinhold'] |
joneugster assignee:joneugster |
11-33240 11 days ago |
80-155 80 days ago |
80-8509 80 days |
| 43040 |
Qinghev author:Qinghev |
feat(Analysis/Convex): add center mass residual identity |
This adds `Finset.sum_smul_sub_centerMass_eq_zero`, stating that the weighted sum of displacements from a finite center of mass is zero whenever the total weight is nonzero.
---
Codex assisted with drafting and verification. |
t-analysis
new-contributor
|
5/0 |
Mathlib/Analysis/Convex/Combination.lean |
1 |
2 |
['github-actions'] |
nobody |
11-8196 11 days ago |
11-9353 11 days ago |
11-9233 11 days |
| 42404 |
Robertboy18 author:Robertboy18 |
chore(downstream_repos): add TorchLean |
This PR adds [TorchLean](https://github.com/lean-dojo/TorchLean) to `scripts/downstream_repos.yml`!
TorchLean is the first unified Lean 4 framework for neural-network specification,
execution, training, and formal verification. It depends on Mathlib and maintains
build and documentation workflows on its default branch! Let me know if something else is needed:)
|
CI
new-contributor
|
7/0 |
scripts/downstream_repos.yml |
1 |
2 |
['copilot-pull-request-reviewer', 'github-actions'] |
nobody |
10-39480 10 days ago |
27-32613 27 days ago |
27-32493 27 days |
| 35504 |
JoaBjo author:JoaBjo |
feat(Probability/Distributions/Exponential): add MGF, moments, and memoryless property |
Add the main analytic results for the exponential distribution:
- moment-generating function `mgf id (expMeasure r) t = r / (r - t)` for `t < r`
- mean `∫ x, x ∂(expMeasure r) = r⁻¹`
- variance `Var[id; expMeasure r] = r⁻¹ ^ 2`
- `ℒp` membership for all `p`
- tail probability `P(X > x) = exp (-(r * x))`
- memoryless property `P(X > s + t | X > s) = P(X > t)`
The MGF is computed by reducing to the known improper integral `∫ exp(c * x)` on `Ioi`, and integrability is deduced by contradiction from the positive closed-form value. The mean and variance are computed via the Gamma function integral `∫₀^∞ x^(n-1) exp(-r x) dx = Γ(n) / rⁿ`. The memoryless property follows from the exponential identity `exp(-(r(s+t))) = exp(-rt) * exp(-rs)`.
🤖 Claude Code (Fable) was used in this PR to resolve a merge with master. It adapted the branch's code to upstream renames/deprecations. It also restructured a proof that broke in the merge.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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-measure-probability
large-import
|
199/0 |
Mathlib/Probability/Distributions/Exponential.lean |
1 |
11 |
['EtienneC30', 'JoaBjo', 'Timeroot', 'github-actions', 'mathlib-merge-conflicts'] |
EtienneC30 assignee:EtienneC30 |
9-77769 9 days ago |
9-77863 9 days ago |
52-2268 52 days |
| 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 simp 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 |
8 |
['ashebson', 'github-actions', 'grunweg', 'mathlib-bors'] |
nobody |
9-57572 9 days ago |
10-78885 10 days ago |
11-25620 11 days |
| 41979 |
Nicola9Falciola author:Nicola9Falciola |
feat(LinearAlgebra/Matrix/GeneralLinearGroup/Card): add the theorem on the cardinality of the special linear group over a commring and over a finite field |
Add the theorems about the cardinality of the special linear group over a ring, both the exact formula and the _mul version and the version for a finite field. Building on the definition from the previous PR on the identification of `SL` with `det.ker`.
- [x] depends on: #41855
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
40/0 |
Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Card.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean |
2 |
10 |
['CBirkbeck', 'Nicola9Falciola', 'github-actions', 'mathlib-dependent-issues'] |
nobody |
8-66525 8 days ago |
8-74788 8 days ago |
8-77093 8 days |
| 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 |
8 |
['Sfgangloff', 'github-actions', 'mathlib-merge-conflicts', 'sgouezel'] |
sgouezel assignee:sgouezel |
8-30950 8 days ago |
8-31421 8 days ago |
30-57157 30 days |
| 40727 |
pepamontero author:pepamontero |
feat(Geometry/Manifold/Instances/Quotient): quotients of manifolds by smooth free properly discontinuous group actions are manifolds |
Add smooth manifold structure on orbit space `orbitRel.Quotient G M`.
This PR is a follow-up to #35653, which equipped `orbitRel.Quotient G M` with a `ChartedSpace` structure. Here we promote that to an `IsManifold I n` instance, assuming M itself is an `IsManifold I n`.
**Note**: I had to modify the order of some results in `Mathlib/Topology/Covering/Quotient.lean` to accomodate `isLocalHomeomorph_quotientMk_of_properlyDiscontinuousSMul` in a way that made sense and without repeating many variables. Adding this lemma is not absolutely necessary, but it does make it more comfortable to work with in the main file. These changes can therefore be reversed.
This started as an ItaLean2025 project; here is the [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/541885-ItaLean-2025/topic/Projects.3A.20Quotient.20Manifolds/with/575121158) dedicated to it.
Co-authored by: Enrique Díaz Blanco <qdiazblanco@gmail.com>
Co-authored by: Archie Browne <ajb421@ic.ac.uk>
--------
- [x] depends on: #41832
- [x] depends on: #41835
- [x] depends on: #42436
- [x] depends on: #42502
- [x] depends on: #41534 |
new-contributor
large-import
|
155/34 |
Mathlib/Geometry/Manifold/Instances/Quotient.lean,Mathlib/Topology/Covering/Quotient.lean |
2 |
49 |
['Deicyde', 'github-actions', 'grunweg', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'pepamontero', 'scholzhannah'] |
grunweg assignee:grunweg |
7-78943 7 days ago |
7-79796 7 days ago |
18-79418 18 days |
| 41459 |
EzequielS2 author:EzequielS2 |
feat(Algebra/Group): mulOpposite equivs for submonoid and subgroup |
## Summary
Add MulOpposite monoid equivalences for submonoids and subgroups, and remove the corresponding TODOs in `Subsemiring/MulOpposite.lean`.
## Test plan
- [x] `lake build` and `lake exe runLinter` on `Mathlib.Algebra.Group.Submonoid.MulOpposite` and `Mathlib.Algebra.Group.Subgroup.MulOpposite`
|
t-algebra
new-contributor
label:t-algebra$ |
78/4 |
Mathlib/Algebra/Group/Subgroup/MulOpposite.lean,Mathlib/Algebra/Group/Submonoid/MulOpposite.lean,Mathlib/Algebra/Ring/Subsemiring/MulOpposite.lean |
3 |
12 |
['EzequielS2', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen', 'wwylele'] |
nobody |
7-73002 7 days ago |
15-40528 15 days ago |
56-51026 56 days |
| 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'] |
nobody |
7-34592 7 days ago |
18-32942 18 days ago |
31-24340 31 days |
| 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
|
29/0 |
Mathlib/Analysis/Calculus/VectorField.lean |
1 |
4 |
['github-actions', 'korbonits'] |
nobody |
7-15191 7 days ago |
17-18265 17 days ago |
17-18145 17 days |
| 40496 |
thefundamentaltheor3m author:thefundamentaltheor3m |
feat(LinearAlgebra/AffineSpace/Simplex): the surface of a simplex |
I wrote the definition myself, and got Claude to generate some of the boilerplate code (which I then reviewed and had it clean 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/)
|
t-algebra
LLM-generated
new-contributor
label:t-algebra$ |
97/5 |
Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean |
1 |
8 |
['github-actions', 'grunweg', 'mathlib-bors', 'mathlib-merge-conflicts', 'thefundamentaltheor3m', 'wwylele'] |
nobody |
6-55021 6 days ago |
26-80133 26 days ago |
40-23033 40 days |
| 43144 |
gotrevor author:gotrevor |
doc(100-yaml): claim #53 (Pi is Transcendental) via an external Lean 4 formalization |
Adds `authors` + `links.result` to `docs/100.yaml` entry **53, "Pi is Transcendental"**, which
currently has a title and nothing else.
The formalization lives outside mathlib, in Lean 4:
[`PiTranscendental.lean`](https://github.com/gotrevor/lean-formalizations/blob/main/src/LeanFormalizations/NumberTheory/Transcendence/PiTranscendental.lean)
— `transcendental_pi_axiomClean : Transcendental ℚ Real.pi`, with
`#print axioms` = `[propext, Classical.choice, Quot.sound]` (re-verified 2026-08-25 against
mathlib v4.31.0). It builds the full Lindemann assembly on mathlib's own
`exp_polynomial_approx`: the analytic engine generalised to an arbitrary conjugate polynomial,
plus the algebraic half (symmetric functions over the Galois conjugates of `iπ`, via the
fundamental theorem of symmetric polynomials). `e_transcendental` is proved in the same chain.
No `decl` field, since that is for in-mathlib declarations and is existence-checked. `title` is
untouched. This follows the existing external-formalization entries: 8 (Compass), 24
(flypitch/CH), 31 (Ramsey), 36 (Brouwer), and 67 ("e is Transcendental").
`scripts/yaml_check.py docs/{100,1000,overview,undergrad}.yaml` exits 0.
### On #28013
[#28013](https://github.com/leanprover-community/mathlib4/pull/28013) (Lindemann–Weierstrass,
@astrainfinita) is open and active, and when it lands entry 53 should get a proper in-mathlib
`decl` — at which point this pointer has done its job and should be replaced or dropped. I am
not proposing this as an alternative to that work, and I would rather it landed than mine be
listed. This is only meant to record that a checkable Lean 4 proof exists in the meantime, which
is what `links.result` is for on the other five entries. Happy to close this if maintainers would
rather the entry stay empty until #28013 merges.
### Use of AI
The Lean development this points at was largely written by Claude working in long autonomous
sessions against a `lake build` + `#print axioms` gate, and two symmetric-function lemmas came
from Harmonic's Aristotle and were re-verified in the repository's own kernel; the repo's README
and commit history say so. This PR's four-line YAML diff was likewise drafted with Claude. I have
checked the axiom footprint myself and the linked file is machine-checked end to end.
|
LLM-generated
new-contributor
|
4/0 |
docs/100.yaml |
1 |
3 |
['github-actions', 'gotrevor'] |
nobody |
6-40422 6 days ago |
6-41004 6 days ago |
6-40884 6 days |
| 41081 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add Subrepresentation.toRepresentation_apply and Subrepresentation.quotient |
Add a lemma for `Subrepresentation` recording the inherited group action. Help avoid unfolding `Subrepresentation.toRepresentation` when analyzing the action.
Add the `quotient` representation associated to a `Subrepresentation`. It wraps up `Representation.quotient` and `Representation.Subrepresentation` and then we also record the inherited group action.
|
t-algebra
new-contributor
label:t-algebra$ |
26/0 |
Mathlib/RepresentationTheory/Subrepresentation.lean |
1 |
17 |
['JX-Mo', 'Whysoserioushah', 'github-actions'] |
joelriou assignee:joelriou |
6-33234 6 days ago |
52-12071 52 days ago |
67-67920 67 days |
| 42040 |
fqlx author:fqlx |
feat(NumberTheory): formalize Størmer's theorem on consecutive smooth numbers |
This PR formalizes the Størmer theorem on consecutive smooth numbers.
The new `Mathlib.NumberTheory.Stormer` module:
- develops the Pell/Lucas coefficient needed to study powers of Pell solutions;
- proves that a positive Pell solution whose `y`-coordinate has no prime factors outside the Pell parameter is fundamental;
- encodes consecutive `s`-factored numbers by three-valued prime-exponent data; and
- proves that the set of consecutive `s`-factored pairs is finite, establishes the refined global bound `3 ^ s.card - 2 ^ s.card`, and retains a stronger reusable bound for arbitrary finite subcollections.
The main public conclusions are:
- `card_consecutive_factoredNumbers_le_sub`: the reusable finite-set injection bound;
- `finite_consecutiveFactoredNumbers`: the traditional qualitative Størmer theorem; and
- `ncard_consecutiveFactoredNumbers_le_sub`: the strongest clean public conclusion for the complete set.
The implementation reuses the existing Pell and smooth-number APIs, keeps the core prime-index argument explicit, and includes the corresponding bibliography entry and umbrella import.
--------
AI tools, including OpenAI Codex and ChatGPT, were used extensively in preparing this contribution. They generated and revised substantial portions of the Lean implementation, assisted with proof decomposition and mathlib API discovery, helped iterate on compiler errors and refactoring, and helped draft the PR text.
I selected the theorem and scope, directed the iterations, reviewed the theorem statements and overall proof structure, and ran the listed Lean validation commands. I did not independently author or manually verify every low-level Lean proof step. On the linked self-assessment scale, I would classify this contribution as approximately Level 6: bots coded, human understands mostly.
|
t-number-theory
new-contributor
LLM-generated
|
861/0 |
Mathlib.lean,Mathlib/NumberTheory/Stormer.lean,docs/references.bib |
3 |
6 |
['fqlx', 'github-actions', 'grunweg'] |
alreadydone assignee:alreadydone |
6-33230 6 days ago |
37-4952 37 days ago |
37-50265 37 days |
| 41808 |
JX-Mo author:JX-Mo |
refactor(RepresentationTheory): add API lemmas in Representation.induced for making IndV.mk a def |
The current `IndV.mk` is an abbrev and `ind` has an @[simp] lemma `ind_apply`, so `simp` would expose the implementation and unfold the simple representation theoretic expressions into nasty linear algebra compounds consisting of MonoidAlgebra.single/TensorProduct/Coinvariant/.lift/.mk. The purpose of this PR is to seal `IndV.mk` and the old `ind_apply` off so that we can use simpler API lemmas and say goodbye to 20+ lines goals in the InfoView.
We address the issue by making `IndV.mk` a def and adding a new core def`IndV.lift`:
1) Making `IndV.mk` a def will allow the desired API lemmas `IndV.mk_map_mul` `IndV.mk_map_inv_mul` `IndV.mk_map_mem_eq` `IndV.mk_map_inv_eq` to have the desired @[simp] behaviour (previously simp would unfold `IndV.mk`, so @[simp] would not invoke these lemmas). We also add a useful `IndV.induction_on` lemma for reducing Prop to elementary generators and addition.
2) `IndV.lift`, which is a def, gives a way to construct a linear map from a family of linear maps on elementary generators. It unifies the previous constructions in `ind` `indMap` `indResHomEquiv` and `coinvariantsTensorInd`. Moreover, it turns out a single @[simp] lemma `IndV.lift_apply_IndVMk` is good enough to replace a whole system of linear algebra simp lemmas, while previously we had the annoying @[simps] above `ind` unfolding several linear algebra layers at once which brings big trouble if simp does not close the goal.
3) The new `ind` is an easy def building upon `IndV.lift` and the old confusing `ind_apply` is replaced by a clean simp computation lemma `ind_apply_mk`. Moreover, `indMap` becomes an abbrev.
As an immediate payoff, the definitions and proofs around `ind`, `indResHomEquiv` and `coinvariantTensorInd` become cleaner and the whole file complies 20% faster (6.6s to 5.4s on my computer as well as radar), despite the refactored code being longer. |
t-algebra
new-contributor
label:t-algebra$ |
101/58 |
Mathlib/RepresentationTheory/FiniteIndex.lean,Mathlib/RepresentationTheory/Induced.lean |
2 |
5 |
['JX-Mo', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
6-13427 6 days ago |
21-80364 21 days ago |
47-69203 47 days |
| 42353 |
sankalpsthakur author:sankalpsthakur |
feat(RingTheory): add nilpotence lemmas for zero sums |
In a commutative 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.
Closes #10539
### 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 |
27 |
['github-actions', 'sankalpsthakur', 'tb65536'] |
nobody |
5-81183 5 days ago |
7-10329 7 days ago |
13-17997 13 days |
| 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
|
151/0 |
Mathlib.lean,Mathlib/Analysis/ODE/Peano.lean |
2 |
2 |
['github-actions'] |
nobody |
5-78791 5 days ago |
20-74945 20 days ago |
36-69044 36 days |
| 43104 |
elazarg author:elazarg |
feat(InformationTheory/KullbackLeibler): finite Kullback-Leibler divergence |
Define `klDivFin p q = ∑ i, p i * log (p i / q i)` for `p q : ι → ℝ` on a `Fintype`, and prove Gibbs' inequality for it. The weights are not assumed to be normalized: `(∑ i, p i) - (∑ i, q i) ≤ klDivFin p q` needs only nonnegativity and absolute continuity, and `0 ≤ klDivFin p q` follows whenever `∑ i, q i ≤ ∑ i, p i`.
Two supporting lemmas added to `Analysis/SpecialFunctions/Log/NegMulLog`: `Real.mul_log_div` and `Real.sub_le_mul_log_div`, a quotient form of `Real.self_sub_one_le_mul_log`.
---
Continuing #42584, another part of https://github.com/elazarg/kraft
`klDivFin` is a `Finset.sum` definition, not a specialization of `klDiv`. `klDiv` is `ℝ≥0∞`-valued and defined through `llr` and `Measure.rnDeriv`, and Mathlib currently has no formula for `Measure.rnDeriv` on a discrete space.
Even with that lemma in place, `klDivFin` is `ℝ`-valued, so it composes directly with `Finset` arithmetic in downstream code; and it requires no normalization - Gibbs' inequality here holds under `∑ i, q i ≤ ∑ i, p i`, so no probability measures are needed.
Happy to split the two `NegMulLog` lemmas into a separate PR if needed.
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
new-contributor
LLM-generated
|
104/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Log/NegMulLog.lean,Mathlib/InformationTheory/KullbackLeibler/Finite.lean |
3 |
6 |
['EtienneC30', 'elazarg', 'github-actions', 'vlad902'] |
EtienneC30 assignee:EtienneC30 |
5-75822 5 days ago |
7-78903 7 days ago |
7-79180 7 days |
| 37666 |
TJHeeringa author:TJHeeringa |
feat(Analysis/InnerProductSpace/Reproducing): Lipschitz wrt the kernel pseudometric |
RKHSs $H$ have bounded point evaluations. This induces a pseudometric on the underlying space `X`. The function $f\in H$ are Lipschitz continuous with Lipschitz constant $\||f\||$. This adds the theorem `lipschitzWith_ennnorm` encoding this.
---
This PR uses the name `lipschitzWith`, but doesn't actually proof a statment like `LipschitzWith ‖f‖₊ f` where Lipschitzianity is defined with respect to a pseudometric. We could create an instance for the pseudometric. That would give the code below. However, there the `(ofKMD 𝕜 V H)` in the `LipschitzWith ‖f‖₊ (f ∘ (ofKMD 𝕜 V H))` is undesirable. If we pursue the route with this pseudometric instance, then I would need some help, because I don't know how to get around it.
```lean4
section Lipschitz
variable (𝕜 X V) in
/-- Type copy of domain `X` meant for being equipped with the kernel metric, abbreviated `KMD`. -/
@[nolint unusedArguments]
def KernelMetricDomain [RKHS 𝕜 H X V] : Type _ := X
variable (𝕜 V) in
/-- `toKMD` is the identity function to the `KernelMetricDomain 𝕜 X V H` of a `X`. -/
def toKMD : X ≃ KernelMetricDomain 𝕜 X V H := Equiv.refl _
variable (𝕜 V) in
/-- `ofKMD` is the identity function from the `KernelMetricDomain 𝕜 X V H` to `X`. -/
def ofKMD : KernelMetricDomain 𝕜 X V H ≃ X := Equiv.refl _
omit [CompleteSpace H] [CompleteSpace V] in
@[simp] theorem toKMD_symm_eq : (toKMD 𝕜 V H).symm = ofKMD 𝕜 V H := by rfl
omit [CompleteSpace H] [CompleteSpace V] in
@[simp] theorem ofKMD_symm_eq : (ofKMD 𝕜 V H).symm = toKMD 𝕜 V H := by rfl
omit [CompleteSpace H] [CompleteSpace V] in
@[simp] theorem ofKMD_toKMD (x : X) : ofKMD 𝕜 V H (toKMD 𝕜 V H x) = x := by rfl
omit [CompleteSpace H] [CompleteSpace V] in
@[simp]
theorem toKMD_ofKMD (x : KernelMetricDomain 𝕜 X V H) :
toKMD 𝕜 V H (ofKMD 𝕜 V H x) = x := by
rfl
variable (𝕜 X V) in
instance instKMDPseudoEMetricSpace [RKHS 𝕜 H X V] :
PseudoEMetricSpace (KernelMetricDomain 𝕜 X V H) :=
PseudoEMetricSpace.induced ((kerFun H) ∘ ofKMD 𝕜 V H) inferInstance
@[simp]
lemma edist_KMD (x y : KernelMetricDomain 𝕜 X V H) :
edist x y = edist (kerFun H (ofKMD 𝕜 V H x)) (kerFun H (ofKMD 𝕜 V H y)) :=
rfl
variable {H} in
theorem lipschitzWith_ennnorm' (f : H) (x y : X) :
edist (f x) (f y) ≤ ‖f‖₊ * edist (kerFun H x) (kerFun H y) := by
by_cases h : f = 0
· simp [h]
simp_rw [edist_eq_enorm_sub, ← eval_apply, ← sub_apply]
grw [le_opENorm]
rw [← enorm_eq_nnnorm, mul_comm, ENNReal.mul_le_mul_iff_right (enorm_ne_zero.mpr h) enorm_ne_top]
simp_rw [kerFun_eq_adjoint_eval, ← LinearIsometryEquiv.map_sub, enorm_le_iff_norm_le,
LinearIsometryEquiv.norm_map, le_refl]
variable {H} in
theorem lipschitzWith_ennnorm (f : H) :
LipschitzWith ‖f‖₊ (f ∘ (ofKMD 𝕜 V H)) :=
fun x y => by simpa [edist_KMD] using lipschitzWith_ennnorm' f (ofKMD 𝕜 V H x) (ofKMD 𝕜 V H y)
end Lipschitz
```
#### AI:
I had the instance outside the theorem. Lean gave problems with resolving type classes / instance synthesis. I asked Claude and ChatGPT to interpret the error and fix it. The latter just spit gibberish and the former suggested inlining but in a way that didn't work. Then, I asked on Zulip and got the same suggestion but working. The type synonym alternative was also suggested there. The final PR doesn't include the instance because of the aforementioned reasons.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
73/7 |
Mathlib/Analysis/InnerProductSpace/Reproducing.lean |
1 |
47 |
['Maldooor', 'TJHeeringa', 'github-actions', 'j-loreaux', 'jkandel1', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'themathqueen'] |
ADedecker assignee:ADedecker |
5-72928 5 days ago |
5-72928 5 days ago |
45-19301 45 days |
| 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. |
new-contributor
t-algebra
label:t-algebra$ |
79/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Hecke/Basic.lean |
2 |
8 |
['JX-Mo', 'Whysoserioushah', 'github-actions'] |
nobody |
5-47391 5 days ago |
8-72201 8 days ago |
8-72183 8 days |
| 40448 |
ChiCubed author:ChiCubed |
feat(LinearAlgebra/Dimension): tower law for algebraic extensions |
We generalise the tower law for `Module.rank` to the situation of a module over an algebraic extension of domains.
---
See [the Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Tower.20law.20for.20.60Module.2Erank.60/) for some associated discussion.
I am not sure about in which file these results should live, or what their names should be. For the file I have gone with `LinearAlgebra/Dimension/Algebraic.lean` for now, because these feel more like dimension theorems than `Algebra.IsAlgebraic` theorems, and IMO do not logically fit into the other existing files in `LinearAlgebra/Dimension`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
297/30 |
Mathlib.lean,Mathlib/Algebra/Group/Action/Faithful.lean,Mathlib/LinearAlgebra/Dimension/Domain.lean,Mathlib/LinearAlgebra/Dimension/Free.lean,Mathlib/RingTheory/Algebraic/Integral.lean,Mathlib/RingTheory/Localization/FractionRing.lean |
6 |
14 |
['ChiCubed', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] |
joneugster assignee:joneugster |
5-33242 5 days ago |
28-28127 28 days ago |
79-81784 79 days |
| 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'] |
sgouezel assignee:sgouezel |
5-33235 5 days ago |
12-67953 12 days ago |
12-67833 12 days |
| 37456 |
Robertboy18 author:Robertboy18 |
feat(LinearAlgebra/AffineSpace): add parallel form of Desargues's theorem |
This PR adds an affine parallel form of the Desargues theorem, following the related Rocq/Coq affine-geometry statement.
**Main changes**
- New file `Mathlib/LinearAlgebra/AffineSpace/Desargues.lean` with `parallel_third_side_of_perspective`.
- Add the corresponding `public import` to `Mathlib.lean`.
**Proof idea**
The proof compares side vectors using `exists_eq_smul_of_parallel` for the two given pairs of parallel sides. The shared comparison along `SA` forces the same scalar, which gives parallelism of the third pair of sides.
Tests: `lake build Mathlib.LinearAlgebra.AffineSpace.Desargues`
AI disclosure: GPT-5.2 Pro was used for assistance with web search/background details about the theorem and for finding useful existing Mathlib lemmas. The theorem statement and Lean formalization were written and checked by hand.
---
[](https://gitpod.io/from-referrer/) |
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
133/0 |
Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/Desargues.lean |
2 |
21 |
['Robertboy18', 'SnirBroshi', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] |
eric-wieser assignee:eric-wieser |
5-24752 5 days ago |
14-40538 14 days ago |
23-26331 23 days |
| 39687 |
TentativeConvert author:TentativeConvert |
feat(Algebra/Group/Submonoid): type class to indicate that supremum in a SubmonoidClass agrees with supremum of submonoids |
Add a type class `SubmonoidClass.IsConcreteSSup` to indicate that the canonical map `.ofClass` from a class `S` of submonoids of `M` to `Submonoid M` preserves suprema.
---
This PR implements the minimal type class assumption needed to make „pushfoward of gradings along maps of indexing sets“ – see draft PR #39356 – work in some `SetLike` generality.
Given `{S M : Type*} [SetLike S M] [Monoid M] [SubmonoidClass S M]`, we have canonical maps
```
S → Submonoid M → Set M
```
The first is `Submonoid.ofClass`, the second and the composition are `coe` maps coming from the `SetLike` structures. Depending on `S`, these maps may or may not satisfy various properties with respect the lattice structures on `Submonoid M` and `Set M`. Mathlib so far includes the type class `[IsConcreteLE S M]`, which asserts that the composition `S → Set M` is order-preserving and order-reflecting. The type class defined here asserts that the first map, `S → Submonoid M`, preserves suprema.
In examples such as `S = Subgroup M`, `S = Submodule R M`, much more is true – in these cases, `S` is a complete sublattice of `Submonoid M`. But there are also examples where only the weaker property defined here holds, e.g. `S = OpenSubgroup M` for a topological group `M`.
Note on `outParam`: I did *not* write `(M : outParam Type*)` in the assumptions of `SubmonoidClass.IsConcreteSSup` in accordance with the [DocString of `Setlike`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/SetLike/Basic.html#SetLike). However, we do have `(B : outParam Type*)` in the definition of `IsConcreteLE`, so perhaps I'm misinterpreting the 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]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
label:t-algebra$ |
56/0 |
Mathlib.lean,Mathlib/Algebra/Group/Submonoid/SSup.lean |
2 |
2 |
['github-actions'] |
jjdishere assignee:jjdishere |
4-33245 4 days ago |
103-803 103 days ago |
103-1283 103 days |
| 41052 |
hawkrobe author:hawkrobe |
refactor(RingTheory/HopfAlgebra): relocate `ofSurjective` |
---
I wasn't happy with the `HopfAlgebra.ofSurjective` proof in #39790. This PR attempts to refactor by extracting some of the pieces it relies on in more reusable form (e.g. bifunctoriality) and moving it out of `Quotient.lean`.
Also, `convOne` only uses the counit so i moved it up to the `[CoalgebraStruct R C]` section to match `convMul` (so `convOne_comp_coalgHom` could be the same generality as `convMul_comp_coalgHom_distrib`.)
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
|
111/65 |
Mathlib/RingTheory/Bialgebra/Convolution.lean,Mathlib/RingTheory/Coalgebra/Convolution.lean,Mathlib/RingTheory/HopfAlgebra/Convolution.lean,Mathlib/RingTheory/HopfAlgebra/Quotient.lean |
4 |
11 |
['eric-wieser', 'github-actions', 'hawkrobe'] |
jjdishere assignee:jjdishere |
4-33243 4 days ago |
8-50842 8 days ago |
67-61911 67 days |
| 43189 |
mlgraham author:mlgraham |
feat(NumberTheory/NumberField/House): house is multiplicative on powers |
`house_pow_le` gives only `house (α ^ i) ≤ house α ^ i`. The equality holds: `house` is the maximum of `‖φ α‖` over the embeddings `φ : K →+* ℂ`, and `x ↦ x ^ i` is monotone on `ℝ≥0`, so the power commutes with the maximum.
I needed the equality rather than the bound in a descent argument, where a house bound on `α ^ k` has to transfer back to `α`.
The proof follows the existing `house_nat_mul` in the same file: rewrite both sides with `house_eq_sup'`, then push the monotone map through the `Finset.sup'`.
---
AI usage, per the contribution guidelines: I used Claude Code (Claude Opus 5) to find and write this proof, and it also drafted this description. I have reviewed the proof, understand the argument, and can justify the design choices without it.
|
t-number-theory
new-contributor
|
8/2 |
Mathlib/NumberTheory/NumberField/House.lean |
1 |
6 |
['felixpernegger', 'github-actions', 'mlgraham', 'plp127'] |
loefflerd assignee:loefflerd |
4-31687 4 days ago |
4-61414 4 days ago |
4-61294 4 days |
| 42377 |
norbsvr author:norbsvr |
doc(1000.yaml): add Brauer's theorem on induced characters |
Claims a proof of [Q4958218:](https://www.wikidata.org/wiki/Q4958218) Brauer's theorem on induced characters.
The formalization is in an <a href="https://github.com/norbsvr/BrauerInduction/">external Lean 4 repository</a>. Please see file `README.md` for further information.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
3/0 |
docs/1000.yaml |
1 |
3 |
['github-actions'] |
nobody |
3-46289 3 days ago |
30-53107 30 days ago |
30-52987 30 days |
| 42482 |
SauersML author:SauersML |
feat(Probability/Decision): add data processing inequalities for minimax risk |
This PR adds the minimax analogs of the three data processing inequalities for the Bayes risk in Mathlib.Probability.Decision.Risk.Basic.
It is similar to the compositions section in PR #29143, but with minimax.
-----------
Claude Fable 5 wrote the code and GPT 5.6 Sol reviewed the code. This was written for a different project, and I identified this as a candidate for upstreaming into 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-measure-probability
LLM-generated
new-contributor
|
31/0 |
Mathlib/Probability/Decision/Risk/Basic.lean |
1 |
3 |
['SauersML', 'github-actions'] |
EtienneC30 assignee:EtienneC30 |
3-33243 3 days ago |
27-30064 27 days ago |
27-29944 27 days |
| 41803 |
benjub author:benjub |
feat(Topology/order/IntermediateValue): continuous induction from sSup membership |
Add `mem_of_csSup_mem_of_forall_exists_gt`, that generalizes `IsClosed.mem_of_ge_of_forall_exists_gt` by weakening the closedness hypothesis to membership of the supremum. Derive `IsClosed.mem_of_ge_of_forall_exists_gt` from it.
---
This result was already in essence in `IsClosed.mem_of_ge_of_forall_exists_gt`, which uses closedness only to obtain membership of the supremum.
This new result does not require `[TopologicalSpace α] [OrderTopology α]` (it is purely order-theoretic), but I still placed it next to `IsClosed.mem_of_ge_of_forall_exists_gt`. I am open to moving it to another file if the reviewer sees fit.
There are cases where that more general lemma is needed, because closedness either does not hold or would be longer to prove. For instance, I need that generalization to shorten the proof in the draft PR #41552. |
t-topology
new-contributor
|
21/11 |
Mathlib/Topology/Order/IntermediateValue.lean |
1 |
3 |
['benjub', 'github-actions'] |
nobody |
3-32336 3 days ago |
48-35126 48 days ago |
48-35006 48 days |
| 41120 |
teorth author:teorth |
feat(Analysis/SpecialFunctions/Gamma/Deriv,NumberTheory/Harmonic/GammaDeriv): formulae for the derivative of Gamma / eulerMascheroni |
Some integral representations of the derivative of the Gamma function, or the Euler-Mascheroni constant, focusing on the real form of the Gamma function rather than the complex one (as formulae for the latter are already present).
---
The initial code was human generated; an AI agent was used to help proofread and refactor the code subsequently.
- [x] depends on: #41119
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor |
91/7 |
Mathlib/Analysis/SpecialFunctions/Gamma/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/NumberTheory/Harmonic/GammaDeriv.lean |
3 |
27 |
['felixpernegger', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'teorth'] |
nobody |
3-10867 3 days ago |
28-61699 28 days ago |
47-43580 47 days |
| 42931 |
yui9696 author:yui9696 |
feat(Analysis/Matrix): simultaneous diagonalization of two Hermitian forms and generalized eigenvalues |
Adds the simultaneous diagonalization theorem for two real quadratic forms, one of which is positive definite:
if `A : Matrix n n ℝ` is positive definite and `B : Matrix n n ℝ` is symmetric, then there is an invertible `P` with `Pᵀ * A * P = 1` and `Pᵀ * B * P` diagonal.
This is the entry "simultaneous diagonalization of two real quadratic forms" from the [missing undergraduate mathematics list](https://leanprover-community.github.io/undergrad_todo.html) (Bilinear and quadratic forms).
### Contents
* `Matrix.PosDef.exists_simultaneous_diagonalization` — the matrix statement above.
* `Matrix.PosDef.exists_simultaneous_diagonalization_quadratic` — the same fact read off on the quadratic forms themselves: one invertible change of variables takes the form of `A` to `∑ xᵢ ^ 2` and the form of `B` to `∑ dᵢ * xᵢ ^ 2`. This is the phrasing the undergraduate list actually asks for, so it seemed worth stating explicitly rather than leaving to the reader.
* `Matrix.PosDef.exists_simultaneous_diagonalization_of_posDef` — when `B` is positive definite as well, the diagonal entries are positive.
### Implementation
Conjugating by the inverse of `CFC.sqrt A` turns `A` into the identity; the congruence of `B` is then symmetric, so `Matrix.IsHermitian.spectral_theorem` diagonalizes it and the two changes of basis compose.
A note on the history of this branch, in case a reviewer reads the commits: the first version went through the LDL decomposition, because I had convinced myself Mathlib no longer had a square root for positive semidefinite matrices. That was simply wrong — `CFC.sqrt` applies to matrices, as `Mathlib/Analysis/Matrix/Order.lean` already uses. Redoing it that way removed the `LinearOrder`, `WellFoundedLT` and `LocallyFiniteOrderBot` hypotheses that LDL imposed on the index type, so the statement is now proved for an arbitrary `Fintype` with decidable equality.
This is my first Mathlib contribution, so I would be glad to hear if the placement or naming should be different. Two specific questions:
* Would a `QuadraticForm` / `LinearMap.BilinForm` statement be preferred to the `dotProduct` phrasing used in the `_quadratic` version?
* Is `∃ d, _ = diagonal d` the right conclusion, or would `Matrix.IsDiag` be more idiomatic here?
### Use of AI
Per the [contribution guidelines](https://leanprover-community.github.io/contribute/index.html), I am disclosing my use of AI on this PR.
**Tool:** Claude (Anthropic), used through Claude Code.
**How I used it:** I used it to draft and iterate on the Lean proofs in this file, to search Mathlib for the relevant existing lemmas, and to carry out the rewrite from the first LDL-based version to the `CFC.sqrt` version described above. I have read and checked every declaration in the file myself, and I can justify the statements, the proof design and the placement without AI assistance.
A substantial part of the code was AI-drafted, so I am adding the `LLM-generated` label.
---
[](https://gitpod.io/#https://github.com/leanprover-community/mathlib4)
|
t-analysis
new-contributor
LLM-generated
|
246/0 |
Mathlib.lean,Mathlib/Analysis/Matrix/SimultaneousDiagonalization.lean |
2 |
8 |
['github-actions', 'themathqueen', 'vlad902', 'yui9696'] |
nobody |
3-10411 3 days ago |
9-21767 9 days ago |
9-38885 9 days |
| 42963 |
teal-sea author:teal-sea |
feat(NumberTheory/LSeries): define Hardy's Z function |
Add Hardy's Z function as a real-valued function on `ℝ`, with the two
conjugation lemmas its construction needs.
---
`Z` is the standard real-valued function on the critical line: it has the same
modulus as `ζ (1/2 + i t)`, so its sign changes locate zeros of `ζ` on the line.
It is a standard object for formulating and proving results about zeros on the
critical line, and Mathlib currently has no way to talk about such a zero
directly.
The `Critical line theorem` entry in `docs/1000.yaml` carries no `decl:`, so
this is an area the library has recorded as wanted. This PR is not that theorem;
it is foundational infrastructure toward it, and the dependency chain is what
gives the three commits their shape: a critical line theorem is naturally
formulated using `Z`, `Z` needs conjugation symmetry for the completed zeta
function, and that needs conjugation symmetry for the Deligne archimedean
factors. Hence, in order:
1. `Complex.Gammaℝ_conj`, `Complex.Gammaℂ_conj` in `Gamma/Deligne.lean`, which
currently has no conjugation lemma for either Deligne factor.
2. `completedRiemannZeta_conj` in `ZetaAsymp.lean`, next to `riemannZeta_conj`.
For `0 < re s` it follows from `riemannZeta_conj` and `Gammaℝ_conj`; the
other half-plane follows from `completedRiemannZeta_one_sub` applied to
`1 - s`, which also covers the junk values at `0` and `1`.
3. `Mathlib/NumberTheory/LSeries/HardyZ.lean`, the definition and its API:
`abs_hardyZ`, `hardyZ_neg`, `hardyZ_eq_zero_iff`, `continuous_hardyZ`,
`ofReal_hardyZ`.
**On the choice of definition.** The textbook definition is
`Z t = exp (I * ϑ t) * ζ (1/2 + i t)`, with `ϑ` the Riemann–Siegel theta
function. That needs a continuous branch of `log Γ` along the critical line,
which Mathlib does not have, and the branch bookkeeping is most of the work.
Dividing `Λ` by the modulus of its archimedean factor gives the same function
without mentioning a branch: `Λ (1/2 + i t)` is real by `completedRiemannZeta_conj`
and `completedRiemannZeta_one_sub`, and `‖Γ_ℝ (1/2 + i t)‖` is a positive real.
Since `Γ_ℝ (1/2 + it) = π ^ (-1/4) * π ^ (-it/2) * Γ (1/4 + it/2)`, where the
first factor is a positive real and the second has modulus `1`, the quotient is
exactly `exp (I * ϑ t) * ζ (1/2 + i t)`; the module docstring spells this out.
`ϑ` itself can follow later.
I chose `ℝ → ℝ` because it is what the literature means by `Z` and it makes the
intermediate value theorem directly applicable. I raised this signature question
on Zulip in `#mathlib4` on 6 August and would still welcome opinions on it.
## Use of AI
I used Claude (Anthropic), via Claude Code. The mathematical route, defining
`Z` from `Λ` rather than from `exp (I ϑ) ζ`, to avoid the logarithm branch, is
one I worked out in my own research repository before this Lean was written, and that earlier Lean was also AI-assisted. Claude wrote most of the
proofs from that plan for this PR and found that the divisor is exactly `‖Γ_ℝ (1/2 + i t)‖`
rather than the expanded `π ^ (-1/4) * ‖Γ (1/4 + i t / 2)‖`, split the two
general lemmas out into their proper files, and adapted everything to house
style. I set the goal and the design, chose the file layout and the names, and
reviewed the result.
Builds against master with no errors or warnings; `lake exe lint-style` is clean
and `#lint` reports no errors. |
LLM-generated
new-contributor
t-number-theory
|
209/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deligne.lean,Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/NumberTheory/LSeries/HardyZ.lean |
4 |
8 |
['github-actions', 'teal-sea', 'wwylele'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
2-68401 2 days ago |
13-37905 13 days ago |
13-37785 13 days |
| 43231 |
E-M-Bailey author:E-M-Bailey |
feat(Analysis/Analytic): expand and update `AnalyticAt.comp_sub`-type theorems |
Adds `.comp_add` and biconditional versions of the `AnalyticAt.comp_sub`-type theorems. Also shortens the `.comp_sub` statements and simplifies a few of their proofs.
---
The purpose of this minor change, and in particular the biconditional versions, is to make it more convenient to shift power series. For example, I am currently working on a proof with a hypothesis of type `∀ᶠ w in 𝓝 z, ∀ i, AnalyticAt ℂ (f <| update w i ·) (w i)`, and I wanted to simplify the proof by assuming `z = 0`. This makes the `wlog` step shorter.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
202/32 |
Mathlib/Analysis/Analytic/Basic.lean |
1 |
3 |
['github-actions'] |
nobody |
2-63603 2 days ago |
2-65019 2 days ago |
2-64982 2 days |
| 42042 |
ijtejeda author:ijtejeda |
feat(MeasureTheory/OuterMeasure) more API for Caratheodory |
Add more basic facts about outer measures, including Caratheodory measurability of measure-zero 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]
-->
[](https://gitpod.io/from-referrer/)
|
LLM-generated
new-contributor
t-measure-probability
|
8/0 |
Mathlib/MeasureTheory/OuterMeasure/Caratheodory.lean |
1 |
13 |
['CoolRmal', 'github-actions', 'ijtejeda', 'tdwag123'] |
CoolRmal and RemyDegenne assignee:RemyDegenne assignee:CoolRmal |
2-47430 2 days ago |
2-55714 2 days ago |
28-39165 28 days |
| 42483 |
bocowgill author:bocowgill |
feat(Topology/MetricSpace/HausdorffDistance): characterize joint minimizers via infDist |
This PR adds two results connecting a generic pseudometric-space profiling principle with orthogonal projection in an inner-product space.
- `Metric.exists_forall_dist_le_iff_forall_infDist_le` gives a generic pseudometric-space attainment/profiling theorem. Assuming the distance from `a` to `U` is attained, it characterizes when `a` can be paired with some `u ∈ U` whose distance is no greater than the distance between any pair in `A × U`. This is possible precisely when `Metric.infDist a U ≤ Metric.infDist a' U` for every `a' ∈ A`. When `a ∈ A`, this characterizes joint minimizers over `A × U`.
- `Submodule.norm_starProjection_orthogonal_eq_infDist` identifies the norm of the orthogonal projection onto `Uᗮ` with the point-to-set distance `Metric.infDist y U`, providing a bridge between the inner-product-space projection API and the generic pseudometric-space theorem.
A later intended application is partialling-out and the Frisch–Waugh–Lovell theorem. There, one can specialize the comparison set and distinguished point to
`A = Set.range (fun z' ↦ y - f z')`
and
`a = y - f z`,
and use the projection-to-`infDist` bridge to translate between orthogonal-residual norms and the generic profiling theorem. The regression-parameterized specialization itself is not part of this PR.
---
### Motivation
These lemmas separate the general profiling argument from the inner-product-space structure used in orthogonal-projection applications.
- The pseudometric-space result shows that, when the distance from `a` to `U` is attained, the `U` variable can be profiled out: finding a pair `(a, u)` whose distance is bounded by every pair in `A × U` reduces to comparing `Metric.infDist a U` with `Metric.infDist a' U` for every `a' ∈ A`. When `a ∈ A`, this is a joint-minimization characterization.
- The inner-product-space result identifies the norm of the orthogonal residual with `Metric.infDist`, providing the bridge needed to apply the generic profiling theorem to orthogonal-projection problems.
This separation is intended to support later formalizations of least squares, regression, and partialling-out/FWL arguments while keeping the profiling theorem independent of linear structure and of any particular parameterization of the comparison set.
### LLM disclosure
For theorem planning and Lean implementation, I used OpenAI Codex substantially. I also used it for suggestions around naming and documentation, for iterating on the proofs, responding to review feedback, and validating my commits locally.
I manually searched for the best locations and earlier results to build upon. I personally reviewed the mathematical statements and Lean code line-by-line, as well as the suggestions around naming and API choices. I also reviewed and confirmed that I can explain each step of the two theorems' proofs.
For the current revision, I ran targeted builds of `Mathlib.Topology.MetricSpace.HausdorffDistance` and `Mathlib.Analysis.InnerProductSpace.Projection.Basic`, as well as the style linter and the environment linter. I performed a `git diff --check`. I also inspected the inferred declaration signatures and axiom dependencies, and compiled a scratch proof recovering the original regression-parameterized statement from the new generic pseudometric-space theorem. Earlier in development, before the reviewer-driven refactor, I also completed a full `lake build` and a full `lake test`.
Please note: This is one of my earliest Mathlib contributions. I welcome corrections or suggestions about all aspects of this PR. I'm prepared to revise it as necessary and to learn from the review. |
t-analysis
LLM-generated
new-contributor
|
29/0 |
Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean |
2 |
14 |
['bocowgill', 'github-actions', 'j-loreaux', 'wwylele'] |
nobody |
2-40509 2 days ago |
19-57152 19 days ago |
26-72568 26 days |
| 38194 |
ryanncode author:ryanncode |
feat(LinearAlgebra/BilinearForm): add indefinite metrics |
Add the `IndefiniteMetric` structure to support vector spaces equipped with a non-degenerate, symmetric, indefinite bilinear form.
Provide the algebraic foundation for indefinite inner product spaces by formalizing the metric via `LinearMap.BilinForm` and extracting its associated quadratic form without enforcing the `IsPosSemidef` typeclass.
Previously, mathlib required strictly positive-definite metrics to instantiate inner product spaces (`InnerProductSpace`), which prevented the formalization of indefinite geometries without causing typeclass inference failures. Bridge this gap by isolating the symmetric bilinear form from topological and positivity constraints, allowing the library to handle generalized indefinite metric spaces safely.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
47/0 |
Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/IndefiniteMetric.lean |
2 |
5 |
['dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'ryanncode'] |
mattrobball assignee:mattrobball |
2-33244 2 days ago |
101-76571 101 days ago |
117-46220 117 days |
| 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'] |
b-mehta assignee:b-mehta |
2-33243 2 days ago |
38-20382 38 days ago |
62-3597 62 days |
| 40791 |
vvvv-ops author:vvvv-ops |
feat(RingTheory/DedekindDomain): dirichlet's s-unit theorem |
Proves the `Future work` of `RingTheory/DedekindDomain/SInteger.lean`: finite generation of `S`-units and Dirichlet's `S`-unit theorem.
For a Dedekind domain `R` with fraction field `K` and a finite set `S` of height-one primes, this adds the `S`-valuation map `Set.unitValuation` with kernel the `∅`-units (`Set.unitValuation_ker`), finite generation `Set.unit_fg`, and the exact rank `Set.finrank_eq`: `finrank ℤ (Additive 𝒪_{K,S}ˣ) = finrank ℤ (Additive 𝒪_Kˣ) + |S|`, plus the number-field specialisation `Set.unit_finrank_numberField` (`= (r₁ + r₂ - 1) + |S|`). The proof uses the short exact sequence `1 → 𝒪_Kˣ → 𝒪_{K,S}ˣ → ⊕_{v∈S} ℤ`: the kernel is the units, and the image has finite index because its cokernel embeds in the (finite) class group.
The general finiteness helpers `Module.Finite.of_fg_ker_of_fg_range`, `CommGroup.fg_of_fg_ker_of_fg_range`, `Subgroup.fg_of_fg_commGroup` are included in the file for now — happy to move them to `RingTheory/Finiteness` / `GroupTheory/Finiteness` if preferred.
|
t-ring-theory
new-contributor
|
339/0 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/SUnit.lean,scripts/noshake.json |
3 |
4 |
['github-actions', 'jjdishere'] |
mattrobball assignee:mattrobball |
2-33239 2 days ago |
75-20352 75 days ago |
75-20232 75 days |
| 41962 |
juanjomadrigal author:juanjomadrigal |
feat(Counterexamples): the space ω₁ |
Introduce the `ω₁` ordinal space that, when given the order topology, may be used to build some nice counterexamples in general topology, namely
- A subspace of a paracompact space need not be paracompact
- The product of two normal spaces need not be normal
- A subspace of a normal space need not be normal
- A regular space need not be normal
This PR introduces the basic definitions and order-theoretic properties, in order to have a good set of tools to work with.
---
Subsequent commits / PRs would roughly cover:
- Topology definitions in that space
- Compactness (and non-compactness) properties
- Countability properties
- Non-metrizability
- Each of the properties above
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
146/0 |
Counterexamples.lean,Counterexamples/Omega1Space.lean |
2 |
68 |
['FrankieNC', 'felixpernegger', 'github-actions', 'grunweg', 'j-loreaux', 'juanjomadrigal', 'plp127', 'vihdzp'] |
ADedecker assignee:ADedecker |
2-33234 2 days ago |
31-84589 31 days ago |
40-22244 40 days |
| 39722 |
kg583 author:kg583 |
feat(Combinatorics): link `Nat.Partition` to `YoungDiagram` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
AI disclosure: Claude was used to source some proof sketches.
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
large-import
|
111/4 |
Mathlib.lean,Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Combinatorics/Enumerative/Partition/YoungDiagram.lean,Mathlib/Combinatorics/Young/YoungDiagram.lean |
4 |
48 |
['NoahW314', 'YaelDillies', 'github-actions', 'kg583', 'wwylele'] |
nobody |
2-32344 2 days ago |
57-48926 57 days ago |
92-43723 92 days |
| 42354 |
sankalpsthakur author:sankalpsthakur |
doc(Data/Rel): clarify the SetRel representation |
Rewrites the implementation-notes section explaining why `SetRel` represents relations as `Set (α × β)` rather than `α → β → Prop`. The previous text framed the two representations as competing, with the function form as default and `SetRel` mainly justified by dedicated notation. This reframes it around what each representation is *for*: the function form when a relation is primarily applied to arguments, the set-of-pairs form when the relation itself is manipulated as an object — with concrete examples (inverse as preimage, transport as image, union/intersection/complement/subset-order inherited from `Set`). Also fixes a stray double space.
Motivated by #39397.
### Validation
Documentation-only change (module docstring); no executable code touched.
Closes #39397
### AI/LLM disclosure
AI coding tools were used to help draft this change and PR description. I reviewed the complete change and the reasoning before submitting. |
t-data
new-contributor
LLM-generated
|
16/13 |
Mathlib/Basic/Rel.lean |
1 |
4 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
2-21956 2 days ago |
14-21852 14 days ago |
31-1936 31 days |
| 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
|
59/0 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean |
1 |
91 |
['JadAbouHawili', 'SnirBroshi', 'github-actions', 'grunweg'] |
nobody |
2-5315 2 days ago |
14-61366 14 days ago |
22-30347 22 days |
| 43229 |
yui9696 author:yui9696 |
feat(Probability/Moments): probability generating function |
Define the probability generating function `pgf X μ t = μ[t ^ X]` of an `ℕ`-valued random variable, mirroring the `mgf` API in `Mathlib/Probability/Moments/Basic.lean`.
API:
- values at `0` and `1`, nonnegativity, monotonicity and boundedness on `[0, 1]`;
- `integrable_pow_pgf`: the defining integrand is integrable on `[-1, 1]` for any finite measure;
- congruence lemmas (`pgf_congr`, `pgf_id_map`, `pgf_congr_identDistrib`);
- `pgf_eq_tsum`: the power-series form `pgf X μ t = ∑' n, μ.real (X ⁻¹' {n}) * t ^ n`;
- `pgf_exp_eq_mgf`: the bridge to the moment-generating function;
- `IndepFun.pgf_add` / `iIndepFun.pgf_sum`: the product formula for sums of independent variables.
Main result: `map_eq_map_of_pgf_eq` — **the generating function determines the law**. The point masses are read off as the coefficients of a power series of radius at least 1 (via `FormalMultilinearSeries.ofScalars`), and the uniqueness of power-series coefficients recovers them from the function.
Everything is stated for a general (finite) measure where possible, with `IsProbabilityMeasure` only where it is genuinely needed.
🤖 Generated with [Claude Code](https://claude.com/claude-code) |
t-measure-probability
LLM-generated
new-contributor
|
234/0 |
Mathlib.lean,Mathlib/Probability/Moments/PGF.lean |
2 |
3 |
['github-actions', 'yui9696'] |
nobody |
2-1695 2 days ago |
2-70186 2 days ago |
2-70066 2 days |
| 41486 |
TTony2019 author:TTony2019 |
feat(Analysis/Convex/Intrinsic): add open segment intrinsic interior results |
Add open segment intrinsic interior results: `x ∈ intrinsicInterior 𝕜 C` and `y ∈ intrinsicClosure 𝕜 C`, then the open segment
from `x` to `y` stays in `intrinsicInterior 𝕜 C`.
Co-authored-by: Zichen Wang <imathwy@users.noreply.github.com> |
t-topology
new-contributor
t-analysis
|
70/0 |
Mathlib/Analysis/Convex/Intrinsic.lean,Mathlib/Analysis/Convex/Topology.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Homeomorph/Defs.lean |
4 |
9 |
['TTony2019', 'github-actions', 'j-loreaux', 'themathqueen'] |
nobody |
1-70941 1 day ago |
23-54398 23 days ago |
51-63910 51 days |
| 39212 |
emlis42 author:emlis42 |
feat(Algebra/ContinuedFractions): add `partNums!` and `partDens!` |
This PR adds `partNums!` and `partDens!`, which provide infinite stream representations for the sequences of partial numerators and denominators of a generalized continued fraction. |
t-algebra
new-contributor
label:t-algebra$ |
67/35 |
Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/ContinuedFractions/ContinuantsRecurrence.lean,Mathlib/Algebra/ContinuedFractions/Determinant.lean,Mathlib/Algebra/ContinuedFractions/Translations.lean |
4 |
6 |
['emlis42', 'eric-wieser', 'github-actions', 'grunweg'] |
eric-wieser assignee:eric-wieser |
1-70694 1 day ago |
113-61126 113 days ago |
113-61006 113 days |
| 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.
---
- [ ] 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 |
134/0 |
Mathlib.lean,Mathlib/Topology/Sheaves/KSheaf.lean |
2 |
9 |
['github-actions', 'joelriou', 'mathlib-dependent-issues', 'ymonbru'] |
nobody |
1-64742 1 day ago |
1-65333 1 day ago |
59-80655 59 days |
| 43196 |
danderson70-UNL author:danderson70-UNL |
doc: add Jacobi Four-Square proof to the list of 1000 theorems |
|
new-contributor |
3/0 |
docs/1000.yaml |
1 |
3 |
['github-actions'] |
nobody |
1-62486 1 day ago |
4-42033 4 days ago |
4-41913 4 days |
| 42669 |
kris-gaudel author:kris-gaudel |
feat(Analysis/Convex): add `ShapleyFolkman` lemma |
Closes https://github.com/leanprover-community/mathlib4/issues/14427
Formalizes the Shapley-Folkman Lemma, uses the proof outlined [here](https://en.wikipedia.org/wiki/Shapley%E2%80%93Folkman_lemma#Proofs) (Via reduction from Carathéodory's theorem) |
t-analysis
new-contributor
|
346/0 |
Mathlib.lean,Mathlib/Analysis/Convex/ShapleyFolkman.lean |
2 |
3 |
['github-actions'] |
nobody |
1-60280 1 day ago |
21-45047 21 days ago |
21-44927 21 days |
| 43140 |
kirill-kondrashov author:kirill-kondrashov |
feat(LinearAlgebra/ExteriorPower): add 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/)
Implements the plan [#maths > Hodge star operator @ 💬](https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Hodge.20star.20operator/near/619251295)
GPT-5.6 Luna Max was used to fill in the sorry blocks in a manually written definition with a review comments from Zulip from @ocfnash .
Then there were conducted many iterations of manual and LLM-generated changes with very specific prompts addressing concrete code issues until the initial iteration was almost fully overwritten.
Co-authored-by: @ocfnash |
LLM-generated
new-contributor
t-algebra
label:t-algebra$ |
203/0 |
Mathlib.lean,Mathlib/LinearAlgebra/ExteriorPower/HodgeStar.lean,Mathlib/LinearAlgebra/ExteriorPower/WedgePairing.lean |
3 |
8 |
['github-actions', 'kirill-kondrashov', 'mathlib-bors', 'wwylele'] |
nobody |
1-47348 1 day ago |
4-75240 4 days ago |
4-75150 4 days |
| 43268 |
naype888-cloud author:naype888-cloud |
feat(Analysis/SpecialFunctions): the cosecant-squared identity |
# feat(Analysis/SpecialFunctions): the cosecant-squared identity ∑ csc²(kπ/N) = (N²−1)/3
Adds the classical finite identity
$$\sum_{k=1}^{N-1}\csc^2\!\Big(\frac{k\pi}{N}\Big)=\frac{N^2-1}{3},$$
stated over `Real.sin` as
`∑ k ∈ Finset.Ico 1 N, (Real.sin (k * π / N))⁻¹ ^ 2 = (N ^ 2 - 1) / 3` for `1 ≤ N`,
together with the four Chebyshev-`U` facts its proof needs. One new file plus its import line.
Mathlib currently has no finite `csc²`/`cot²` sum (`Trigonometric/Cotangent.lean` is the infinite
Mittag-Leffler series). The related `∑_{k=1}^{m} cot²(kπ/(2m+1)) = m(2m-1)/3` is the arithmetic
core of the elementary `∑ 1/k² = π²/6` in *Proofs from THE BOOK* — happy to add it here if wanted.
## Files
- **`Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/CosecantSq.lean`** — new file.
- **`Mathlib.lean`** — one import line (kept sorted).
## Statements added — all in the new file
| Name | Statement |
|---|---|
| `Polynomial.Chebyshev.splits_U_real` | `(U ℝ n).Splits` (via `splits_iff_card_roots` + `roots_U_real`). |
| `Polynomial.Chebyshev.roots_U_real_map_neg` | `(U ℝ n).roots.map (- ·) = (U ℝ n).roots` — the real roots are symmetric about `0` (via `map_roots_comp_C_mul_X_add_C` and `Polynomial.funext`). |
| `Polynomial.Chebyshev.sum_one_div_one_sub_roots_U_real` | `∑ 1 / (1 - z)` over the real roots `= ((n + 1) ^ 2 - 1) / 3` (logarithmic derivative at `1`, `derivative_U_eval_one_eq_div`). |
| `Polynomial.Chebyshev.sum_one_div_one_add_roots_U_real` | same value for `∑ 1 / (1 + z)` — the previous sum after `roots_U_real_map_neg`. |
| `Polynomial.Chebyshev.abs_lt_one_of_mem_roots_U_real` | every real root of `U ℝ n` satisfies `|z| < 1`. |
| `Polynomial.Chebyshev.sum_one_div_one_sub_sq_roots_U_real` | `∑ 1 / (1 - z ^ 2)` over the real roots `= ((n + 1) ^ 2 - 1) / 3` (average of the two, partial fractions). |
| `Real.sum_inv_sin_sq_pi_div` | **the identity.** `1 - cos² = sin²` applied termwise to the previous sum with `N = n + 1`. |
## Notes for the reviewer
- **Placement / split.** The first block (`splits_U_real`, `roots_U_real_map_neg`,
`abs_lt_one_of_mem_roots_U_real`) are stand-alone facts about `U ℝ n` and could move next to
`roots_U_real` in `Chebyshev/RootsExtrema.lean`, leaving only the sums and the identity in this
file. Glad to split into a prerequisite PR if preferred.
- **Naming.** `Real.sum_inv_sin_sq_pi_div` — open to a better name.
- Hypotheses are minimal: the `sum_one_div_…_roots_U_real` lemmas hold for all `n` (empty root
multiset at `n = 0`); the identity needs only `1 ≤ N` (`N = 1` gives `0 = 0`).
## AI disclosure
AI-assisted (Claude). The author has certified every statement and proof step and verified the
references (Cauchy, *Cours d'analyse*, 1821; Aigner–Ziegler, *Proofs from THE BOOK*, "π²/6").
|
t-analysis
new-contributor
LLM-generated
|
157/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/CosecantSq.lean |
2 |
3 |
['github-actions', 'wwylele'] |
nobody |
1-46082 1 day ago |
1-47135 1 day ago |
1-47015 1 day |
| 40266 |
WangJiabai author:WangJiabai |
feat(RingTheory/MvPolynomial): define generic determinantal ideals |
This PR adds a foundational API for determinantal ideals of the generic matrix.
It defines `Matrix.MinorIndex`, the corresponding minors of the existing generic
matrix `Matrix.mvPolynomialX`, the finite set of all `t × t` generic minors, and
the ideal generated by these minors in `MvPolynomial (Fin m × Fin n) R`.
It also proves basic membership, evaluation, coefficient-map/base-change, and
finite-generation lemmas.
This PR intentionally does not include the Sturmfels/KRS/straightening/Groebner
part of the development.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
Additional context:
This is extracted and refactored from a standalone project on determinantal
ideals and the Gröbner-basis theorem for generic determinantal ideals:
https://github.com/WangJiabai/Determinantal-Ideals-Formalization
The current PR is intentionally limited to the small foundational API for
generic minors and generic determinantal ideals.
AI use:
ChatGPT was used for planning/refactoring discussion, and Codex was used to
draft some proof scripts. I reviewed the statements and proofs and am
responsible for the submitted code.
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
LLM-generated
|
227/0 |
Mathlib.lean,Mathlib/RingTheory/MvPolynomial/DeterminantalIdeal.lean |
2 |
3 |
['WangJiabai', 'github-actions'] |
riccardobrasca assignee:riccardobrasca |
1-33245 1 day ago |
88-61829 88 days ago |
88-61709 88 days |
| 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
|
5/0 |
Mathlib/Data/List/Perm/Basic.lean |
1 |
5 |
['github-actions', 'sergantche', 'vlad902'] |
TwoFX assignee:TwoFX |
1-33241 1 day ago |
51-43118 51 days ago |
55-46393 55 days |
| 41904 |
rshlyakh author:rshlyakh |
feat(RingTheory/KrullDimension): add Krull dimension preservation under injective integral extensions |
This proves that an injective integral homomorphism of commutative rings
preserves Krull dimension, based on the `Algebra.HasGoingUp` infrastructure from #40911. It includes:
- `RingHom.IsIntegral.ringKrullDim_eq_of_injective`: injective integral homomorphisms of
commutative rings preserve Krull dimension.
- `RingHom.IsIntegral.ringKrullDim_quotient_ker_eq`: for an integral extension `f : A →+* B`,
the Krull dimension of `B` is equal to the Krull dimension of `A ⧸ RingHom.ker f`.
- [x] depends on: #40911
- [x] depends on: #41058
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
77/12 |
Mathlib.lean,Mathlib/RingTheory/Ideal/HasGoingUp.lean,Mathlib/RingTheory/KrullDimension/Integral.lean |
3 |
14 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'rshlyakh', 'vlad902'] |
nobody |
1-26473 1 day ago |
18-40151 18 days ago |
45-13524 45 days |
| 41525 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add Smooth.Basic for smooth representations |
This PR introduces basic setup for smooth representations of a topological group. Hopefully it will serve as preliminary content for those who are interested in formalizing representation theory for p-adic reductive groups in the future. We introduce the following in the file:
1. Define smoothness for representations of a topological group. It is a property for a representation to be smooth: the stabilizer of any vector is open.
2. Prove basic closure properties: subrepresentations, quotient representations, tensor products, direct sums of smooth representations are smooth.
3. Construct smoothHom and contragredient: they are obtained by cutting out smooth vectors from the naive hom and dual.
- [ ] depends on #40941
- [ ] depends on #41081 |
new-contributor
t-algebra
label:t-algebra$ |
277/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Smooth/Basic.lean,Mathlib/RepresentationTheory/Stabilizer.lean,Mathlib/RepresentationTheory/Subrepresentation.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
5 |
5 |
['JX-Mo', 'felixpernegger', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
1-25509 1 day ago |
1-28708 1 day ago |
51-77851 51 days |
| 43280 |
idontgetoutmuch author:idontgetoutmuch |
feat(Topology/VectorBundle): coordinate lemmas for the bundle of bilinear forms |
Two coordinate-level identities for the bundle of scalar-valued bilinear forms
`fun x ↦ E x →L[ℝ] E x →L[ℝ] ℝ` over a real vector bundle:
* `inCoordinates_apply_eq₂_bilin`: the `inCoordinates` expression evaluated on
coordinate inputs equals the intrinsic form on the transported inputs;
* `trivializationAt_symm_apply_bilin`: the inverse trivialization of the bilinear-forms
bundle, applied to fibre vectors, equals the model form on their images under
`continuousLinearMapAt`.
These are used when transporting a fibrewise bilinear form (such as a Riemannian metric)
through a trivialization, and are the first piece split out of #33714 (existence of a
Riemannian metric on a manifold), which will be rebased on top of 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-topology
new-contributor
|
83/0 |
Mathlib.lean,Mathlib/Topology/VectorBundle/HomBilinear.lean |
2 |
2 |
['github-actions'] |
nobody |
1-8023 1 day ago |
1-8023 1 day ago |
1-7903 1 day |
| 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 |
1-5711 1 day ago |
1-44171 1 day ago |
17-1086 17 days |
| 38534 |
AlexeyMilovanov author:AlexeyMilovanov |
refactor(Computability): make `PFun` a one-field structure |
This PR refactors `PFun` from `def PFun α β := α → Part β` to a structure with a `FunLike` instance.
[Discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Fix.20for.20fun_prop.20on.20PFun.20.28context.3A.20Computability.20Theory.29)
### Main changes
* `PFun` is now a structure with a single field `toFun : α → Part β`.
* Added the `FunLike (α →. β) α (Part β)` instance and `initialize_simps_projections`.
* Added the basic projection/application simp lemmas needed for the structure wrapper.
* Definitions which used to return raw lambdas as partial functions now explicitly use `PFun.mk` or `PFun.lift`.
* Equality proofs for partial functions now use `PFun.ext` / `DFunLike.ext` where `funext` no longer applies directly.
### Downstream impact
The refactor mainly impacts Computability Theory and Category Theory (`Category/PartialFun.lean`). Since `PFun` is no longer definitionally equal to `α → Part β`, tactics such as `rfl`, `simp`, and `funext` can no longer always see through the old raw-function representation.
As a result, several proofs (e.g. `fix_aux`, `ppred`, `mem_eval`, and `unitIso`) grew in size, requiring explicit `ext` + `simp` breakdowns. I tried to keep these proof changes minimal; further golfing suggestions are very welcome. It seems that fully recovering the old brevity in some places may require additional `PFun`-specific API/congruence support, which I avoided adding in this PR to keep the diff minimal.
### Affected files
* **Core:** `Mathlib/Data/PFun.lean`
* **Computability:** `Partrec`, `PartrecBasis`, `PartrecCode`, `RE`, `RecursiveIn`, `Ackermann`, `StateTransition`, `TuringDegree`, `TuringMachine/Config`
* **Category Theory:** `Category/PartialFun.lean`
* **Other:** `Data/Finset/PImage.lean`, `NumberTheory/Dioph.lean`
This also removes the previous `set_option linter.flexible false` workaround and the local transparency workaround in `TuringMachine/Config.lean`, as well as the local transparency workarounds in `Category/PartialFun.lean`.
### Note on LLM usage
The core `PFun` change caused numerous downstream errors. I initially used an LLM to help draft fixes for these files. Afterwards, I spent a significant amount of time manually correcting and modifying all of the generated changes.
|
new-contributor
t-computability
tech debt
LLM-generated
maintainer-merge
|
579/502 |
Mathlib/CategoryTheory/Category/PartialFun.lean,Mathlib/Computability/Ackermann.lean,Mathlib/Computability/Partrec.lean,Mathlib/Computability/PartrecBasis.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/RE.lean,Mathlib/Computability/RecursiveIn.lean,Mathlib/Computability/StateTransition.lean,Mathlib/Computability/TuringDegree.lean,Mathlib/Computability/TuringMachine/Config.lean,Mathlib/Data/Finset/PImage.lean,Mathlib/Data/PFun.lean,Mathlib/NumberTheory/Dioph.lean |
13 |
73 |
['AlexeyMilovanov', 'JovanGerb', 'YaelDillies', 'dagurtomas', 'github-actions', 'j-loreaux', 'jcommelin', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
1-285 1 day ago |
1-77373 1 day ago |
101-5819 101 days |
| 43183 |
BorisTheBrave author:BorisTheBrave |
fix(Tactic/Linarith): carry `!` and the configuration into `linarith?… |
`linarith?` uses the same configuration as `linarith`,
but previously printed a bare `linarith only [...]` suggestion regardless
of the configuration.
Now all config options except `minimize` are carried into the suggestion.
---
Note: #42588 has a [test](https://github.com/leanprover-community/mathlib4/pull/42588/files#diff-3657543f804f0a57e384f6a9338cc53803a50bebdfb16c1ecd0b514f3fda332fR863) that
unintentionally highlights the problem:
```lean
/--
info: Try this:
[apply] linarith only [hne, hle]
-/
#guard_msgs in
example (a b : ℚ) (hne : a ≠ b) (hle : a ≥ b) (junk : (0:ℚ) < 1) : b < a := by
linarith? +splitNe
```
This suggestion doesn't actually close the proof.
It should suggest `linarith +splitNE only [hne, hle]`.
Should we be using `says` syntax for these tests? I'm unclear on the rule here.
Note: `simp?` has very similar code, `filterSuggestionsAndLocalsFromSimpConfig`, that this PR was modelled after.
AI disclosure:
Claude Code (Fable) first flagged this problem to me, and wrote the first draft. I
made some tweaks to better fit mathlib's style, and wrote all the prose.
[](https://gitpod.io/from-referrer/) |
t-meta
new-contributor
|
77/6 |
Mathlib/Tactic/Linarith/Frontend.lean,MathlibTest/Tactic/Linarith/Basic.lean |
2 |
8 |
['BorisTheBrave', 'github-actions', 'sharky564'] |
nobody |
0-82996 23 hours ago |
4-85080 4 days ago |
4-84960 4 days |
| 40155 |
TheGoedeDoel author:TheGoedeDoel |
feat: functor of localized commutative rings |
Given a functor of commutative rings R and a submonoid functor S,
we add a functor of commutative rings with objects that are localizations
of R(U) at the submonoid S(U). We also show that this functor satisfies a
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-algebra
new-contributor
label:t-algebra$ |
255/0 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/LocalizedFunctor.lean |
2 |
16 |
['TheGoedeDoel', 'chrisflav', 'github-actions', 'jcommelin'] |
joneugster assignee:joneugster |
0-78271 21 hours ago |
82-41267 82 days ago |
91-41191 91 days |
| 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 |
123/19 |
Mathlib/Analysis/Normed/Field/Dense.lean,Mathlib/Analysis/Normed/Module/Completion.lean,Mathlib/NumberTheory/Padics/Complex.lean |
3 |
10 |
['YijunYuan', 'github-actions', 'pechersky', 'riccardobrasca'] |
nobody |
0-77625 21 hours ago |
0-78534 21 hours ago |
38-60092 38 days |
| 43128 |
dannyhe652 author:dannyhe652 |
feat(SimpleGraph/Coloring): add edge colorings and missing colors |
## Summary
This PR starts the edge-coloring API needed for Vizing's theorem.
It defines edge colorings as vertex colorings of the line graph, introduces edge
colorability and the chromatic index, and adds the basic local color-set API around a
vertex.
Main additions:
- `vizing.edgeColoring`
- `vizing.edgeColorable`
- `vizing.chromaticIndex`
- `vizing.incidentEdges`
- `vizing.incidentColors`
- `vizing.missingColors`
It also proves the basic cardinality estimates relating incident colors to vertex degree,
including that with more available colors than the degree, some color is missing at the
vertex.
This is the first PR in a stacked development toward Vizing's theorem.
## Co-authors
Co-authored-by: Daniel Raggi <dr495@cam.ac.uk>
Co-authored-by: Aristotle (Harmonic) <aristotle-harmonic@harmonic.fun>
Co-authored-by: Claude Opus 4.5 & 4.6 <noreply@anthropic.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
new-contributor
LLM-generated
|
271/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeColoring.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/KempeChain.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/KempeChain/Basic.lean |
4 |
6 |
['SnirBroshi', 'dannyhe652', 'github-actions'] |
nobody |
0-75206 20 hours ago |
6-85708 6 days ago |
6-85684 6 days |
| 42534 |
gloges author:gloges |
feat(LinearAlgebra/MultilinearMap): generalize `MultilinearMap` with common `RingHom` |
Generalizes multilinear maps to multi-semilinear maps.
In analogy with `LinearMap σ M N`, `MultilinearMap σ M N` is the space of multilinear maps from the `R`-module `∀ i, M i` to the `S`-module `N` over a ring homomorphism `σ : R →+* S`: fixing all but one coordinate gives a map `M i →ₛₗ[σ] N`.
Both `ContinuousLinearMap` and `AlternatingMap` extend `MultilinearMap` and are left defined in terms of `RingHom.id`.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor |
679/616 |
Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean,Mathlib/Analysis/Normed/Module/Multilinear/Curry.lean,Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basis.lean,Mathlib/LinearAlgebra/Multilinear/Curry.lean,Mathlib/LinearAlgebra/Multilinear/DFinsupp.lean,Mathlib/LinearAlgebra/Multilinear/DirectSum.lean,Mathlib/LinearAlgebra/Multilinear/FiniteDimensional.lean,Mathlib/LinearAlgebra/Multilinear/Finsupp.lean,Mathlib/LinearAlgebra/Multilinear/Pi.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/DFinsupp.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/TensorAlgebra/Basic.lean,Mathlib/LinearAlgebra/TensorPower/Pairing.lean,Mathlib/LinearAlgebra/TensorPower/Symmetric.lean,Mathlib/RingTheory/PiTensorProduct.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean |
24 |
17 |
['eric-wieser', 'github-actions', 'gloges', 'themathqueen', 'winstonyin'] |
nobody |
0-72427 20 hours ago |
16-74180 16 days ago |
25-13772 25 days |
| 42312 |
sfingali author:sfingali |
feat(Topology): huber (f-adic) rings |
### Summary
Defines Huber (f-adic) rings: topological rings admitting an open subring whose
subspace topology is the `I`-adic topology for a finitely generated ideal `I`
(Wedhorn, *Adic Spaces*, arXiv:1910.05934, Prop. and Def. 6.1, p. 46).
* `HuberRing.RingOfDefinition` — the pair of definition `(A₀, I)`: an open subring
`A₀ ⊆ A` with `IsAdic I` for a finitely generated ideal `I` of `A₀` (data).
* `HuberRing.IsHuberRing` — a topological ring admitting a ring of definition
(property).
* `HuberRing.ringOfDefinition_iff_open_adic` — Wedhorn, Lemma 6.2 (a) ↔ (b), p. 46:
a subring is a ring of definition iff it is open and adic.
This is the first step of a planned adic/perfectoid pipeline (Huber rings →
Huber pairs → continuous valuations → Spa → perfectoid fields → tilting), following
the design of the Lean 3 `lean-perfectoid-spaces` project (ring of definition as
data, Huber ring as a property). Follow-ups (depending on #40013's boundedness):
Lemma 6.2 (c) (ring of definition ⟺ open + bounded) and Cor. 6.4(3) (the
power-bounded elements form a subring, the union of all rings of definition).
### References
* T. Wedhorn, *Adic Spaces*, arXiv:1910.05934, Prop. and Def. 6.1, Lemma 6.2,
Cor. 6.4 (pp. 46–47).
|
t-topology
new-contributor
|
84/0 |
Mathlib.lean,Mathlib/Topology/Algebra/Nonarchimedean/HuberRing.lean |
2 |
6 |
['github-actions', 'pepamontero'] |
nobody |
0-66161 18 hours ago |
32-38032 32 days ago |
32-38581 32 days |
| 42914 |
lman310 author:lman310 |
feat(Algebra): add zpow_right_injective |
Add `zpow_right_injective`, stating that for a nontrivial element `a` of a
multiplicatively torsion free group, the map `n : ℤ ↦ a ^ n` is injective,
as well as the corresponding additive theorem `zsmul_left_injective` using
`to_additive`
Use the new additive theorem in `CharZero.of_isAddTorsionFree`, replacing its
dependency on the general `smul_left_injective`. This allows
`CharZero.of_isAddTorsionFree` to move from
`Mathlib.Algebra.Module.Torsion.Free` to the earlier
`Mathlib.Algebra.Module.NatInt`, resolving the existing TODO
---
Codex was used to find the appropriate file `Mathlib.Algebra.Module.NatInt` for moving `CharZero.of_isAddTorsionFree`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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$ |
25/14 |
Mathlib/Algebra/Group/Torsion.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/Module/Torsion/Free.lean |
3 |
13 |
['felixpernegger', 'github-actions', 'lman310', 'themathqueen'] |
nobody |
0-50793 14 hours ago |
5-86370 5 days ago |
10-74354 10 days |
| 41920 |
junjihashimoto author:junjihashimoto |
feat(Analysis/CliffordAlgebra): the pseudoscalar of Cl(n,0) and its complex structure |
We study the Clifford algebra of Euclidean `n`-space (the quadratic form `x ↦ ⟪x, x⟫_ℝ` on `EuclideanSpace ℝ (Fin n)`). The pseudoscalar `ω = e₀ ⋯ eₙ₋₁` satisfies
* `ω * ω = (-1) ^ (n.choose 2)` (`pseudoscalar_mul_pseudoscalar'`),
* `γᵢ * ω = (-1) ^ (n - 1) • (ω * γᵢ)` (`γ_mul_pseudoscalar`),
so it is central for odd `n`, and a square root of `-1` iff `n ≡ 2, 3 [MOD 4]`. In that case left multiplication by `ω` is a complex structure: we provide a scoped `Module ℂ` instance (via `Complex.liftAux` and `Module.compHom`; no commutation is needed for a module structure, which covers the non-central case `n ≡ 2 [MOD 4]`), and for `n ≡ 3 [MOD 4]` an `Algebra ℂ` structure as a non-instance def.
The sign computations are done by moving a generator through a product of distinct generators (`γ_mul_prod`, `γ_mul_prod_mem`, `prod_sq`), with no case analysis on `n`.
In a follow-up PR this makes the Clifford–Fourier transform (Ebling–Scheuermann) an instance of the ordinary vector-valued Fourier transform, giving Plancherel's theorem and the inversion formula.
- [ ] depends on: (nothing)
|
t-analysis
new-contributor
|
303/0 |
Mathlib.lean,Mathlib/Analysis/CliffordAlgebra/Euclidean.lean |
2 |
3 |
['github-actions', 'j-loreaux'] |
nobody |
0-46585 12 hours ago |
44-80697 44 days ago |
44-81077 44 days |
| 42468 |
Cobord author:Cobord |
feat: added lambda rings |
Description:
This does lambda rings. It is mostly over rationals so we can concern ourselves only with the psi^n operations and not the more complicated lambda^n operations. Doing the more general case could be another PR. This also includes the Getzler type formulation as the map involving Lambda_R the ring of symmetric functions in countably many variables (which again because R is assumed as [Algebra Q R] is described with it's power sum generators). That is to say the Plethystic action. Homomorphisms of such lambda rings are also covered. In particular, those of inclusions of subrings closed under those psi^n operations. In addition, one of the primary motivating examples of K(GL(n)/P) otimes_Z Q is described as such an instance to provide an example that is not Lambda_R.
This was done with Claude Code for generating initial versions but I had not given a good full prompt about prefering psi^n over lambda^n or using a structure instead of a prop in AdamsHom so I ended up rewriting most of those parts by hand anyway. The exception is the PrimeExtend file which is about only giving the psi^p instead of all of the psi^n, but abstracted away from those particular details per clarifying instructions after an initial version.
Because PrimeExtend is so much, this has a tag of
LLM-generated
In addition even though it is in RingTheory it is highly relevant to
t-combinatorics
in the sense of algebraic combinatorics due to use of ring of symmetric functions in countably many variables. |
t-ring-theory
new-contributor
t-combinatorics
LLM-generated
|
898/0 |
Mathlib.lean,Mathlib/RingTheory/LambdaRing/AdamsHom.lean,Mathlib/RingTheory/LambdaRing/AdamsOperations.lean,Mathlib/RingTheory/LambdaRing/KFlagExample.lean,Mathlib/RingTheory/LambdaRing/PrimeExtend.lean,Mathlib/RingTheory/LambdaRing/SymmetricFunctions.lean |
6 |
4 |
['Cobord', 'github-actions'] |
nobody |
0-37403 10 hours ago |
22-62994 22 days ago |
22-63645 22 days |
| 42802 |
Zeta-Wu author:Zeta-Wu |
feat(CategoryTheory): relate equivalences and skeletons |
This PR supersedes the previously closed PR #42789.
It adds several related characterizations of equivalences of categories, together with an API showing that an equivalence induces an isomorphism between the corresponding skeletons.
In `CategoryTheory/Equivalence.lean`, it adds:
* `Functor.isEquivalence_iff_exists_equivalence`, stating that a functor `F : C ⥤ D` is an equivalence (i.e. fully faithful and essentially surjective) if and only if it is the functor of some bundled equivalence `e : C ≌ D`.
In `CategoryTheory/Skeletal.lean`, it adds:
* `Functor.isEquivalence_iff_isIso_between_skeletal`: a functor between skeletal categories is an equivalence iff it is an isomorphism;
* `Functor.isEquivalence_iff_exists_isoCat_mapSkeleton`, stating that a functor `F : C ⥤ D` is an equivalence if and only if the induced functor on skeletons `F.mapSkeleton : Skeleton C ⥤ Skeleton D` is the functor of some categorical isomorphism `IsoCat (Skeleton C) (Skeleton D)`.
* `Functor.tfae_isEquivalence_bundledEquivalence_mapSkeletonIsoCat`, giving a `TFAE` for the following three statements:
* `F.IsEquivalence` : `F` is fully faithful and essentially surjective;
* `∃ e : C ≌ D, e.functor = F` : `F` is part of some bundled equivalence;
* `∃ e : IsoCat (Skeleton C) (Skeleton D), e.functor = F.mapSkeleton` : the induced functor on skeletons is a categorical isomorphism.
* `Equivalence.skeletonIsoCat (e : C ≌ D) : IsoCat (Skeleton C) (Skeleton D)`: an equivalence of categories induces an `IsoCat` between their skeletons.
It also updates the module docstring of `Skeletal.lean` to include these declarations.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
new-contributor
|
67/8 |
Mathlib/CategoryTheory/EssentiallySmall.lean,Mathlib/CategoryTheory/Skeletal.lean |
2 |
23 |
['Zeta-Wu', 'github-actions', 'joelriou', 'robin-carlier'] |
joelriou assignee:joelriou |
0-33236 9 hours ago |
14-82659 14 days ago |
17-11226 17 days |
| 43281 |
keyframe41 author:keyframe41 |
feat(NumberTheory/DiophantineApproximation): prove Hurwitz's approximation theorem |
Prove **Hurwitz's approximation theorem**: for irrational `ξ`, the set of rationals `q` with `|ξ - q| < 1 / (√5 * q.den ^ 2)` is infinite.
This strengthens `Real.infinite_rat_abs_sub_lt_one_div_den_sq_of_irrational` from`Mathlib/NumberTheory/DiophantineApproximation/Basic.lean`, which gives the same statement with constant `1` instead of `√5`. The constant `√5` is optimal, though the sharpness (using the golden ratio) is not included here.
The proof avoids continued fractions and opts for Farey brackets (quadruples `p/q < ξ < r/s` with `q * r - p * s = 1`) packaged as `Real.Hurwitz.IsFarey`. It uses the fact that at least one of `p/q`, `r/s`, and the mediant `(p + r)/(q + s)` satisfies the bound, as if not, we can contradict the irrationality of `√5`. By creating brackets of arbitrarily small width, infinitude follows by the same argument as in `Basic.lean`.
Some design choices:
* No `GenContFract` to avoid continued fractions/recursive sequences. This also follows the spirit of `Basic.lean`, which defines its own `Real.convergent` rather than building Legendre's theorem on `GenContFract.convs`.
* `Real.Hurwitz` namespace. Mirrors `Real.ContfracLegendre` in `Basic.lean` by putting the main result in `Real` and the technical material in a secondary namespace.
* `IsGoodApprox` is stated without division ** as `|y * ξ - x| * y * √5 < 1` for easier manipulation and linked to the quotient form in the actual theorem using `Real.Hurwitz.isGoodApprox_div_bound`.
---
I used Claude (Anthropic) which suggested the overall proof strategy/lemmas and reviewed naming and documentation against the mathlib conventions. All proofs are my own. As a first-time contributor, AI was also used to help in learning 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
new-contributor
|
390/0 |
Mathlib.lean,Mathlib/NumberTheory/DiophantineApproximation/Hurwitz.lean |
2 |
11 |
['SnirBroshi', 'github-actions'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
0-33232 9 hours ago |
1-10658 1 day ago |
1-11737 1 day |
| 36323 |
SproutSeeds author:SproutSeeds |
feat(Inversion): discontinuity and center/global fderiv formulas |
Part of #5939
Adds the discontinuity-at-center lemma for inversion and derives the center/global `fderiv` formulas from it. Rebased the inversion follow up onto current master after #36313 merged, removing the duplicated `Basic.lean` history and leaving only the intended `Calculus.lean` changes.
The incremental scope above #36313 is limited to `Mathlib/Geometry/Euclidean/Inversion/Calculus.lean`.
## Verification
- `lake build Mathlib.Geometry.Euclidean.Inversion.Calculus`
- `lake exe lint-style Mathlib.Geometry.Euclidean.Inversion.Calculus`
- `git diff --check`
Tools used: Codex 5.3 extra high
---
Happy to adjust naming, placement, or proof style based on maintainer preference.
|
t-euclidean-geometry
new-contributor
LLM-generated
|
22/0 |
Mathlib/Geometry/Euclidean/Inversion/Calculus.lean |
1 |
4 |
['SproutSeeds', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-32343 8 hours ago |
22-25964 22 days ago |
22-25844 22 days |
| 42355 |
sankalpsthakur author:sankalpsthakur |
fix(NormNum): stop after a location closes the goal |
`norm_num at h1 h2 ...` (and other tactics built on `Lean.Elab.Tactic.withNondepPropLocation`) unconditionally processed every hypothesis in the location list, then the target. If an earlier hypothesis closed the goal (e.g. `norm_num` found `h1` to already be `False`), processing continued against an already-closed goal instead of stopping.
Stops iterating once `getGoals` is empty.
Closes #28703.
---------
Note. `withNondepPropLocation` currently has no other callers in the Mathlib tree besides its own definition file.
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. |
new-contributor
LLM-generated
t-meta
|
18/2 |
Mathlib/Util/AtLocation.lean,MathlibTest/Tactic/NormNum/Basic.lean,MathlibTest/Tactic/ReduceModChar.lean |
3 |
21 |
['github-actions', 'grunweg', 'mathlib-merge-conflicts', 'sankalpsthakur', 'thorimur'] |
thorimur assignee:thorimur |
0-31529 8 hours ago |
5-6881 5 days ago |
13-15775 13 days |
| 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
|
59/1 |
Mathlib/Data/List/PeriodicityLemma.lean |
1 |
8 |
['SnirBroshi', 'github-actions', 'theebayuser'] |
nobody |
0-21855 6 hours ago |
46-10505 46 days ago |
46-10385 46 days |
| 43275 |
MaxFeldman1 author:MaxFeldman1 |
feat(Topology/Maps): add `Continuous.isClosed_graph` and `continuous_of_isClosed_graph` |
Add new results relating continuity of `f : X → Y` to closedness of `Function.graph f` into `Topology/Maps`
* `Continuous.isClosed_graph`: when Y is Hausdorff and f is continuous then f has a closed graph.
* `continuous_of_isClosed_graph`: when Y is a compact space and f has a closed graph then f is continuous.
* `continuous_iff_isClosed_graph`: the bidirectional result when Y is both compact and Hausdorff.
I started by placing these functions in a new file but have after feedback have changed to put these into existing files, specifically `Continuous.isClosed_graph` is in `Mathlib/Topology/Separation/Hausdorff.lean` and the other two are in `Mathlib/Topology/Maps/Proper/Basic.lean`
AI usage: I drafted the theorem statements. Claude Fable 5 modified naming and style to match mathlib conventions, chose the file placement, and wrote the proofs, which I reviewed step by step.
|
t-topology
new-contributor
LLM-generated
|
26/0 |
Mathlib/Topology/Maps/Proper/Basic.lean,Mathlib/Topology/Separation/Hausdorff.lean |
2 |
13 |
['MaxFeldman1', 'github-actions', 'grunweg', 'mcdoll', 'scholzhannah'] |
scholzhannah assignee:scholzhannah |
0-21842 6 hours ago |
0-25978 7 hours ago |
0-58284 16 hours |
| 41915 |
theebayuser author:theebayuser |
feat(Data/List): infixes, the enumerator of contiguous factors |
Hello, this PR extends `Mathlib/Data/List/Infix.lean` with the missing third enumerator alongside `inits` and `tails`:
* `infixes l` — all contiguous factors (infixes) of `l`, with multiplicity, as every prefix of every suffix, and
* its membership characterization and basic API:
* `mem_infixes` (`@[simp]`) — `s ∈ t.infixes ↔ s <:+: t`, the infix analogue of `mem_inits`/`mem_tails`
* `infixes_nil`, `infixes_cons`, `length_infixes_cons`, `nil_mem_infixes`, `self_mem_infixes`, `infixes_ne_nil`.
This gives `∃ s, s <:+: t ∧ P s` and `∀ s, s <:+: t → P s` executable bounded-search forms (e.g. deciding repetition-freeness of a fixed word by `decide`), 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
|
38/3 |
Mathlib/Data/List/Infix.lean |
1 |
3 |
['github-actions', 'theebayuser'] |
nobody |
0-19803 5 hours ago |
45-23720 45 days ago |
45-23600 45 days |
| 43321 |
owenpkent author:owenpkent |
feat(RingTheory/Polynomial/RationalRoot): rational root theorem with multiplicity |
This PR adds the rational root theorem with multiplicity to
`Mathlib/RingTheory/Polynomial/RationalRoot.lean`:
- `den_pow_rootMultiplicity_dvd_leadingCoeff`: if `r : K` is a root of `p : A[X]` (`A` a UFD, `K`
its fraction field) with multiplicity `m = rootMultiplicity r (p.map (algebraMap A K))`, then
`(den A r) ^ m ∣ p.leadingCoeff`;
- `prod_den_pow_rootMultiplicity_dvd_leadingCoeff`: the multi-point version, `∏ r ∈ s, (den A r) ^
rootMultiplicity r ∣ p.leadingCoeff` over any finite set `s : Finset K` (the denominators need
**not** be pairwise coprime in `A`; the recombination happens on the polynomial side, where the
root factors at distinct points are pairwise coprime over `K`);
- `den_mul_X_sub_C_num_pow_rootMultiplicity_dvd`: the `A`-level form both corollaries come from,
`(C (den A r) * X - C (num A r)) ^ m ∣ p` in `A[X]`.
These generalize the existing multiplicity-one statement `den_dvd_of_is_root`: at `m = 1` the new
theorem recovers it exactly (a guard `example` confirmed this against the branch). Two supporting
lemmas travel with them, placed in `Content.lean`, whose existing content they extend:
- `Polynomial.IsPrimitive.pow` and `Polynomial.isPrimitive_prod`: powers and finite
products of primitive polynomials stay primitive.
**Proof route.** The reduced linear factor `C (den A r) * X - C (num A r)` is primitive (a constant
divisor of both coefficients divides the reduced numerator/denominator pair, hence is a unit) and,
over `K`, a unit multiple of `X - C r`. Its `rootMultiplicity`-power therefore divides `p.map
(algebraMap A K)` (`pow_rootMultiplicity_dvd`), and one-sided Gauss descent (the existing
`IsPrimitive.dvd_of_fraction_map_dvd_fraction_map`) brings the divisibility back down to `A`;
multiplicativity of the leading coefficient finishes. The multi-point case recombines the same
argument over a product of linear factors that are pairwise coprime over `K`
(`isCoprime_X_sub_C_of_isUnit_sub`, `Finset.prod_dvd_of_coprime`).
**A hypothesis note.** `Polynomial.IsPrimitive.pow` / `Polynomial.isPrimitive_prod` are stated
under `[NormalizedGCDMonoid R]`, matching the hypothesis level of their host section in
`Content.lean` (neither proof needs anything UFD-specific). The six `RationalRoot.lean`
declarations (three public, and three `private` helpers about the reduced linear factor:
`isPrimitive_den_mul_X_sub_C_num`, `map_den_mul_X_sub_C_num`,
`leadingCoeff_den_mul_X_sub_C_num`) need only the file's existing
`UniqueFactorizationMonoid A` context: where a
`NormalizedGCDMonoid A` instance is required to invoke the `Content.lean` lemmas, the proofs
materialize one locally via `let : NormalizedGCDMonoid A := Nonempty.some inferInstance` (the
`Nonempty` instance comes from `UniqueFactorizationMonoid A` through `IsGCDMonoid A`, in scope via
the file's existing `RingTheory.Localization.NumDen` import), the same idiom `GaussLemma.lean`
already uses. The statements are instance-independent.
All eight new declarations (two in `Content.lean`, six in `RationalRoot.lean`) build green and
`#print axioms` clean (`[propext, Classical.choice, Quot.sound]`; no `sorryAx`, no
`native_decide`) on master commit `8acb872c31` (toolchain v4.34.0-rc2), with `lake exe lint-style`
and the batteries env linter (`runLinter`) passing on both touched modules, and all direct
downstream importers rebuilt green. Three `public import`s are added to `RationalRoot.lean`
(`RingTheory.Polynomial.GaussLemma`, `Algebra.Polynomial.BigOperators`,
`RingTheory.Coprime.Lemmas`); each is used directly by the new proofs (`shake` no longer exists as
a lake executable on current master, so no automated minimization pass was run).
**Import-graph cost: zero downstream.** The three added imports grow `RationalRoot.lean`'s own
transitive closure by 30 modules (1614 -> 1644), mostly the `FieldTheory.SplittingField` /
`IntermediateField` / `Minpoly` cone that `GaussLemma.lean` pulls in. That growth does not
propagate: `RationalRoot.lean` has exactly three importers in Mathlib
(`RingTheory/Polynomial/IsIntegral.lean`, `RingTheory/DedekindDomain/Basic.lean`,
`NumberTheory/Niven.lean`), and all three already import `GaussLemma` and
`SplittingField.Construction` transitively today, so no file in Mathlib gains an import from this
PR. If a maintainer would still rather keep `RationalRoot.lean` light, the six declarations move to
a new `RingTheory/Polynomial/RationalRootMultiplicity.lean` without any proof change; I am happy to
do that on request.
---
**AI use disclosure** (per Mathlib's contribution guidelines): this generalization was developed in
a personal research project with the help of an AI coding agent (Claude Code). The agent developed
the multiplicity generalization and its proof (building on the existing single-multiplicity
`den_dvd_of_is_root`), then ported it directly onto Mathlib's own source files: placing the two
primitivity lemmas in `Content.lean`'s existing `NormalizedGCDMonoid` section (a weaker hypothesis
than the UFD one the standalone draft used; neither proof needs anything UFD-specific), adapting
the imports to the module system, and rebasing onto current master. During the rebase the agent
found that Mathlib had independently generalized
`IsPrimitive.dvd_of_fraction_map_dvd_fraction_map` to the one-sided form an earlier draft of this
PR supplied as a new lemma, so that lemma was dropped and the proofs call the existing one. Build
green, `#print axioms` clean, and linters passing were confirmed directly against Mathlib's source
tree. The underlying result is a natural generalization of an existing Mathlib theorem, and every
proof step uses only existing Mathlib API. I have reviewed and understand the proofs, take
responsibility for the content, and will respond to review in my own words.
|
t-ring-theory
new-contributor
LLM-generated
|
129/1 |
Mathlib/RingTheory/Polynomial/Content.lean,Mathlib/RingTheory/Polynomial/RationalRoot.lean |
2 |
2 |
['github-actions'] |
nobody |
0-14739 4 hours ago |
0-44295 12 hours ago |
0-44175 12 hours |
| 43318 |
wpegden author:wpegden |
doc(1000): add the strong and weak perfect graph theorems |
Adds external-formalization entries for Q16680059 (strong perfect graph theorem) and Q2800071 (perfect graph theorem), both formalized in Lean 4 at https://github.com/wpegden/spgt with commit-pinned permalinks.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 |
8/0 |
docs/1000.yaml |
1 |
6 |
['github-actions', 'thorimur', 'wpegden', 'wwylele'] |
nobody |
0-13702 3 hours ago |
0-48509 13 hours ago |
0-48389 13 hours |
| 42839 |
JadAbouHawili author:JadAbouHawili |
feat(Combinatorics/SimpleGraph/Connectivity): simple graph is 2-edge-connected iff it has no bridge |
This PR proves the equivalence of a graph being 2-edge-connected iff it has no bridge resolving the relevant TODO.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
|
13/3 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean |
1 |
33 |
['JadAbouHawili', 'SnirBroshi', 'github-actions'] |
nobody |
0-9113 2 hours ago |
13-6578 13 days ago |
16-49559 16 days |
| 43297 |
aebrose author:aebrose |
feat(LinearAlgebra/Dimension/DivisionRing): lemmas about ranks of submodules |
We add four lemmas about ranks of submodules which were missing. We also cleaned up the module docstring and unused universes.
Co-authored-by: Justus Springer <justusspringer@gmx.de>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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
large-import
maintainer-merge
label:t-algebra$ |
50/7 |
Mathlib/LinearAlgebra/Dimension/DivisionRing.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean |
2 |
10 |
['YaelDillies', 'aebrose', 'github-actions', 'wwylele'] |
nobody |
0-7446 2 hours ago |
0-8556 2 hours ago |
0-25760 7 hours |
| 43286 |
JX-Mo author:JX-Mo |
feat(GroupTheory): add `LeftFiniteDoubleCoset` for Hecke theory |
This PR introduces a finiteness condition `DoubleCoset.IsLeftFinite` on double cosets and its bundled version `DoubleCoset₀`, which allows us to describe `Hom_G(k[G ⧸ H₁], k[G ⧸ H₂])` as the free module `k[DoubleCoset₀ H₁ H₂]`.
For a triple `(H₁, H₂, g)`, the property `DoubleCoset.IsLeftFinite H₁ H₂ g` says that the double coset H₁gH₂ admits a finite decomposition into left cosets, i.e. the set `{xH₂ | H₁xH₂ = H₁gH₂}` is finite. The collection of all such double cosets is bundled into a type `DoubleCoset₀`. We provide some finiteness instances which help define convolution product of double cosets.
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.
- [x] depends on: #43278
- [ ] depends on: #43328
|
t-group-theory
new-contributor
|
267/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Hecke/LeftFiniteDoubleCoset.lean |
2 |
3 |
['Whysoserioushah', 'github-actions'] |
nobody |
0-184 3 minutes ago |
1-4820 1 day ago |
1-6742 1 day |
This page collects anonymous visit counts for usage reporting (no cookies, no IP addresses stored). See the Mathlib Initiative privacy policy.