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 |
115-64730 3 months ago |
240-81838 240 days ago |
240-81832 240 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 |
111-64731 3 months ago |
198-4186 198 days ago |
200-38466 200 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 |
96-30716 3 months ago |
96-31549 96 days ago |
96-31915 96 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 |
94-41120 3 months ago |
97-79364 97 days ago |
97-79358 97 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 |
91-74044 2 months ago |
91-75480 91 days ago |
91-76007 91 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 |
88-51588 2 months ago |
88-55049 88 days ago |
88-55043 88 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 |
85-64086 2 months ago |
85-66136 85 days ago |
94-11378 94 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 |
81-79841 2 months ago |
81-81564 81 days ago |
81-85585 81 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 |
80-64731 2 months ago |
126-9134 126 days ago |
177-7544 177 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 |
76-49901 2 months ago |
79-86127 79 days ago |
79-86206 79 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 |
75-74029 2 months ago |
90-76639 90 days ago |
90-76919 90 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 |
72-67262 2 months ago |
72-68451 72 days ago |
72-68445 72 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 |
72-12791 2 months ago |
72-13337 72 days ago |
76-15785 76 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 |
70-39241 2 months ago |
71-83470 71 days ago |
71-84015 71 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 |
70-11935 2 months ago |
70-13299 70 days ago |
70-13293 70 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 |
69-62949 2 months ago |
69-65204 69 days ago |
69-65198 69 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 |
69-34517 2 months ago |
69-35106 69 days ago |
69-35100 69 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 |
66-79695 2 months ago |
66-81362 66 days ago |
66-82803 66 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 |
66-40638 2 months ago |
67-68131 67 days ago |
67-68125 67 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 |
65-80400 2 months ago |
65-82290 65 days ago |
65-82284 65 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 |
65-20901 2 months ago |
70-39246 70 days ago |
70-39282 70 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 |
65-11153 2 months ago |
65-11153 65 days ago |
81-53424 81 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 |
64-5484 2 months ago |
64-7927 64 days ago |
64-15698 64 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 |
64-2280 2 months ago |
64-3013 64 days ago |
64-3007 64 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 |
63-22583 2 months ago |
63-23451 63 days ago |
65-23554 65 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 |
61-57666 1 month ago |
61-58235 61 days ago |
61-58229 61 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 |
59-54293 1 month ago |
59-54861 59 days ago |
60-59145 60 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 |
59-41637 1 month ago |
64-42364 64 days ago |
66-60817 66 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 |
59-40206 1 month ago |
59-40812 59 days ago |
59-40806 59 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 |
58-9041 1 month ago |
58-11641 58 days ago |
58-11651 58 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 |
57-80960 1 month ago |
57-81537 57 days ago |
57-81531 57 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 |
57-62452 1 month ago |
57-62973 57 days ago |
65-45928 65 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 |
57-16762 1 month ago |
82-13770 82 days ago |
219-17512 219 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 |
57-10665 1 month ago |
57-16068 57 days ago |
57-16062 57 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 |
56-79664 1 month ago |
56-79719 56 days ago |
56-79714 56 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 |
55-15934 1 month ago |
55-16479 55 days ago |
55-19449 55 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 |
55-11103 1 month ago |
55-11159 55 days ago |
55-11153 55 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 |
55-11102 1 month ago |
55-11129 55 days ago |
55-11123 55 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 |
55-10606 1 month ago |
55-10606 55 days ago |
55-10600 55 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 |
55-8834 1 month ago |
55-10163 55 days ago |
66-40619 66 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 |
54-53644 1 month ago |
54-54201 54 days ago |
63-27402 63 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 |
54-50084 1 month ago |
54-58934 54 days ago |
54-60269 54 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 |
53-65488 1 month ago |
53-79231 53 days ago |
53-79225 53 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 |
53-51869 1 month ago |
53-55955 53 days ago |
53-55949 53 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 |
50-64732 1 month ago |
72-31796 72 days ago |
103-81286 103 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 |
49-25447 1 month ago |
49-63417 49 days ago |
49-63411 49 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 |
49-25428 1 month ago |
49-63417 49 days ago |
49-63411 49 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 |
48-15242 1 month ago |
48-16026 48 days ago |
48-24491 48 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 |
46-46284 1 month ago |
46-47136 46 days ago |
46-47130 46 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 |
46-17683 1 month ago |
46-18565 46 days ago |
46-18559 46 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 |
45-68377 1 month ago |
45-68377 45 days ago |
45-68371 45 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 |
45-56184 1 month ago |
46-6266 46 days ago |
46-6283 46 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 |
45-21007 1 month ago |
45-23179 45 days ago |
45-23173 45 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 |
45-15506 1 month ago |
94-10264 94 days ago |
94-10258 94 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 |
45-15408 1 month ago |
48-53445 48 days ago |
48-53439 48 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 |
44-66127 1 month ago |
44-66759 44 days ago |
60-27243 60 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 |
44-52965 1 month ago |
45-17036 45 days ago |
45-17030 45 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 |
44-37877 1 month ago |
44-38443 44 days ago |
44-38437 44 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 |
44-3018 1 month ago |
44-10048 44 days ago |
44-10042 44 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 |
43-14566 1 month ago |
44-42374 44 days ago |
44-42368 44 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 |
43-14540 1 month ago |
44-41312 44 days ago |
44-44514 44 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 |
43-14540 1 month ago |
44-78343 44 days ago |
44-79161 44 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 |
43-14533 1 month ago |
45-34458 45 days ago |
45-34452 45 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 |
41-81605 1 month ago |
41-83380 41 days ago |
41-84584 41 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 |
40-70604 1 month ago |
46-18793 46 days ago |
46-43515 46 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 |
40-66303 1 month ago |
40-66999 40 days ago |
40-66993 40 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 |
39-25187 1 month ago |
56-1475 56 days ago |
56-1469 56 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 |
38-55000 1 month ago |
39-64586 39 days ago |
39-64580 39 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 |
37-68488 1 month ago |
38-7132 38 days ago |
40-69083 40 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 |
37-2198 1 month ago |
37-2816 37 days ago |
79-22505 79 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 |
36-21132 1 month ago |
36-21132 36 days ago |
36-21126 36 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 |
35-32475 1 month ago |
35-81536 35 days ago |
35-81530 35 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 |
35-23770 1 month ago |
35-31249 35 days ago |
35-33793 35 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 |
35-6244 1 month ago |
35-8664 35 days ago |
35-10416 35 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 |
35-4865 1 month ago |
35-8286 35 days ago |
35-11352 35 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 |
34-20916 1 month ago |
40-65049 40 days ago |
70-60120 70 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 |
34-1903 1 month ago |
34-5158 34 days ago |
34-8453 34 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 |
33-86202 1 month ago |
40-7700 40 days ago |
40-11688 40 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 |
33-79494 1 month ago |
41-70315 41 days ago |
41-70855 41 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 |
33-34447 1 month ago |
33-35079 33 days ago |
85-43538 85 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 |
32-42286 1 month ago |
32-45444 32 days ago |
61-18614 61 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 |
32-6704 1 month ago |
32-9080 32 days ago |
32-9074 32 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 |
31-72849 1 month ago |
31-76370 31 days ago |
31-76364 31 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 |
31-65335 1 month ago |
31-65389 31 days ago |
31-66427 31 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 |
31-38447 1 month ago |
32-35264 32 days ago |
32-35258 32 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 |
31-15640 1 month ago |
54-64626 54 days ago |
54-65141 54 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 |
31-15007 1 month ago |
31-16557 31 days ago |
31-16551 31 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 |
31-6401 1 month ago |
31-7101 31 days ago |
43-34505 43 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 |
31-5443 1 month ago |
54-77010 54 days ago |
54-77004 54 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 |
31-5227 1 month ago |
31-8535 31 days ago |
31-10947 31 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 |
30-40024 30 days ago |
30-41882 30 days ago |
30-43379 30 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 |
30-38347 30 days ago |
30-40075 30 days ago |
30-43102 30 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 |
30-34918 30 days ago |
30-51525 30 days ago |
30-53557 30 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 |
30-31578 30 days ago |
30-32915 30 days ago |
30-32909 30 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 |
30-30694 30 days ago |
30-31781 30 days ago |
30-31775 30 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 |
30-29653 30 days ago |
83-61724 83 days ago |
85-5148 85 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 |
30-29384 30 days ago |
30-33733 30 days ago |
30-35290 30 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 |
30-28049 30 days ago |
30-33751 30 days ago |
30-36237 30 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 |
30-25887 30 days ago |
37-37216 37 days ago |
37-37210 37 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 |
30-21841 30 days ago |
93-8748 93 days ago |
93-8835 93 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 |
30-16192 30 days ago |
30-18076 30 days ago |
77-42536 77 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 |
30-1026 30 days ago |
30-1643 30 days ago |
33-5329 33 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 |
29-74449 29 days ago |
29-75612 29 days ago |
29-75606 29 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 |
29-72601 29 days ago |
56-66214 56 days ago |
56-66208 56 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 |
29-31497 29 days ago |
29-32105 29 days ago |
29-32099 29 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 |
29-29907 29 days ago |
29-31668 29 days ago |
29-31662 29 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 |
29-29143 29 days ago |
29-29963 29 days ago |
60-19476 60 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 |
29-28398 29 days ago |
29-32882 29 days ago |
29-32876 29 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 |
29-8879 29 days ago |
29-10898 29 days ago |
29-12240 29 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 |
28-76760 28 days ago |
38-11793 38 days ago |
40-53307 40 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 |
28-70209 28 days ago |
28-72277 28 days ago |
28-72271 28 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 |
28-69632 28 days ago |
28-69632 28 days ago |
28-69626 28 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 |
28-41409 28 days ago |
28-41942 28 days ago |
43-55278 43 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 |
28-39660 28 days ago |
28-39660 28 days ago |
34-37930 34 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 |
28-39216 28 days ago |
28-41398 28 days ago |
28-43083 28 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 |
28-24605 28 days ago |
28-26809 28 days ago |
28-30576 28 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 |
28-22526 28 days ago |
28-23124 28 days ago |
28-23118 28 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 |
28-11962 28 days ago |
60-83479 60 days ago |
62-51775 62 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 |
27-86103 27 days ago |
68-71768 68 days ago |
68-71762 68 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 |
27-82237 27 days ago |
69-66782 69 days ago |
69-66776 69 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 |
27-71995 27 days ago |
27-75068 27 days ago |
30-61699 30 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 |
27-60852 27 days ago |
27-61494 27 days ago |
27-64122 27 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 |
27-9864 27 days ago |
27-12559 27 days ago |
27-12673 27 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 |
26-80902 26 days ago |
28-63803 28 days ago |
28-63797 28 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 |
26-23804 26 days ago |
26-26272 26 days ago |
26-27084 26 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 |
26-13841 26 days ago |
26-26607 26 days ago |
26-26601 26 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 |
26-9240 26 days ago |
26-71508 26 days ago |
26-72113 26 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 |
26-5465 26 days ago |
26-8232 26 days ago |
107-51033 107 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 |
25-65427 25 days ago |
25-66375 25 days ago |
25-66369 25 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 |
25-64732 25 days ago |
37-27194 37 days ago |
142-20430 142 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 |
25-35715 25 days ago |
27-75391 27 days ago |
27-75436 27 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 |
25-32260 25 days ago |
31-35970 31 days ago |
34-54156 34 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 |
25-7214 25 days ago |
26-32390 26 days ago |
26-33062 26 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 |
25-6437 25 days ago |
55-9729 55 days ago |
68-29262 68 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 |
24-84380 24 days ago |
64-30110 64 days ago |
66-61990 66 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 |
24-80940 24 days ago |
29-17347 29 days ago |
29-17341 29 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 |
24-79925 24 days ago |
24-80519 24 days ago |
24-80703 24 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 |
24-75599 24 days ago |
24-85088 24 days ago |
39-78689 39 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 |
24-64725 24 days ago |
46-9523 46 days ago |
57-84082 57 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 |
24-37172 24 days ago |
24-85535 24 days ago |
24-85529 24 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 |
24-34083 24 days ago |
25-47071 25 days ago |
25-61941 25 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 |
24-12854 24 days ago |
24-16208 24 days ago |
24-16204 24 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 |
24-12663 24 days ago |
24-14195 24 days ago |
31-28966 31 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 |
24-1189 24 days ago |
24-3000 24 days ago |
25-6285 25 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 |
23-71859 23 days ago |
23-77138 23 days ago |
23-77134 23 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 |
23-71064 23 days ago |
23-71123 23 days ago |
23-71118 23 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 |
23-69355 23 days ago |
23-70921 23 days ago |
46-5220 46 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 |
23-37840 23 days ago |
31-16772 31 days ago |
31-16766 31 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 |
23-11884 23 days ago |
23-14215 23 days ago |
77-6489 77 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 |
22-66832 22 days ago |
22-81912 22 days ago |
23-62604 23 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 |
22-32090 22 days ago |
22-34404 22 days ago |
56-85688 56 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 |
22-6355 22 days ago |
30-55459 30 days ago |
30-55453 30 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 |
21-76963 21 days ago |
21-78115 21 days ago |
21-83681 21 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 |
21-66492 21 days ago |
22-63628 22 days ago |
22-63622 22 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 |
21-30509 21 days ago |
21-33456 21 days ago |
25-74831 25 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 |
21-19511 21 days ago |
21-19868 21 days ago |
21-19862 21 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 |
21-12053 21 days ago |
23-73429 23 days ago |
23-73708 23 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 |
21-4329 21 days ago |
22-79277 22 days ago |
22-79271 22 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 |
21-4283 21 days ago |
21-8177 21 days ago |
64-51251 64 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 |
20-82165 20 days ago |
21-55994 21 days ago |
21-55988 21 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 |
20-75330 20 days ago |
32-35478 32 days ago |
32-35473 32 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 |
20-65626 20 days ago |
53-61884 53 days ago |
53-61878 53 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 |
20-64732 20 days ago |
42-33249 42 days ago |
42-38013 42 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 |
20-42219 20 days ago |
34-39686 34 days ago |
34-52327 34 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 |
20-40584 20 days ago |
20-41741 20 days ago |
20-41735 20 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 |
20-23228 20 days ago |
20-23859 20 days ago |
20-24530 20 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 |
19-83318 19 days ago |
19-85451 19 days ago |
19-85445 19 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 |
19-78609 19 days ago |
19-81251 19 days ago |
19-81285 19 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 |
19-78428 19 days ago |
19-79581 19 days ago |
55-21301 55 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 |
19-52394 19 days ago |
19-53015 19 days ago |
58-8521 58 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 |
19-23757 19 days ago |
19-23851 19 days ago |
61-34770 61 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 |
18-36252 18 days ago |
18-38701 18 days ago |
18-38812 18 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 |
18-32635 18 days ago |
32-27664 32 days ago |
32-27658 32 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 |
18-32099 18 days ago |
18-50343 18 days ago |
18-50337 18 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 |
18-22562 18 days ago |
18-24503 18 days ago |
20-41121 20 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 |
18-12838 18 days ago |
29-78928 29 days ago |
30-1261 30 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 |
18-12513 18 days ago |
18-20776 18 days ago |
18-23195 18 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 |
18-1591 18 days ago |
21-75625 21 days ago |
26-14199 26 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 |
17-85885 17 days ago |
39-4000 39 days ago |
51-47177 51 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 |
17-72668 17 days ago |
20-55179 20 days ago |
20-56547 20 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 |
17-18449 17 days ago |
17-22876 17 days ago |
94-67736 94 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 |
17-17370 17 days ago |
55-82887 55 days ago |
59-20302 59 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 |
17-9256 17 days ago |
17-9256 17 days ago |
107-21489 107 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 |
17-4462 17 days ago |
21-10988 21 days ago |
21-10982 21 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 |
17-2514 17 days ago |
17-2568 17 days ago |
17-2563 17 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 |
16-83997 16 days ago |
17-580 17 days ago |
17-574 17 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 |
16-82695 16 days ago |
16-85010 16 days ago |
16-85177 16 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 |
16-80406 16 days ago |
17-11068 17 days ago |
17-11064 17 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 |
16-73008 16 days ago |
16-75923 16 days ago |
16-83215 16 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 |
16-66980 16 days ago |
27-65330 27 days ago |
40-56842 40 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 |
16-47579 16 days ago |
26-50653 26 days ago |
26-50647 26 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 |
16-36988 16 days ago |
16-39470 16 days ago |
16-39464 16 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 |
16-36184 16 days ago |
16-36918 16 days ago |
16-36912 16 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 |
16-35665 16 days ago |
16-38943 16 days ago |
16-38937 16 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 |
16-27010 16 days ago |
16-29091 16 days ago |
16-29085 16 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 |
16-1009 16 days ago |
36-26121 36 days ago |
49-55535 49 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 |
15-84949 15 days ago |
15-85486 15 days ago |
19-5882 19 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 |
15-82298 15 days ago |
17-16532 17 days ago |
19-39327 19 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 |
15-79599 15 days ago |
15-84745 15 days ago |
15-84739 15 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 |
15-78225 15 days ago |
15-80656 15 days ago |
106-43961 106 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 |
15-72810 15 days ago |
15-73392 15 days ago |
15-73386 15 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 |
15-65630 15 days ago |
49-45993 49 days ago |
49-74681 49 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 |
15-65621 15 days ago |
71-11051 71 days ago |
71-11320 71 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 |
15-65620 15 days ago |
69-41301 69 days ago |
69-41830 69 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 |
15-65618 15 days ago |
46-37340 46 days ago |
46-82767 46 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 |
15-64722 15 days ago |
15-66156 15 days ago |
157-68306 157 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 |
15-52453 15 days ago |
15-55757 15 days ago |
15-55751 15 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 |
15-48498 15 days ago |
15-49917 15 days ago |
44-31251 44 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 |
15-45815 15 days ago |
31-26352 31 days ago |
57-15305 57 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 |
15-27171 15 days ago |
16-42717 16 days ago |
22-50499 22 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 |
15-3783 15 days ago |
15-49681 15 days ago |
15-50216 15 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 |
14-65625 14 days ago |
43-9969 43 days ago |
43-9963 43 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 |
14-65624 14 days ago |
24-15171 24 days ago |
24-15165 24 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 |
14-64727 14 days ago |
70-14512 70 days ago |
107-69463 107 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 |
14-42048 14 days ago |
18-39620 18 days ago |
18-39614 18 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 |
14-32482 14 days ago |
30-25284 30 days ago |
30-25478 30 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 |
14-30644 14 days ago |
14-31558 14 days ago |
86-72670 86 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 |
14-17565 14 days ago |
42-42950 42 days ago |
42-42996 42 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 |
14-12982 14 days ago |
14-13032 14 days ago |
14-13067 14 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 |
14-10333 14 days ago |
83-80177 83 days ago |
83-80516 83 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 |
14-9999 14 days ago |
14-18307 14 days ago |
14-18301 14 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 |
13-65633 13 days ago |
112-33191 112 days ago |
112-33785 112 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 |
13-65630 13 days ago |
74-58900 74 days ago |
74-58975 74 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 |
13-65628 13 days ago |
59-15284 59 days ago |
59-15278 59 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 |
13-65625 13 days ago |
20-25145 20 days ago |
20-25139 20 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 |
13-64732 13 days ago |
36-1964 36 days ago |
36-1958 36 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 |
13-32873 13 days ago |
13-35310 13 days ago |
57-34936 57 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 |
13-28725 13 days ago |
46-23699 46 days ago |
46-23693 46 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 |
13-27910 13 days ago |
13-28533 13 days ago |
46-22722 46 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 |
13-27431 13 days ago |
13-28022 13 days ago |
70-26381 70 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 |
13-25744 13 days ago |
20-3539 20 days ago |
166-64985 166 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 |
13-16601 13 days ago |
13-58576 13 days ago |
13-58570 13 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 |
12-78677 12 days ago |
39-85495 39 days ago |
39-85489 39 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 |
12-65634 12 days ago |
50-85986 50 days ago |
154-41597 154 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 |
12-64723 12 days ago |
30-75289 30 days ago |
56-66477 56 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 |
12-62080 12 days ago |
12-67281 12 days ago |
15-42501 15 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 |
12-43723 12 days ago |
21-959 21 days ago |
23-37425 23 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 |
12-43255 12 days ago |
38-7687 38 days ago |
56-76082 56 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 |
12-42799 12 days ago |
18-54155 18 days ago |
18-71387 18 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 |
12-14389 12 days ago |
22-70293 22 days ago |
22-70287 22 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 |
12-9591 12 days ago |
12-11007 12 days ago |
12-11084 12 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 |
12-3225 12 days ago |
12-6502 12 days ago |
12-6496 12 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 |
11-80227 11 days ago |
11-81470 11 days ago |
19-58095 19 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 |
11-65634 11 days ago |
58-67751 58 days ago |
94-78529 94 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 |
11-65631 11 days ago |
47-52770 47 days ago |
71-36099 71 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 |
11-65628 11 days ago |
95-10399 95 days ago |
95-10563 95 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 |
11-56624 11 days ago |
11-57414 11 days ago |
11-57408 11 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 |
11-51577 11 days ago |
11-52621 11 days ago |
30-9293 30 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 |
11-37703 11 days ago |
24-7354 24 days ago |
31-62849 31 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 |
11-14794 11 days ago |
14-82346 14 days ago |
29-1814 29 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 |
11-10730 11 days ago |
11-11321 11 days ago |
69-26757 69 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 |
11-8474 11 days ago |
13-74421 13 days ago |
13-74415 13 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 |
11-6268 11 days ago |
30-77435 30 days ago |
30-77429 30 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 |
11-4089 11 days ago |
12-19272 12 days ago |
12-83260 12 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 |
11-2297 11 days ago |
11-4702 11 days ago |
11-4696 11 days |
| 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 |
10-77169 10 days ago |
10-78399 10 days ago |
10-82037 10 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 |
10-72755 10 days ago |
11-21150 11 days ago |
11-21144 11 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 |
10-65632 10 days ago |
88-28085 88 days ago |
88-76212 88 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 |
10-65630 10 days ago |
54-6928 54 days ago |
73-1327 73 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 |
10-65629 10 days ago |
60-75506 60 days ago |
64-78895 64 days |
| 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 |
10-65385 10 days ago |
10-66116 10 days ago |
20-40856 20 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 |
10-58861 10 days ago |
27-72539 27 days ago |
54-46026 54 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 |
10-54486 10 days ago |
10-56075 10 days ago |
10-58627 10 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 |
10-40411 10 days ago |
10-40411 10 days ago |
10-40405 10 days |
| 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 |
10-38099 10 days ago |
10-76559 10 days ago |
26-33588 26 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 |
10-21194 10 days ago |
16-31696 16 days ago |
16-31786 16 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 |
10-17537 10 days ago |
10-18157 10 days ago |
10-18151 10 days |
| 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 |
10-12769 10 days ago |
10-15080 10 days ago |
10-15074 10 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 |
10-12149 10 days ago |
41-70420 41 days ago |
41-71083 41 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 |
10-11462 10 days ago |
10-11462 10 days ago |
119-13739 119 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 |
10-9481 10 days ago |
10-10793 10 days ago |
10-10787 10 days |
| 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 |
10-3248 10 days ago |
13-13719 13 days ago |
13-14249 13 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 |
9-81463 9 days ago |
10-16167 10 days ago |
17-12006 17 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 |
9-78199 9 days ago |
24-13968 24 days ago |
28-48467 28 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 |
9-69791 9 days ago |
32-8982 32 days ago |
32-9747 32 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 |
9-66715 9 days ago |
9-68084 9 days ago |
25-65030 25 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 |
9-65631 9 days ago |
14-81022 14 days ago |
14-81420 14 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 |
9-65624 9 days ago |
24-28647 24 days ago |
26-43728 26 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 |
9-65621 9 days ago |
10-38289 10 days ago |
10-38790 10 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 |
9-65620 9 days ago |
10-43046 10 days ago |
10-44239 10 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 |
9-60894 9 days ago |
9-61481 9 days ago |
39-33997 39 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 |
9-51329 9 days ago |
12-63151 12 days ago |
12-63145 12 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 |
9-47127 9 days ago |
9-76683 9 days ago |
9-76677 9 days |
| 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 |
9-42208 9 days ago |
9-43805 9 days ago |
9-43799 9 days |
| 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 |
9-34102 9 days ago |
50-47703 50 days ago |
50-50271 50 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 |
9-33826 9 days ago |
9-34373 9 days ago |
38-56447 38 days |
| 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 |
9-33519 9 days ago |
10-25253 10 days ago |
10-27306 10 days |
| 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/)
|
t-topology |
23/5 |
Mathlib/Geometry/Euclidean/SignedDist.lean,Mathlib/Topology/Algebra/ContinuousAffineMap/Topology.lean |
2 |
2 |
['gasparattila', 'github-actions'] |
nobody |
9-31360 9 days ago |
9-32639 9 days ago |
9-32633 9 days |
| 42138 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): copies into `⊤` and containment in the complete graph |
Add copy constructors mirroring the existing `Copy.bot` API.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #43201
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
38/19 |
Mathlib/Combinatorics/SimpleGraph/Copy.lean |
1 |
10 |
['Ruben-VandeVelde', 'SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mitchell-horner', 'vlad902'] |
nobody |
9-23503 9 days ago |
9-24134 9 days ago |
29-23956 29 days |
| 39834 |
or4nge19 author:or4nge19 |
feat(LinearAlgebra): triangularizability via flags and block-triangular matrices |
Part 2/3 of #39139.
In finite dimension, shows that `⨆ μ, f.maxGenEigenspace μ = ⊤` is equivalent to:
- existence of a `Basis` whose `flag` lies in `f.invtSubmodule`;
- existence of an invariant `Flag`;
- `Matrix.BlockTriangular id` for `LinearMap.toMatrix b b f` in some basis.
Over an algebraically closed field, deduces the above from `IsAlgClosed.splits` on the charpoly. Compared to #39139 we do not introduce new global `IsTriangularizable` (or similar) predicates.
This also fills the previous TODO and replaces/shorten the proof of `iSup_maxGenEigenspace_eq_top` by a charpoly-splitting argument.
- [ ] depends on: #39829 [Part 1/3 of #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
tech debt
label:t-algebra$ |
381/76 |
Mathlib/LinearAlgebra/Basis/Flag.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/Eigenspace/Triangularizable.lean |
3 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
9-12329 9 days ago |
9-12332 9 days ago |
9-13933 9 days |
| 43349 |
Nicola9Falciola author:Nicola9Falciola |
feat(Algebra/FreeAbelianGroup/Finsupp): add api for the coeff of a single element |
---
Add two API lemmas computing the coefficent of the form `of x` for `x : X` in the FreeAbelianGroup.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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$ |
8/0 |
Mathlib/Algebra/FreeAbelianGroup/Finsupp.lean |
1 |
2 |
['github-actions'] |
nobody |
9-11290 9 days ago |
9-15286 9 days ago |
9-15280 9 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 |
9-10196 9 days ago |
12-1702 12 days ago |
37-71667 37 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 |
9-8556 9 days ago |
123-7114 123 days ago |
123-7108 123 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 |
9-3630 9 days ago |
23-12042 23 days ago |
28-64544 28 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 |
12 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'mkaratarakis', 'or4nge19'] |
nobody |
9-3628 9 days ago |
16-31747 16 days ago |
19-37673 19 days |
| 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
|
203/87 |
Cache/Main.lean,Cache/Query.lean,Cache/Requests.lean,Cache/Test.lean,Cache/Warning.lean |
5 |
4 |
['Vierkantor', 'github-actions', 'joneugster', 'marcelolynch'] |
nobody |
9-1836 9 days ago |
45-1194 45 days ago |
45-1188 45 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.
---
- [x] depends on: #42896 [which fixes buggy naming present in Topology/Metrizable/CompletelyMetrizable]
This can be viewed as a companion to #42693, which - under the stronger assumption of the ambient space being Polish - establishes the other direction --- a Gδ subspace of a Polish space is itself Polish.
Together, these give Alexandrov's theorem, characterizing the Polish subspaces of an ambient Polish space as exactly the Gδ ones, and (via `Metric.PiNatEmbed.exists_embedding_to_hilbert_cube`) Polish spaces as exactly the Gδ subsets of the Hilbert cube. If and when both these PRs are committed, I anticipate adding these consequences to Topology/MetricSpace/Polish.lean
LLM usage: I wrote the initial version myself, while using Google's free "AI mode" to help me find relevant lemma names in the codebase, and afterward used helped Claude Opus to review, which led to simplifying some of the arguments. I take full responsibility for the code here
|
t-topology
new-contributor
|
91/0 |
Mathlib.lean,Mathlib/Topology/GDelta/CompletelyMetrizable.lean |
2 |
8 |
['github-actions', 'justin-palumbo', 'mathlib-dependent-issues', 'plp127'] |
nobody |
8-84717 8 days ago |
23-22415 23 days ago |
23-22706 23 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, which strengthens the existing IsOpen.polishSpace.
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.]
---
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 |
8-84657 8 days ago |
30-4453 30 days ago |
30-4447 30 days |
| 42400 |
JovanGerb author:JovanGerb |
feat(Translate): improve error message when translation fails |
This PR improves the error message `to_additive`/`to_dual` gives when the translation fails. In particular, it was previously possible to get a kernel error when the value itself was type correct, but it didn't match with the translated type.
This PR also takes the opportunity to handle `private` and `exposed` more carefully. So, the new error messages will come from checks at the right exporting level. I've also added tests showing that `to_additive` deals with `private` and `exposed` correctly. To do this, the `to_additive` test file was made into a `module`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
175/39 |
Mathlib/Tactic/Translate/Core.lean,MathlibTest/Attribute/ToAdditive/Basic.lean |
2 |
11 |
['JovanGerb', 'github-actions', 'thorimur'] |
thorimur assignee:thorimur |
8-84236 8 days ago |
8-84236 8 days ago |
13-31360 13 days |
| 41776 |
JovanGerb author:JovanGerb |
fix(Order/Heyting/Regular): fix `Lattice` instance diamond |
This PR fixes a diamond in the `Lattice` instance on `Regular`.
It's a bit awkward that `Lattice` does not extend `Min`, so `fast_instance%` doesn't save us here.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
t-order
|
1/2 |
Mathlib/Order/Heyting/Regular.lean |
1 |
10 |
['JovanGerb', 'YaelDillies', 'eric-wieser', 'github-actions', 'j-loreaux'] |
nobody |
8-84210 8 days ago |
8-84210 8 days ago |
30-37782 30 days |
| 42096 |
NoahW314 author:NoahW314 |
feat(Algebra/Order/IsBotOne): add `IsBotOneClass` instances (Prod, Pi, Subsingleton) |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
15/0 |
Mathlib/Algebra/Order/IsBotOne.lean |
1 |
9 |
['NoahW314', 'github-actions', 'leanprover-radar', 'themathqueen'] |
nobody |
8-83400 8 days ago |
9-25484 9 days ago |
47-15627 47 days |
| 42262 |
lakesare author:lakesare |
feat(MeasureTheory/Integral/Bochner/ContinuousLinearMap): add starRingEnd_div_mul_eq_norm, enorm_integral_mul_starRingEnd_comm |
From the Carleson project.
-------
**Upstreaming from Carleson: [/Carleson/ToMathlib/MeasureTheory/Integral/Bochner/ContinuousLinearMap.lean](https://github.com/fpvandoorn/carleson/blob/0072b6e47ec58ac13be0a9f3b7c17e9f3bb1be2e/Carleson/ToMathlib/MeasureTheory/Integral/Bochner/ContinuousLinearMap.lean)**
### In this PR
#### starRingEnd_div_mul_eq_norm
Refactored the body, and generalized a bit (by going from `f x` to `z`).
```lean
-- CARLESON
starRingEnd_div_mul_eq_norm.{u_1, u_2} {α : Type u_1} {𝕜 : Type u_2} [RCLike 𝕜] {f : α → 𝕜} (x : α)
: (starRingEnd 𝕜) (f x / ↑‖f x‖) * f x = ↑‖f x‖
-- MATHLIB
starRingEnd_div_mul_eq_norm.{u_6} {𝕜 : Type u_6} [RCLike 𝕜] (z : 𝕜)
: (starRingEnd 𝕜) (z / ↑‖z‖) * z = ↑‖z‖
```
#### enorm_integral_mul_starRingEnd_comm
Refactored the body
```lean
-- CARLESON
enorm_integral_mul_starRingEnd_comm.{u_1, u_2} {α : Type u_2} [MeasurableSpace α] {μ : Measure α}
{𝕜 : Type u_1} [RCLike 𝕜] {f g : α → 𝕜}
: ‖∫ (x : α), f x * (starRingEnd 𝕜) (g x) ∂μ‖ₑ = ‖∫ (x : α), g x * (starRingEnd 𝕜) (f x) ∂μ‖ₑ
-- MATHLIB
enorm_integral_mul_starRingEnd_comm.{u_1, u_6} {X : Type u_1} [MeasurableSpace X] {μ : Measure X}
{𝕜 : Type u_6} [RCLike 𝕜] {f g : X → 𝕜}
: ‖∫ (x : X), f x * (starRingEnd 𝕜) (g x) ∂μ‖ₑ = ‖∫ (x : X), g x * (starRingEnd 𝕜) (f x) ∂μ‖ₑ
```
___
PS. other lemmas are not upstreamed in this PR, because they should go to other files |
carleson
t-measure-probability
easy
|
8/0 |
Mathlib/MeasureTheory/Integral/Bochner/ContinuousLinearMap.lean |
1 |
3 |
['github-actions', 'lakesare'] |
nobody |
8-78647 8 days ago |
8-79435 8 days ago |
8-79429 8 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 |
14 |
['felixpernegger', 'github-actions', 'lman310', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
8-78636 8 days ago |
8-81849 8 days ago |
20-18693 20 days |
| 43363 |
BoltonBailey author:BoltonBailey |
feat(Data/Nat/Init): dvd_div_of_mul_dvd_right |
This PR adds `Nat.dvd_div_of_mul_dvd_right`, a version of `Nat.dvd_div_of_mul_dvd` with symmetry applied to the multiplication (we also make an alias of the latter to `dvd_div_of_mul_dvd_left` to mirror the API).
This PR was made with the assistance of Claude code, but I have reviewed it 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-data
LLM-generated
|
8/1 |
Mathlib/Data/Nat/Init.lean |
1 |
1 |
['github-actions'] |
nobody |
8-69963 8 days ago |
8-75324 8 days ago |
8-78285 8 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
dynsys
|
52/17 |
Mathlib/Dynamics/Flow.lean,Mathlib/Dynamics/OmegaLimit.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
urkud assignee:urkud |
8-63254 8 days ago |
9-60623 9 days ago |
40-40178 40 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 |
8-41950 8 days ago |
62-21319 62 days ago |
62-21357 62 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'] |
riccardobrasca assignee:riccardobrasca |
8-39952 8 days ago |
10-24522 10 days ago |
48-6194 48 days |
| 43381 |
harahu author:harahu |
chore(Basic/Logic): deduplicate `Prop.exists` and `Prop.forall` |
Claude picked up on `Prop.exists` and `Prop.exists_iff`, as well as `Prop.forall` and `Prop.forall_iff`, being duplicates (up to reordering on the RHS).
In deprecating, we've decided to keep the statement, proof and location of `Prop.exists_iff` and `Prop.forall_iff`:
- Statement: I couldn't find justification for choosing one or the other, so this choice is arbitrary.
- Location: We keep the earlier location out of necessity.
- Proof: The selected proof allows us to avoid importing `Mathlib.Tactic.Convert`.
For the name, we went with `Prop.exists` and `Prop.forall`, since the naming convention isn't clear on the `_iff` suffix being needed.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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/13 |
Mathlib/Basic/Logic/Basic.lean,Mathlib/Basic/Logic/Lemmas.lean,Mathlib/Combinatorics/Quiver/Path.lean,Mathlib/Order/Filter/EventuallyConst.lean,Mathlib/Topology/Order/Category/FrameAdjunction.lean |
5 |
1 |
['github-actions'] |
nobody |
8-37480 8 days ago |
8-37480 8 days ago |
8-37474 8 days |
| 43374 |
plp127 author:plp127 |
chore: remove `WittVector.mk'` |
Override the structure constructor transparencies so that duplicating a `WittVector.mk'` is no longer necessary.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
28/19 |
Mathlib/RingTheory/WittVector/Defs.lean,Mathlib/RingTheory/WittVector/DiscreteValuationRing.lean,Mathlib/RingTheory/WittVector/Domain.lean,Mathlib/RingTheory/WittVector/Frobenius.lean,Mathlib/RingTheory/WittVector/FrobeniusFractionField.lean,Mathlib/RingTheory/WittVector/InitTail.lean,Mathlib/RingTheory/WittVector/IsPoly.lean,Mathlib/RingTheory/WittVector/Teichmuller.lean,Mathlib/RingTheory/WittVector/Truncated.lean,Mathlib/RingTheory/WittVector/Verschiebung.lean |
10 |
1 |
['github-actions'] |
nobody |
8-26921 8 days ago |
8-27921 8 days ago |
8-28010 8 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 |
8-25217 8 days ago |
63-60315 63 days ago |
63-60309 63 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 |
297/10 |
Mathlib/Analysis/Analytic/CPolynomial.lean,Mathlib/Analysis/Normed/Module/Alternating/Basic.lean,Mathlib/Topology/Algebra/Module/Alternating/Basic.lean,Mathlib/Topology/Algebra/Module/Alternating/Topology.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean,Mathlib/Topology/Algebra/Module/Multilinear/Topology.lean |
6 |
15 |
['ADedecker', 'github-actions', 'sgouezel'] |
nobody |
8-25050 8 days ago |
9-8153 9 days ago |
9-31908 9 days |
| 43394 |
harahu author:harahu |
feat(Order/WithBot): add `WithBot.map_lt_map_iff` |
Add `WithBot.map_lt_map_iff`, the `<` analogue of `WithBot.map_le_iff`, for use in a follow-up.
Its natural home is the `LT` section. For symmetry, we also generalize `WithBot.map_le_iff`.
Also rename `map_le_iff` to `map_le_map_iff`, since the operation appears on both sides of the relation. The bare `X_le_iff` form is used throughout Mathlib for the one-sided shape `f a ≤ b ↔ ...`.
---
Developed with help from of Claude Opus 5.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order
LLM-generated
|
12/5 |
Mathlib/Order/Hom/WithTopBot.lean,Mathlib/Order/WithBot.lean |
2 |
1 |
['github-actions'] |
nobody |
8-19741 8 days ago |
8-22403 8 days ago |
8-22397 8 days |
| 43174 |
Raph-DG author:Raph-DG |
feat(RingTheory): algebraic hartogs' 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 |
8-17739 8 days ago |
10-70774 10 days ago |
10-70768 10 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 |
8-17277 8 days ago |
39-18707 39 days ago |
39-18701 39 days |
| 40537 |
SnkXyx author:SnkXyx |
feat(Algebra/MvPolynomial/Variables): define main degree |
This PR defines the **main degree** of a multivariate polynomial:
* `MvPolynomial.mainDegree p : Multiset σ` :
When `σ` is a linear order, `mainDegree p` is the multiset consisting of the maximal variable
among all variables appearing in `p`, appearing with its largest multiplicity among all monomials
in `p`.
The definition was originally developed in PR #36103 as part of the formalization of the Characteristic Set Method (Wu-Ritt Method). The Characteristic Set project aims to formalize the algorithmic method for solving systems of multivariate polynomial equations in Lean 4, providing foundational infrastructure for algebraic geometry based on triangular decomposition.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
tech debt
label:t-algebra$ |
111/23 |
Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/SchwartzZippel.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/RingTheory/MvPolynomial/Basic.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder/DegLex.lean,Mathlib/RingTheory/MvPowerSeries/Trunc.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Spectrum/Prime/ChevalleyComplexity.lean |
12 |
21 |
['SnkXyx', 'faenuccio', 'github-actions', 'mathlib-merge-conflicts', 'vlad902'] |
nobody |
8-15053 8 days ago |
8-16642 8 days ago |
56-5829 56 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 |
5 |
['eric-wieser', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts'] |
nobody |
8-10159 8 days ago |
24-69664 24 days ago |
64-42071 64 days |
| 43409 |
gasparattila author:gasparattila |
doc: expand the documentation on `SMul ℕ` defeq issues |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
20/1 |
Mathlib/Algebra/Group/Monoid.lean |
1 |
1 |
['github-actions'] |
nobody |
8-4606 8 days ago |
8-9660 8 days ago |
8-9654 8 days |
| 41377 |
tb65536 author:tb65536 |
refactor(RingTheory/RamificationInertia/Ramification): generalize `ramificationIdx_pos` |
Positivity of ramification index currently requires `Module.Finite`, but it is also true for Dedekind domains. This PR extracts a common generalization `ramificationIdx_pos_of_mem_minimalPrimes` and deduces these two facts as corollaries. This allows for a few more removals of the old `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]
-->
- [x] depends on: #41378
- [x] depends on: #41379
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
t-algebra
large-import
label:t-algebra$ |
77/23 |
Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean,Mathlib/NumberTheory/RamificationInertia/Valuation.lean,Mathlib/RingTheory/DedekindDomain/Basic.lean,Mathlib/RingTheory/RamificationInertia/Ramification.lean |
5 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
8-2364 8 days ago |
8-3351 8 days ago |
8-5574 8 days |
| 43095 |
plp127 author:plp127 |
chore(Data/PFunctor): reduce defeq abuse around `PFunctor.W` |
Reduce the defeq abuse around `PFunctor.W` by adding some API.
---
- [x] depends on: #43056
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data
tech debt
|
88/52 |
Mathlib/Data/PFunctor/Multivariate/W.lean,Mathlib/Data/PFunctor/Univariate/Basic.lean,Mathlib/Data/QPF/Univariate/Basic.lean |
3 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
7-85808 7 days ago |
8-10238 8 days ago |
8-11069 8 days |
| 42249 |
plp127 author:plp127 |
chore(FreeAbelianGroup): deprecate multiplication |
Deprecate multiplication on `FreeAbelianGroup` in favor of using `MonoidAlgebra`. Supersedes #27759.
---
- [x] depends on: #42245
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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 |
61/34 |
Mathlib/GroupTheory/FreeAbelianGroup.lean |
1 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
7-84851 7 days ago |
8-10126 8 days ago |
8-13152 8 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/)
|
t-data |
18/15 |
Mathlib/Algebra/Algebra/Subalgebra/Directed.lean,Mathlib/Combinatorics/Compactness.lean,Mathlib/Data/Set/Inclusion.lean,Mathlib/Data/Set/UnionLift.lean,Mathlib/Logic/Equiv/Set.lean,Mathlib/ModelTheory/Fraisse.lean,Mathlib/ModelTheory/PartialEquiv.lean,Mathlib/ModelTheory/Substructures.lean,Mathlib/Order/CountableDenseLinearOrder.lean,Mathlib/Topology/Category/TopCat/Opens.lean,Mathlib/Topology/Covering/Basic.lean,Mathlib/Topology/UniformSpace/UniformEmbedding.lean |
12 |
4 |
['gasparattila', 'github-actions', 'plp127'] |
nobody |
7-79752 7 days ago |
7-83399 7 days ago |
8-37920 8 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'] |
JovanGerb assignee:JovanGerb |
7-65633 7 days ago |
9-77689 9 days ago |
20-57103 20 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'] |
jjdishere assignee:jjdishere |
7-65625 7 days ago |
14-55011 14 days ago |
24-28700 24 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 |
17 |
['SnirBroshi', 'eric-wieser', 'github-actions', 'mathlib-splicebot', 'themathqueen'] |
joelriou assignee:joelriou |
7-65621 7 days ago |
30-65849 30 days ago |
66-17018 66 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'] |
RemyDegenne assignee:RemyDegenne |
7-65616 7 days ago |
36-62452 36 days ago |
36-62446 36 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'] |
ocfnash assignee:ocfnash |
7-65615 7 days ago |
22-13941 22 days ago |
22-13935 22 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'] |
RemyDegenne assignee:RemyDegenne |
7-65614 7 days ago |
16-31271 16 days ago |
16-31265 16 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 |
5 |
['b-mehta', 'github-actions'] |
nobody |
7-65449 7 days ago |
30-80680 30 days ago |
30-80674 30 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'] |
nobody |
7-64732 7 days ago |
55-32410 55 days ago |
93-23429 93 days |
| 43418 |
aimmerwahr author:aimmerwahr |
feat(RingTheory): prove `comap_ringConGen_equiv` (`proof_wanted`) |
Prove that `(ringConGen r).comap f = ringConGen (r on f)` for an EquivLike as stated in proof_wanted.
I rearranged the parameter order (and dropped `[FunLike F R' R]`) from the original proof_wanted statement, since EquivLike already gives a FunLike and having repeated FunLike (that are not definitionally equal) makes instance resolution impossible.
This is essentially the same proof as the previous ring equivalence version (pulling back the RingCon by f inverse and then by f), with comap spelled out explicitly.
AI usage: Everything is proved by hand. I then worked with AI to review and simplify the code. |
file-removed
t-ring-theory
new-contributor
|
37/33 |
Mathlib/RingTheory/Congruence/Basic.lean,Wanted.lean,Wanted/RingTheory/Congruence/Basic.lean |
3 |
2 |
['github-actions'] |
nobody |
7-57544 7 days ago |
7-60856 7 days ago |
7-60850 7 days |
| 43420 |
Timeroot author:Timeroot |
chore(AlgebraicGeometry): refactor and clean up AffineTransitionLimit.lean |
Refactor and cleans up very long proofs in AffineTransitionLimit.lean
Several proofs in this file were the largest in Mathlib (as measured by actual time to validate the proof term) and I noticed they were terrible. This was the result of some ~20 rounds of me with Claude together doing cleanup, not just shortening the proofs but also cleaning up the file in other ways. It involved pulling 15 helpful little lemmas out in other related files, reordering some declarations into an easier order to re-use, changing some section variables (to make declarations much more readable), a great reduction in `set_option backward.isDefEq.respectTransparency false` and `set_option backward.defeqAttrib.useBackward` debt, and of course, simplifying many proofs to use cleaner or more direct arguments.
The net result is 138 less lines than before, and instead of having a massive `Scheme.exists_π_app_comp_eq_of_locallyOfFinitePresentation` (and friends) that's 104 lines, nearly everything is at a sane length.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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 |
532/670 |
Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicGeometry/AffineTransitionLimit.lean,Mathlib/AlgebraicGeometry/Gluing.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiSeparated.lean,Mathlib/AlgebraicGeometry/Restrict.lean,Mathlib/AlgebraicGeometry/Scheme.lean,Mathlib/CategoryTheory/Filtered/Basic.lean |
7 |
2 |
['github-actions'] |
nobody |
7-57161 7 days ago |
7-59924 7 days ago |
7-59918 7 days |
| 43411 |
JovanGerb author:JovanGerb |
chore: mark local tactics as `local` so they don't pollute the tactic documentation |
The tactic documentation is a very crowded place. This PR helps that by marking some tactics as `local`.
Other tactics could be removed from it by marking them with `@[tactic_alt]`.
Note: there is a tactic called `valid` that can't be made local because it is used in autoParams. It should probably be renamed 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/)
|
|
8/12 |
Archive/Imo/Imo2001Q5.lean,Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/RingTheory/WittVector/Basic.lean,Mathlib/RingTheory/WittVector/Truncated.lean |
7 |
1 |
['github-actions'] |
nobody |
7-54482 7 days ago |
8-4594 8 days ago |
8-5652 8 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'] |
nobody |
7-43361 7 days ago |
64-75073 64 days ago |
64-75067 64 days |
| 41362 |
JovanGerb author:JovanGerb |
perf(Algebra/MonoidAlgebra): `no_expose` some operations |
This PR uses `no_expose` for the `Add`, `Sub`, `Neg`, `One` and `Mul` instances of `MonoidAlgebra`. This improves performance. The `Zero` instance is left exposed for now as no_exposing it would require a few more adaptations.
This requires a change in `fast_instance%`, namely to let it unfold unexposed definitions in its `isDefEq` 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/)
|
|
75/61 |
Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/MonoidAlgebra/Division.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/Algebra/MonoidAlgebra/Ideal.lean,Mathlib/Algebra/MonoidAlgebra/MapDomain.lean,Mathlib/Algebra/MonoidAlgebra/Module.lean,Mathlib/Algebra/MonoidAlgebra/ToDirectSum.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/FinitePresentation.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/Tactic/FastInstance.lean |
17 |
15 |
['JovanGerb', 'github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
7-42640 7 days ago |
8-84576 8 days ago |
24-13396 24 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$ |
87/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Hecke/Basic.lean |
2 |
8 |
['JX-Mo', 'Whysoserioushah', 'github-actions'] |
nobody |
7-41246 7 days ago |
18-18189 18 days ago |
18-18285 18 days |
| 39524 |
FordUniver author:FordUniver |
feat(MeasureTheory/Integral/CurveIntegral): integrability and FTC along a line segment |
Collects the line-segment API in `CurveIntegral/Basic.lean` into a Segment section. It proves that the segment path is `C¹`, that continuous one-forms are integrable along it, and that integrating a Fréchet derivative along it gives the endpoint difference, both globally and within a containing set.
---
Used by #43429, which needs an FTC along an affine line to integrate a directional derivative over a segment. `Path.contDiffOn_segment_extend` would more naturally live in `Convex/PathConnected.lean`, but importing the required calculus result there creates an import cycle, so it remains next to its consumer here.
- [x] depends on: #39206 |
t-measure-probability |
70/11 |
Mathlib/MeasureTheory/Integral/CurveIntegral/Basic.lean |
1 |
5 |
['FordUniver', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
sgouezel assignee:sgouezel |
7-31817 7 days ago |
7-31916 7 days ago |
71-34761 71 days |
| 43407 |
thomaskwaring author:thomaskwaring |
feat(Order/Hom/CompleteLattice): order adjoints for `{sSup/sInf}Hom` |
This PR defines the order adjoint of a `sSup` or `sInf` preserving function, which defines an equivalence `sSupHom α β ≃ sInfHom β α`, and an order isomorphism `sSupHom α β ≃o (sInfHom β α)ᵒᵈ` (plus duals).
---
I'm not 100% certain on the naming here, and would very much appreciate any advice & help with `to_dual` — an alternative option is `upperAdj` and `lowerAdj`, which `to_dual`-ises automatically.
[](https://gitpod.io/from-referrer/)
|
t-order |
69/0 |
Mathlib/Order/Hom/CompleteLattice.lean |
1 |
4 |
['SnirBroshi', 'github-actions', 'thomaskwaring'] |
nobody |
7-28195 7 days ago |
8-11569 8 days ago |
8-11563 8 days |
| 39935 |
FordUniver author:FordUniver |
feat(Combinatorics/SimpleGraph/Finite): LocallyFiniteOrder |
Adds `LocallyFiniteOrder (SimpleGraph V)` for finite `V` and decidability of `G ≤ H` for a fintype `V` with decidable adjacency. Required for finite sums over intervals of simple graphs.
Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com>
---
Came up while writing a Möbius inversion between copy counts and induced copy counts ([WIP](https://github.com/FordUniver/mathlib4/pull/36/changes)) that sums over the closed interval `Finset.Icc G ⊤` of supergraphs. Decidability of the order plus local-finiteness of the lattice felt like a clean standalone piece to land first, before the rest of the Möbius file.
Less sure about what the conventions for declaring type class instances are in mathlib, let me know if this is not of the expected shape or should not be included at all. |
t-combinatorics |
13/0 |
Mathlib/Combinatorics/SimpleGraph/Finite.lean |
1 |
15 |
['FordUniver', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
7-21706 7 days ago |
7-35897 7 days ago |
84-6187 84 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.
The main motivation for doing this is that until we have some nice comparison lemmas going between cohomology taken in the category of sheaves of modules and cohomology taken in the category of sheaf of abelian groups, I think it will be more useful to work with the cohomology of the underlying sheaf of abelian groups of a sheaf of modules. However, the category of sheaves of abelian groups is not R linear for most R, so we do not immediately inherit R-module structure on the cohomology groups from this machinery.
AI disclosure: I had AI perform some cleanups and edits to some code originally written by me, as well as having it move things into the correct files. I also had it create this branch from another branch which I decided had too much content for a single PR.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
31/0 |
Mathlib/Algebra/Homology/DerivedCategory/Ext/Linear.lean |
1 |
3 |
['github-actions', 'mathlib-bors'] |
nobody |
7-20930 7 days ago |
14-22983 14 days ago |
29-24721 29 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'] |
nobody |
7-18172 7 days ago |
10-23027 10 days ago |
70-36803 70 days |
| 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'] |
nobody |
7-18162 7 days ago |
55-35032 55 days ago |
68-31515 68 days |
| 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
maintainer-merge
|
139/7 |
Mathlib/Tactic/FastInstance.lean,MathlibTest/FastInstance.lean |
2 |
16 |
['JovanGerb', 'SnirBroshi', 'Vierkantor', 'github-actions'] |
nobody |
7-16714 7 days ago |
10-20684 10 days ago |
13-18294 13 days |
| 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 |
16 |
['felixpernegger', 'github-actions', 'grunweg', 'jcommelin', 'joneugster', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
bryangingechen assignee:bryangingechen |
7-13523 7 days ago |
15-49482 15 days ago |
64-75106 64 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
|
70/6 |
Mathlib/Tactic/Linarith/Frontend.lean,MathlibTest/Tactic/Linarith/Basic.lean |
2 |
12 |
['BorisTheBrave', 'JovanGerb', 'github-actions', 'sharky564'] |
JovanGerb assignee:JovanGerb |
7-12941 7 days ago |
7-32799 7 days ago |
14-31013 14 days |
| 40412 |
JovanGerb author:JovanGerb |
feat(Linter/Header): lint against imports from `Init` |
`Init` is always imported by default, so there is no reason to import it explicitly. This PR lints against that.
There is still reason to `import all` something from `Init` to get access to the private scope, so that is allowed by the linter. It is also possible to avoid importing things from `Init` by writing `prelude`, but at that point you cannot also have this linter imported, so this is not a relavant scenario.
This is a follow up to #40401, which removed all imports of `Init`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #40347
[](https://gitpod.io/from-referrer/)
|
t-linter
maintainer-merge
|
8/6 |
Mathlib/Data/Fin/Init.lean,Mathlib/Tactic/Linter/Header.lean |
2 |
15 |
['JovanGerb', 'eric-wieser', 'github-actions', 'grunweg', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
grunweg assignee:grunweg |
7-10348 7 days ago |
8-84287 8 days ago |
9-705 9 days |
| 41702 |
smmercuri author:smmercuri |
chore: make `adicCompletion` and `Completion` print nicer |
- Stop `toCompletion` and `ofCompletion` printing with braces
- Arguments to `completionMap` should be explicit.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
28/6 |
Mathlib/NumberTheory/NumberField/Completion/InfinitePlace.lean,Mathlib/NumberTheory/NumberField/Completion/LiesOverInstances.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean |
3 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
7-5299 7 days ago |
8-40184 8 days ago |
46-15169 46 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 |
91/6 |
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 |
6-80059 6 days ago |
61-81765 61 days ago |
87-30520 87 days |
| 34911 |
smmercuri author:smmercuri |
feat: idelic product formula |
---
- [x] depends on: #34915
- [x] depends on: #34918
- [x] depends on: #36184
- [x] depends on: #36204
- [x] depends on: #36275
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
61/1 |
Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/FiniteAdeleRing.lean |
2 |
11 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
6-79726 6 days ago |
6-81165 6 days ago |
6-82760 6 days |
| 43451 |
lakesare author:lakesare |
feat(MeasureTheory/Integral/Bochner/Basic): add enorm_integral_norm_eq_lintegral_enorm |
From the Carleson project.
-------
**Upstreaming from Carleson: [/Carleson/ToMathlib/MeasureTheory/Integral/Bochner/ContinuousLinearMap.lean](https://github.com/fpvandoorn/carleson/blob/0072b6e47ec58ac13be0a9f3b7c17e9f3bb1be2e/Carleson/ToMathlib/MeasureTheory/Integral/Bochner/ContinuousLinearMap.lean)**
### In this PR
#### enorm_integral_norm_eq_lintegral_enorm
- renamed (`integral` -> `lintegral`) to match neighbouring lemmas
- generalized the statement (`{𝕜 : Type u_2} [RCLike 𝕜]` -> `{P : Type u_7} [NormedAddCommGroup P]`) to match neighbouring lemmas
- refactored the proof body
```lean
-- CARLESON
enorm_integral_norm_eq_integral_enorm.{u_1, u_2} {α : Type u_1} {μ : Measure α} (hf : Integrable f μ)
[MeasurableSpace α]
{𝕜 : Type u_2} [RCLike 𝕜] {f : α → 𝕜}
: ‖∫ (x : α), ‖f x‖ ∂μ‖ₑ = ∫⁻ (x : α), ‖f x‖ₑ ∂μ
-- MATHLIB
MeasureTheory.enorm_integral_norm_eq_lintegral_enorm.{u_1, u_7} {α : Type u_1} {μ : Measure α} (hf : Integrable f μ)
{m : MeasurableSpace α}
{P : Type u_7} [NormedAddCommGroup P] {f : α → P}
: ‖∫ (x : α), ‖f x‖ ∂μ‖ₑ = ∫⁻ (x : α), ‖f x‖ₑ ∂μ
``` |
carleson
easy
t-measure-probability
|
6/0 |
Mathlib/MeasureTheory/Integral/Bochner/Basic.lean |
1 |
4 |
['github-actions', 'lakesare'] |
nobody |
6-73295 6 days ago |
6-74530 6 days ago |
6-74524 6 days |
| 42316 |
JovanGerb author:JovanGerb |
feat: use `max`/`min` for `union`/`intersection` in `Set`, `Finset`, `ZFSet`, `Class` |
This lets us write `∪`/`∩` for sets while the underlying constant is `max`/`min`. This is a follow-up to #32983, which made the same change for `⊆`, `⊂`, `⊇` and `⊃`. The implementation for `∪`/`∩` is analogous.
The first commit contains the implementation change, and all other commits are just adaptations.
Note that there are now two different special delaborators for `max`/`min`, because we already had the delaborator that chooses between `max`/`min` and `⊔`/`⊓`. It is important that the one for `∪`/`∩` is tried first. There is no priority mechanism for delaborators: they are always executed newest to oldest. So, this PR adds a (redundant) import to ensure that this order is respected.
- I modified the delaborator for `⊔`/`⊓` so that it doesn't fire if `LinearOrder` isn't imported. Due to the extra redundant import, that is now a more common situation and I think in that situation it's better to print `max a b` instead of `a ⊔ b`.
- It is now not anymore possible to write `simp [(· ∪ ·)]` due to elaboration issues. The same also already applied to `simp [(· ⊆ ·)]`.
- Many `simp` calls had to be fixed because the `simp` set for `max`/`min` contains more lemmas than what we had for `union`/`inter`. For example, `compl_inf` and `inf_of_le_left`/`inf_of_le_right` now also apply to intersections.
- In particular `inf_of_le_left`/`inf_of_le_right` are quite slow simp lemmas, which means that this PR gives a bit of slowdown.
- A `grind` call had to be fixed because it timed out. Originally, that `grind` call was already doing too much stuff, but it didn't quite reach its limits.
- Many `@[simp]` and some `@[gcongr]` tags could be removed because they are now subsumed by more general tags.
- I removed `@[mfld_simp]` from `inter_subset_left`, as it seemed a bit weird to have it there and not on its dual or its mirror lemma.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt |
330/414 |
Archive/Examples/Kuratowski.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/Lie/Basis/Prod.lean,Mathlib/Algebra/Module/SpanRank.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/Polynomial/Splits.lean,Mathlib/AlgebraicGeometry/Morphisms/UniversallyClosed.lean,Mathlib/AlgebraicGeometry/Scheme.lean,Mathlib/AlgebraicGeometry/ZariskisMainTheorem.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/RelativeCellComplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/Degenerate.lean,Mathlib/Analysis/Convex/Combination.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/Analysis/Normed/Module/Seminorm/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/NegMulLog.lean,Mathlib/CategoryTheory/Limits/Types/Pushouts.lean,Mathlib/Combinatorics/Additive/Dissociation.lean,Mathlib/Combinatorics/Matroid/Basic.lean,Mathlib/Combinatorics/Matroid/Minor/Contract.lean,Mathlib/Combinatorics/Matroid/Minor/Order.lean,Mathlib/Combinatorics/SetFamily/Compression/UV.lean,Mathlib/Combinatorics/SetFamily/FourFunctions.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/LineGraph.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean,Mathlib/Combinatorics/SimpleGraph/UniversalVerts.lean,Mathlib/Computability/TuringMachine/ToPartrec.lean,Mathlib/Data/Finmap.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finset/BooleanAlgebra.lean,Mathlib/Data/Finset/Lattice/Basic.lean,Mathlib/Data/Finset/Lattice/Lemmas.lean,Mathlib/Data/Finset/SDiff.lean,Mathlib/Data/Finset/Sups.lean,Mathlib/Data/Finset/SymmDiff.lean,Mathlib/Data/Finsupp/BigOperators.lean,Mathlib/Data/Multiset/UnionInter.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Defs.lean,Mathlib/Data/Set/Disjoint.lean,Mathlib/Data/Set/Function.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Set/Subset.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/MFDeriv/Defs.lean,Mathlib/GroupTheory/CosetCover.lean,Mathlib/GroupTheory/Perm/Finite.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/LinearAlgebra/Basis/Exact.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/Logic/Equiv/Set.lean,Mathlib/MeasureTheory/Covering/LiminfLimsup.lean,Mathlib/MeasureTheory/MeasurableSpace/CountablyGenerated.lean,Mathlib/MeasureTheory/Measure/Basic.lean,Mathlib/MeasureTheory/Measure/Decomposition/Hahn.lean,Mathlib/MeasureTheory/Measure/Haar/Unique.lean,Mathlib/MeasureTheory/Measure/Typeclasses/ZeroOne.lean,Mathlib/MeasureTheory/OuterMeasure/AE.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/MeasureTheory/SetSemiring.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Semivariation.lean,Mathlib/NumberTheory/LSeries/ZetaZeros.lean,Mathlib/NumberTheory/WellApproximable.lean,Mathlib/Order/Birkhoff.lean,Mathlib/Order/BooleanAlgebra/Set.lean,Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/Defs/LinearOrder.lean,Mathlib/Order/Filter/Bases/Basic.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Defs.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/Lattice/Congruence.lean,Mathlib/Order/Notation.lean,Mathlib/Order/SupIndep.lean,Mathlib/RingTheory/PolynomialLaw/Basic.lean,Mathlib/RingTheory/RegularLocalRing/Polynomial.lean,Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Class.lean,Mathlib/Tactic/SetNotationForOrder.lean,Mathlib/Topology/CWComplex/Classical/Basic.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Compactification/StoneCech.lean,Mathlib/Topology/Connected/Clopen.lean,Mathlib/Topology/Constructible.lean,Mathlib/Topology/DiscreteSubset.lean,Mathlib/Topology/NhdsWithin.lean,Mathlib/Topology/OpenPartialHomeomorph/IsImage.lean,Mathlib/Topology/Sets/Compacts.lean,Mathlib/Topology/Sets/Opens.lean,Mathlib/Topology/UrysohnsLemma.lean,MathlibTest/Attribute/ToDual.lean,MathlibTest/Delab/SupInf.lean,MathlibTest/SetNotationForOrder.lean,MathlibTest/Simps.lean,MathlibTest/Tactic/GRewrite.lean,MathlibTest/Tactic/Order.lean |
98 |
21 |
['JovanGerb', 'github-actions', 'jcommelin', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
6-68900 6 days ago |
9-30698 9 days ago |
26-28163 26 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 |
6 |
['NoahW314', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
6-68343 6 days ago |
6-72899 6 days ago |
23-28825 23 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.
---
**Refreshed 3 Sep 2026:** merged current master; `ValuativeRel.comap` and `not_vle_zero_of_isUnit` generalised to semirings (the class is stated for semirings); names aligned with `PrimeSpectrum` (`continuous_comap`, `isEmbedding_comap_quotientMk`, `range_comap_quotientMk`, `localization_comap_range`); `mem_basicOpen_iff`/`isOpen_basicOpen` added and `@[simp]` on the round-trip lemmas. Ported and exercised in TauCeti (`TauCeti/AlgebraicGeometry/AdicSpace/ValuationSpectrum.lean`), which builds Wedhorn §7 on top of this API.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
https://claude.ai/code/session_01A6f2mYh682Cc9g7DbpQZ2k
|
t-ring-theory
LLM-generated
|
421/0 |
Mathlib.lean,Mathlib/RingTheory/Valuation/ValuationSpectrum.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Comap.lean |
3 |
78 |
['CBirkbeck', 'adamtopaz', 'chrisflav', 'dagurtomas', 'faenuccio', 'github-actions', 'jcommelin', 'jjdishere', 'riccardobrasca', 'sfingali'] |
mattrobball assignee:mattrobball |
6-65633 6 days ago |
60-39058 60 days ago |
145-12763 145 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'] |
kim-em assignee:kim-em |
6-65632 6 days ago |
49-35743 49 days ago |
49-42022 49 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'] |
b-mehta assignee:b-mehta |
6-65630 6 days ago |
68-55238 68 days ago |
86-69405 86 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'] |
urkud assignee:urkud |
6-65629 6 days ago |
36-14314 36 days ago |
88-59355 88 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'] |
fpvandoorn assignee:fpvandoorn |
6-65627 6 days ago |
69-34468 69 days ago |
75-32047 75 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'] |
EtienneC30 assignee:EtienneC30 |
6-65624 6 days ago |
12-16174 12 days ago |
12-16168 12 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'] |
EtienneC30 assignee:EtienneC30 |
6-65624 6 days ago |
10-33706 10 days ago |
10-33700 10 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'] |
nobody |
6-64730 6 days ago |
30-75069 30 days ago |
30-75063 30 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'] |
nobody |
6-64729 6 days ago |
30-76662 30 days ago |
30-76656 30 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'] |
mattrobball assignee:mattrobball |
6-57053 6 days ago |
61-55837 61 days ago |
126-20781 126 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 |
71/0 |
Mathlib.lean,Mathlib/RingTheory/RegularLocalRing/PowerSeries.lean |
2 |
6 |
['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
6-55831 6 days ago |
6-56594 6 days ago |
17-11161 17 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'] |
mattrobball assignee:mattrobball |
6-55473 6 days ago |
80-41377 80 days ago |
80-41371 80 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'] |
mattrobball assignee:mattrobball |
6-44048 6 days ago |
6-48033 6 days ago |
83-38343 83 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 |
21 |
['FernandoChu', 'github-actions', 'grunweg', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
6-38866 6 days ago |
11-22526 11 days ago |
63-28804 63 days |
| 37838 |
Thmoas-Guan author:Thmoas-Guan |
feat(FieldTheory): basic theories about transcendental separable extension |
The formalization of [Stacks 030W] via [Stacks 030U].
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #37934
- [x] depends on: #39138
- [x] depends on: #39740
[](https://gitpod.io/from-referrer/)
|
t-algebra
large-import
label:t-algebra$ |
466/16 |
Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/FieldTheory/TranscendentalSeparable.lean |
2 |
5 |
['github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
6-36407 6 days ago |
6-39111 6 days ago |
6-40376 6 days |
| 37953 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory/Smooth): transcendental separable extension is formally smooth |
In this PR, we proved that transcendental separable extension is formally smooth via reduction to fg cases.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [ ] depends on: #37934
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
141/2 |
Mathlib/RingTheory/Smooth/Field.lean |
1 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
6-35697 6 days ago |
7-3796 7 days ago |
7-3874 7 days |
| 43446 |
gasparattila author:gasparattila |
feat: `direction` of `AffineSubspace.comap` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
19/0 |
Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Basic.lean |
1 |
2 |
['github-actions', 'wwylele'] |
nobody |
6-34772 6 days ago |
6-85701 6 days ago |
6-85695 6 days |
| 41459 |
EzequielS2 author:EzequielS2 |
feat(Algebra/Group): mulOpposite equivs for submonoid and subgroup |
Add MulOpposite monoid equivalences for submonoids and subgroups, and remove the corresponding TODOs in `Subsemiring/MulOpposite.lean`. |
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 |
6-34607 6 days ago |
24-72916 24 days ago |
65-83528 65 days |
| 43461 |
mcdoll author:mcdoll |
feat(Analysis/SchwartzMap): missing lemmas about inverse Fourier transform |
Adds lemmas that are already present for the Fourier transform, plus a pair of lemmas for the relation to the `L1` Fourier transform.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis |
54/0 |
Mathlib/Analysis/Distribution/SchwartzSpace/Fourier.lean |
1 |
1 |
['github-actions'] |
nobody |
6-25934 6 days ago |
6-27303 6 days ago |
6-27297 6 days |
| 43373 |
Parcly-Taxel author:Parcly-Taxel |
feat: `2 ^ n ≤ lcmUpto n` for `7 ≤ n` |
This proof is even more elementary than Nair's proof (_American Mathematical Monthly_ **89** (2), February 1982, 126–129). Inspired by [this Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Bounds.20of.20Chebyshev.20Functions/with/621120558).
Co-authored-by: Aristotle (Harmonic) <aristotle-harmonic@harmonic.fun>
The original Aristotle run is [here](https://aristotle.harmonic.fun/dashboard/requests/9fd88021-f5b1-4e7f-99fc-450d5edc9590).
We also add a slightly stronger lower bound on the prime-counting function based on the new result as `pi_ge_of_four_le`. |
t-number-theory
LLM-generated
|
79/17 |
Mathlib/Data/Nat/Choose/Factorization.lean,Mathlib/Data/Nat/Choose/Sum.lean,Mathlib/NumberTheory/Chebyshev.lean |
3 |
1 |
['github-actions'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
6-23913 6 days ago |
8-53853 8 days ago |
8-53847 8 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$ |
14/1 |
Mathlib/LinearAlgebra/TensorProduct/Basic.lean |
1 |
11 |
['Ljon4ik4', 'Ruben-VandeVelde', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
6-23432 6 days ago |
6-23432 6 days ago |
53-43374 53 days |
| 43464 |
gasparattila author:gasparattila |
fix(LinearAlgebra/Projectivization/Subspace): fix non-defeq `Min` instances |
The `CompleteLattice` instance of `Projectivization.Subspace` is currently defined using `completeLatticeOfInf`, which conflicts with the `Min` instance defined earlier. This PR fixes this by overriding the `inf` field. To avoid possible issues with `⊥` and `⊤`, they are also redefined to have good defeqs.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
17/20 |
Mathlib/LinearAlgebra/Projectivization/Subspace.lean |
1 |
1 |
['github-actions'] |
nobody |
6-22173 6 days ago |
6-22951 6 days ago |
6-22945 6 days |
| 41633 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Paths): length of closed a walk/trail isn't `1`/`2` |
For a closed walk `p`:
- `p.length ≠ 1`
- `p.IsTrail` → `p.length ≠ 2`
- `p.IsTrail` → `p.length ≤ 2` → `p.Nil`
---
Since a circuit is a closed non-nil trail, `IsTrail.nil_of_length_le_two` is basically the contrapositive of `IsCircuit.three_le_length`, but I think this form is useful.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
11/4 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
6-16466 6 days ago |
6-17238 6 days ago |
57-36338 57 days |
| 37279 |
imalinowskip author:imalinowskip |
feat(Probability): multivariate CLT |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #40345 -->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
|
138/3 |
Mathlib/Probability/CentralLimitTheorem.lean |
1 |
18 |
['EtienneC30', 'RemyDegenne', 'github-actions', 'imalinowskip', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
RemyDegenne assignee:RemyDegenne |
6-15567 6 days ago |
6-15567 6 days ago |
13-57280 13 days |
| 41729 |
vaca22 author:vaca22 |
feat(RingTheory/DedekindDomain): add divisor group core |
Add the divisor group of a Dedekind domain as a formal-sum model, together with the additive equivalence to the multiplicative group of nonzero fractional ideals.
**Relation to what Mathlib already has.** As pointed out on Zulip, Mathlib already knows that fractional ideals factor: `FractionalIdeal.count` gives the exponent of a height-one prime, and `ClassGroup` is built from fractional ideals directly. This PR does not re-prove any of that — it reuses `count` and `finite_factors` verbatim. What it adds is the *additive* packaging:
* `IsDedekindDomain.Divisor R := HeightOneSpectrum R →₀ ℤ`, so a divisor is a finitely supported integer-valued function and one can write `D₁ + D₂`, `-D`, `D v`, and use the whole `Finsupp` API (`support`, `sum`, induction on the support);
* `FractionalIdeal.divisorEquiv`, an `AddEquiv` from `(FractionalIdeal R⁰ K)ˣ` to `Divisor R`, turning ideal multiplication into divisor addition.
The multiplicative view is the right one for the class group; the additive one is what divisor-theoretic arguments are written in, where one constantly forms `D - D'`, compares coefficients prime by prime, and does induction over `D.support`. Having both, related by a single `AddEquiv`, means neither side has to be re-derived.
**Downstream use.** This is the bottom layer of a formalization of Riemann–Roch for algebraic function fields (announced in `#AI authored projects > Riemann–Roch for function fields`): `L(D)`, `deg D`, and the statement `ℓ(D) = deg D + 1 - g + ℓ(W - D)` are all phrased in terms of additive divisors, and the degree map is defined by summing coefficients over `D.support`.
Happy to reshape the API — in particular whether `Divisor` should be an `abbrev` or a structure, and whether this belongs next to `Factorization` rather than in its own file.
AI usage: LLM-generated, disclosed per the AI policy.
|
t-ring-theory
new-contributor
LLM-generated
|
100/0 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Divisor.lean |
2 |
4 |
['github-actions', 'grunweg', 'vaca22'] |
nobody |
6-14296 6 days ago |
56-75600 56 days ago |
58-72797 58 days |
| 41732 |
vaca22 author:vaca22 |
feat(RingTheory/ClassGroup): add mulEquiv_mk0 |
Add `ClassGroup.mulEquiv_mk0`: the class-group isomorphism induced by a ring equivalence `e : R ≃+* S` sends `ClassGroup.mk0 I` to `ClassGroup.mk0 (I.map e)`.
`ClassGroup.mulEquiv` is currently only characterized through the `FractionRing` comparison equivalences, so any concrete computation has to unfold `ClassGroup.equiv` and chase fractional ideals through `IsFractionRing.semilinearEquivOfRingEquiv` by hand. This lemma states the expected behaviour on generators — classes of nonzero ideals — and is marked `@[simp 1100]` so that transporting class-group facts along a ring equivalence becomes a `simp` step.
**Downstream use.** This came out of a formalization of Riemann–Roch for algebraic function fields (announced in `#AI authored projects > Riemann–Roch for function fields`). There the group law on a Weierstrass elliptic curve is compared with the degree-zero class group, and the comparison is set up along a ring equivalence between two coordinate presentations; without this lemma the transport is several lines of manual fractional-ideal chasing at each use site.
The proof is by injectivity of `ClassGroup.equiv (FractionRing S)`, reducing to the statement that the semilinear equivalence maps `coeSubmodule` of `I` onto `coeSubmodule` of `I.map e`.
AI usage: LLM-generated, disclosed per the AI policy.
|
t-ring-theory
new-contributor
LLM-generated
|
43/0 |
Mathlib/RingTheory/ClassGroup/Basic.lean |
1 |
3 |
['github-actions', 'vaca22'] |
nobody |
6-14265 6 days ago |
59-21027 59 days ago |
59-21021 59 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
|
22/3 |
Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/NormalClosure.lean |
3 |
16 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'vaca22', 'xroblot'] |
nobody |
6-11234 6 days ago |
6-12474 6 days ago |
56-10850 56 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 |
46/7 |
Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/RingTheory/AdicCompletion/Completeness.lean,Mathlib/RingTheory/MvPolynomial/Ideal.lean |
3 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
6-10646 6 days ago |
6-19178 6 days ago |
65-67173 65 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 |
27 |
['Formalistic03', 'SnirBroshi', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts'] |
b-mehta assignee:b-mehta |
6-5216 6 days ago |
6-5216 6 days ago |
80-23087 80 days |
| 43216 |
JadAbouHawili author:JadAbouHawili |
feat(Combinatorics/SimpleGraph/Clique): independence number is zero iff the graph has no vertices |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor |
46/3 |
Mathlib/Combinatorics/SimpleGraph/Clique.lean |
1 |
45 |
['JadAbouHawili', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
6-196 6 days ago |
6-6498 6 days ago |
9-69082 9 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
|
139/2 |
Mathlib/NumberTheory/Divisors.lean,Mathlib/NumberTheory/SelbergSieve.lean |
2 |
36 |
['AlexKontorovich', 'MichaelStollBayreuth', 'ajirving', 'amellendijk', 'github-actions', 'loefflerd', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] |
loefflerd assignee:loefflerd |
6-46 6 days ago |
64-27038 64 days ago |
67-71759 67 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 |
14 |
['dagurtomas', 'github-actions', 'joelriou', 'mckoen', 'robin-carlier'] |
joelriou assignee:joelriou |
5-82369 5 days ago |
28-67334 28 days ago |
49-83260 49 days |
| 42723 |
kim-em author:kim-em |
feat(GroupTheory/Perm): cycle type of a power of a cycle |
This PR computes the cycle type of a power of a cycle. If `f` has support cardinality `n` and `d = gcd n k`, then `f ^ k` is the identity when `n ∣ k`; otherwise its cycle type is `Multiset.replicate d (n / d)`. It also adds the pointwise criterion that `f ^ k` fixes any point in the support of `f` exactly when `n ∣ k`, complementing the existing `orderOf_pow` and `Equiv.Perm.IsCycle.pow_iff` API.
This contribution originated in the [Tau Ceti project](https://github.com/TauCetiProject/TauCeti), an AI-written mathematics repository; it was adapted for Mathlib with Claude Code and reviewed with OpenAI Codex, supervised by Kim Morrison.
:robot: Prepared with OpenAI Codex
|
t-group-theory
LLM-generated
TauCeti
|
73/0 |
Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean |
2 |
1 |
['github-actions'] |
nobody |
5-69242 5 days ago |
8-56394 8 days ago |
8-56388 8 days |
| 43471 |
teorth author:teorth |
feat(Analysis/SpecialFunctions/Log): bounds on partial sums of the logarithm |
Adds `Mathlib/Analysis/SpecialFunctions/Log/Sum.lean`, collecting elementary bounds on the
partial sum of the logarithm:
- `sum_log_eq_log_factorial`: `∑ n ∈ Finset.Ioc 0 N, Real.log n = Real.log N !`.
- `sum_log_le` / `sum_log_le'` and `le_sum_log` / `le_sum_log'`: crude upper and lower bounds
on `∑ n ∈ Ioc 0 ⌊x⌋₊, log n` of the shape `x * log x - x + O(log x)`, obtained by comparing
the sum with `∫ t in 1..x, log t`.
- `le_sum_log_nat`: the sharper natural-number lower bound `N * log N - N ≤ ∑ n ∈ Ioc 0 N, log n`,
via `Stirling.le_log_factorial_stirling`.
---
These crude bounds are convenient in analytic number theory — for instance in the proof of
Mertens' theorems (#41394), from which they are spun off.
For more precise estimates, one should use the sharper bounds in `Mathlib.Analysis.SpecialFunctions.Stirling`.
This code was initially generated by the PNT+ project, and golfed both by myself and by AI tools.
[](https://gitpod.io/from-referrer/)
|
t-analysis |
96/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Log/Sum.lean |
2 |
2 |
['github-actions', 'wwylele'] |
nobody |
5-68241 5 days ago |
6-5407 6 days ago |
6-5401 6 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'] |
eric-wieser assignee:eric-wieser |
5-65634 5 days ago |
91-73655 91 days ago |
100-73693 100 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'] |
sgouezel assignee:sgouezel |
5-65633 5 days ago |
71-71311 71 days ago |
71-71305 71 days |
| 42536 |
JovanGerb author:JovanGerb |
fix(Linter/UnusedTactic): don't use `IO.Ref` for extensibility |
This PR cleans up the unused tactic linter extensibility implementation. Previously, this was implemented using a `PersistentEnvExtension` and an `IO.Ref`. The problem with the `IO.Ref` is that it creates "spooky action at a distance": a command later in the file can affect what happens earlier in the file. Instead, we can allow both local and global modifications using a `SimpleScopedEnvExtension`.
Previously, the list of exceptions was unnaturally split into the two files. This PR makes it into just a single list.
Additionally:
- `#allow_unused_tactic` is deprecated in favour of `allow_unused_tactic`
- We put a namespace around the `change?` syntax, so that `change?` is not anymore a declared constant.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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-linter
|
131/146 |
Mathlib.lean,Mathlib/Init.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Change.lean,Mathlib/Tactic/Linter/UnusedTactic.lean,Mathlib/Tactic/Linter/UnusedTacticExtension.lean,MathlibTest/Linter/UnusedTactic.lean |
7 |
5 |
['JovanGerb', 'adomani', 'github-actions', 'grunweg'] |
thorimur assignee:thorimur |
5-65631 5 days ago |
9-26144 9 days ago |
9-31904 9 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'] |
nobody |
5-64726 5 days ago |
22-59472 22 days ago |
22-59466 22 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'] |
nobody |
5-64725 5 days ago |
91-63294 91 days ago |
91-63288 91 days |
| 43478 |
plp127 author:plp127 |
feat(Data/PFunctor): pointfree lemmas for map |
Prove `PFunctor.map_id` and `PFunctor.map_comp_map`, pointfree analogues of `PFunctor.id_map` and `PFunctor.map_map`. The names are chosen to match the corresponding lemmas for `LawfulFunctor`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
5/0 |
Mathlib/Data/PFunctor/Univariate/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
5-55534 5 days ago |
5-56279 5 days ago |
5-56415 5 days |
| 43486 |
lua-vr author:lua-vr |
feat(Measure/AbsolutelyContinuous): add map_of_aemeasurable |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
7/1 |
Mathlib/MeasureTheory/Measure/AbsolutelyContinuous.lean |
1 |
1 |
['github-actions'] |
nobody |
5-32046 5 days ago |
5-33456 5 days ago |
5-33450 5 days |
| 43487 |
justus-springer author:justus-springer |
feat(LinearAlgebra/LinearIndependent/Basic): promote `LinearIndepOn.id_imageₛ` to iff, and add `smul_set` version |
This is the "id"-version of `LinearMap.linearIndepOn_iff_of_injOn`. Now `LinearIndepOn.id_imageₛ` is an alias for the mpr direction.
The smul version looks similar to `LinearIndependent.group_smul_iff`, but theirs needs a group action on the ring, not the module.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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/3 |
Mathlib/LinearAlgebra/LinearIndependent/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
5-30291 5 days ago |
5-33236 5 days ago |
5-33230 5 days |
| 43059 |
vasnesterov author:vasnesterov |
feat(Tactic/Simproc): support `Prop`-valued dependent quantifiers in `existsAndEq` |
Search for equality `a = a'` inside `P : Prop` in `∃ h : P, Q h`. The latter proposition can be seen as a dependent conjunction `(h : P) ∧ Q h` so this is a direct generalization of what the simproc was already doing before.
It was requested in Zulip: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/potential.20simp_procs/near/617574483
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #43162 [optional extra text]
[](https://gitpod.io/from-referrer/)
|
t-meta |
126/8 |
Mathlib/Tactic/Simproc/ExistsAndEq.lean,MathlibTest/Simproc/ExistsAndEq.lean |
2 |
8 |
['github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'vasnesterov'] |
nobody |
5-28457 5 days ago |
7-41362 7 days ago |
7-49584 7 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
|
156/0 |
Mathlib.lean,Mathlib/Analysis/ODE/Peano.lean |
2 |
8 |
['github-actions', 'philipp-svinger', 'sgouezel'] |
sgouezel assignee:sgouezel |
5-22853 5 days ago |
5-22854 5 days ago |
45-2233 45 days |
| 43440 |
Raph-DG author:Raph-DG |
feat(AlgebraicGeometry): serre's R_k condition for schemes |
In this PR, we define Serre's R_k condition. We also show that R_1 is equivalent to all local rings in codimension one being DVRs, though we show this under the assumption that the local rings are all domains. This assumption can be dropped once #28683 is merged.
AI disclosure: assisted by claude opus 5
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
113/0 |
Mathlib.lean,Mathlib/AlgebraicGeometry/RegularInCodimension.lean |
2 |
5 |
['Brian-Nugent', 'Raph-DG', 'github-actions'] |
dagurtomas assignee:dagurtomas |
5-20849 5 days ago |
7-14503 7 days ago |
7-14497 7 days |
| 43485 |
lua-vr author:lua-vr |
feat(Measure/Prod): add map_prod_map_of_aemeasurable |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
69/17 |
Mathlib/MeasureTheory/Group/Convolution.lean,Mathlib/MeasureTheory/Group/Measure.lean,Mathlib/MeasureTheory/Measure/GiryMonad.lean,Mathlib/MeasureTheory/Measure/Prod.lean |
4 |
2 |
['github-actions', 'mathlib-bors'] |
nobody |
5-20092 5 days ago |
5-21447 5 days ago |
5-22622 5 days |
| 41786 |
Nicola9Falciola author:Nicola9Falciola |
feat(LinearAlgebra/Matrix/GeneralLinearGroup/Defs): add the proof of the range of toGL to be the ker of the determinant and the induced equivalence |
Add a lemma proving that the `toGL.range ` is equal to `det.ker` and the induced equivalence between `SL` and `det.ker` .
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
22/0 |
Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean |
1 |
21 |
['Nicola9Falciola', 'github-actions', 'pepamontero', 'themathqueen'] |
nobody |
5-16996 5 days ago |
5-24360 5 days ago |
37-69709 37 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.
Co-authored-by: ajirving <29164966+ajirving@users.noreply.github.com>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis |
58/14 |
Mathlib/Analysis/Complex/CauchyIntegral.lean |
1 |
2 |
['ajirving', 'github-actions'] |
nobody |
5-15605 5 days ago |
17-43569 17 days ago |
17-43563 17 days |
| 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
|
16/3 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean |
1 |
39 |
['JadAbouHawili', 'SnirBroshi', 'github-actions'] |
nobody |
5-10532 5 days ago |
5-84922 5 days ago |
24-79800 24 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 |
114/9 |
Mathlib/Combinatorics/SimpleGraph/Maps.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
4-78976 4 days ago |
4-79778 4 days ago |
39-38569 39 days |
| 42647 |
martinwintermath author:martinwintermath |
feat(Geometry/Convex): add polytopes |
This PR adds the predicate `IsPolytope` for a subset of a `ConvexSpace`.
This is the first PR in a series of PRs implementing polytope theory.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry
maintainer-merge
|
113/0 |
Mathlib.lean,Mathlib/Geometry/Convex/Polytope/Basic.lean |
2 |
23 |
['Parcly-Taxel', 'YaelDillies', 'github-actions', 'grunweg', 'martinwintermath', 'vihdzp'] |
nobody |
4-77147 4 days ago |
7-23588 7 days ago |
27-24581 27 days |
| 41666 |
alreadydone author:alreadydone |
feat(Order): constructors for DistribLattice and IsModularLattice |
Add three constructors for DistribLattice and one for IsModularLattice.
Co-authored-by: Aaron Liu @plp127
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
189/96 |
Mathlib.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/Lattice/Constructor.lean,Mathlib/Order/ModularLattice.lean |
4 |
12 |
['SnirBroshi', 'alreadydone', 'github-actions', 'leanprover-radar', 'plp127'] |
nobody |
4-73521 4 days ago |
19-83246 19 days ago |
45-62086 45 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'] |
EtienneC30 assignee:EtienneC30 |
4-65633 4 days ago |
29-14703 29 days ago |
29-14697 29 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 |
51 |
['Maldooor', 'TJHeeringa', 'github-actions', 'j-loreaux', 'jkandel1', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'themathqueen'] |
nobody |
4-64732 4 days ago |
15-18916 15 days ago |
54-51803 54 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'] |
nobody |
4-64731 4 days ago |
58-33785 58 days ago |
85-74520 85 days |
| 43503 |
carlok author:carlok |
chore: weaken unused typeclass assumptions on section variables |
This PR has been described at
https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/unused.20hypotheses.3A.20431.20in.20a.2029k.20sample.2C.20and.2033.20one-line.20PRs/near/622113682
it is a list of mechanically found [1] one-liners relaxing theorems whose setting is stronger than their proof needs. Each change compiled alone against an unmodified file (whole library building locally at 633b366493).
More information on the project https://github.com/carlok/unused-assumptions
In the zulip thread, @SnirBroshi spotted that the refactored Topology/EMetricSpace/Pi.lean takes [EDist α] in place of two binders.
PS: A single PR because I noticed #42214 (813 files, merged, same kind of change).
Thank you for your work.
[1] LLM + Lean4 itself |
new-contributor |
32/32 |
Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRingsExact.lean,Mathlib/Algebra/CharP/Algebra.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Order/Archimedean/Defs.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Order/Group/Indicator.lean,Mathlib/Algebra/Order/Sub/Unbundled/Hom.lean,Mathlib/Algebra/Order/WithTop/Untop0.lean,Mathlib/Algebra/Regular/SMul.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/Analysis/Convex/Cone/TensorProduct.lean,Mathlib/Analysis/Convex/Gauge.lean,Mathlib/Analysis/Normed/Group/CocompactMap.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Data/Finset/Pairwise.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/LinearAlgebra/BilinearMap.lean,Mathlib/LinearAlgebra/LinearIndependent/Defs.lean,Mathlib/Order/Antichain.lean,Mathlib/Order/Monotone/Extension.lean,Mathlib/RingTheory/AlgebraTower.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/Over.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Module.lean,Mathlib/RingTheory/Valuation/ValuationRing.lean,Mathlib/Topology/EMetricSpace/Pi.lean,Mathlib/Topology/Instances/Sign.lean |
29 |
5 |
['github-actions', 'leanprover-radar', 'themathqueen'] |
nobody |
4-62851 4 days ago |
4-77768 4 days ago |
4-77762 4 days |
| 43502 |
teorth author:teorth |
feat(NumberTheory/LSeries): root numbers and non-vanishing in the left half-plane |
`Mathlib/NumberTheory/LSeries/Nonvanishing.lean` currently establishes nonvanishing of Dirichlet
`L`-functions and the Riemann zeta function are non-zero to the **right** of the critical strip
(`re s ≥ 1`). This PR adds the counterparts on the **left** (`re s ≤ 0`), which follow from the
functional equation, together with some auxiliary facts about root-numbers and Gauss-sums which
could be independently useful.
---
## Root numbers and Gauss sums
* `DirichletCharacter.completedLFunction_ne_zero_of_one_le_re`: the completed `L`-function
`Λ(χ, s)` is non-zero for `1 ≤ re s` (except for the trivial character at `s = 1`).
* `DirichletCharacter.rootNumber_mul_rootNumber_inv`: for a primitive character,
`rootNumber χ * rootNumber χ⁻¹ = 1`, obtained formally from the functional equation applied to
both `χ` and `χ⁻¹`.
* `DirichletCharacter.norm_rootNumber`: `‖rootNumber χ‖ = 1` for primitive `χ`.
* `DirichletCharacter.norm_gaussSum_stdAddChar`: `‖gaussSum χ stdAddChar‖ = √N` for primitive `χ`
— the classical evaluation `|τ(χ)| = √N`, here derived from the functional equation rather than
the usual finite-field argument, so it holds for every modulus (Mathlib previously only had
Gauss-sum non-vanishing over finite fields).
## Non-vanishing in the left half-plane
* `DirichletCharacter.LFunction_eq_zero_iff_of_re_nonpos`: for a primitive character and `re s ≤ 0` with `χ ≠ 1` or `s` non-zero, the L-function vanishes precisely when the gamma factor vanishes.
* `riemannZeta_eq_zero_iff_of_re_nonpos`: for `re s ≤ 0`, `ζ s = 0` iff `s` is a
negative even integer.
The code here was initially LLM-generated, but then heavily golfed and reviewed by the author. |
t-number-theory |
97/4 |
Mathlib/NumberTheory/DirichletCharacter/Basic.lean,Mathlib/NumberTheory/DirichletCharacter/Bounds.lean,Mathlib/NumberTheory/LSeries/Dirichlet.lean,Mathlib/NumberTheory/LSeries/DirichletContinuation.lean,Mathlib/NumberTheory/LSeries/Nonvanishing.lean |
5 |
1 |
['github-actions'] |
nobody |
4-57028 4 days ago |
4-78932 4 days ago |
4-78926 4 days |
| 43507 |
SnirBroshi author:SnirBroshi |
fix(Combinatorics/SimpleGraph): namespace `completeBipartiteGraph` under `SimpleGraph` |
and fix the names of `CompleteBipartiteGraph.bicoloring` and `CompleteBipartiteGraph.chromaticNumber`.
---
Moved the `namespace SimpleGraph` in `Basic.lean` to right after the definition of `SimpleGraph`, to avoid putting things outside of the namespace.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
29/20 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Vertex.lean |
2 |
1 |
['github-actions'] |
nobody |
4-46780 4 days ago |
4-61680 4 days ago |
4-61674 4 days |
| 43357 |
grunweg author:grunweg |
feat: Continuous{On,At,WithinAt}.of_subsingleton |
Mathlib has the analogous statements for differentiability, but not continuity. While my idea of using them to golf a proof did not work, we might as well have them: they naturally belong here.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
easy
t-topology
|
16/0 |
Mathlib/Topology/Continuous.lean,Mathlib/Topology/ContinuousOn.lean |
2 |
5 |
['github-actions', 'grunweg', 'tb65536'] |
nobody |
4-42023 4 days ago |
9-5904 9 days ago |
9-5898 9 days |
| 28013 |
astrainfinita author:astrainfinita |
feat: Lindemann-Weierstrass Theorem |
This PR continues the work from #6718.
--------
- [x] depends on: #18693
- [x] depends on: #29121
- [x] depends on: #36762
- [x] depends on: #37797
- [x] depends on: #37811
- [x] depends on: #43094 |
t-algebra
t-analysis
label:t-algebra$ |
955/67 |
Mathlib.lean,Mathlib/NumberTheory/Transcendental/Lindemann/AlgebraicPart.lean,Mathlib/NumberTheory/Transcendental/Lindemann/AnalyticalPart.lean,Mathlib/NumberTheory/Transcendental/Lindemann/Basic.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/Eval.lean,docs/100.yaml,docs/1000.yaml |
7 |
58 |
['astrainfinita', 'github-actions', 'grunweg', 'j-loreaux', 'jcommelin', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'mathlib4-merge-conflict-bot'] |
nobody |
4-40470 4 days ago |
4-40470 4 days ago |
8-40374 8 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 |
4-33810 4 days ago |
19-16345 19 days ago |
19-16339 19 days |
| 37964 |
mortarsanjaya author:mortarsanjaya |
feat(Algebra/Order/Floor): weaken assumptions on theorems about `FloorRing` |
This PR weakens as much assumptions as possible on theorems about `FloorSemiring` and `FloorRing`. Mainly, `IsOrderedRing` and `IsStrictOrderedRing` are weakened to just `IsOrderedAddMonoid` or removed completely from the assumptions on the theorems.
Most theorems can be generalized as is or only requires a minor modification of replacing lemmas about casting naturals/integers preserving order (the likes of `Nat.cast_le`, `Int.cast_lt`, etc.) with the corresponding version for `FloorRing`. Some other lemmas require modification in the proofs, but these changes shorten the proofs. The new proof of the theorem `Int.mul_cast_floor_div_cancel_of_pos` requires an extra import.
The assumption `IsOrderedAddMonoid` is required on lemmas that involve comparison + addition, and `IsOrderedRing` is required only on lemmas that involve comparison + multiplication of two non-integer 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]
-->
- [x] depends on: #37714
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
169/142 |
Mathlib/Algebra/ContinuedFractions/Computation/Translations.lean,Mathlib/Algebra/Order/Floor/Defs.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semifield.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/Round.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Data/Int/Log.lean,Mathlib/Data/NNRat/Floor.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/MeasureTheory/Function/Floor.lean,Mathlib/Order/Interval/Finset/Floor.lean,Mathlib/Topology/Algebra/Order/Floor.lean |
13 |
17 |
['github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mortarsanjaya', 'themathqueen'] |
jjdishere assignee:jjdishere |
4-30517 4 days ago |
4-33819 4 days ago |
78-43294 78 days |
| 43524 |
joelriou author:joelriou |
feat(Geometry/Convex): the cone of an affine map from the standard simplex |
From https://github.com/joelriou/excision
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
75/0 |
Mathlib.lean,Mathlib/Geometry/Convex/ConvexSpace/AffineMapCone.lean |
2 |
1 |
['github-actions'] |
nobody |
4-29951 4 days ago |
4-31441 4 days ago |
4-31435 4 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 |
4-29497 4 days ago |
19-16831 19 days ago |
19-16825 19 days |
| 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 |
3 |
['JovanGerb', 'github-actions', 'vihdzp'] |
nobody |
4-27383 4 days ago |
9-43024 9 days ago |
9-45431 9 days |
| 43519 |
harahu author:harahu |
chore(Order/Interval/Set/SuccPred): generalize lemmas |
We generalize five lemmas from `LinearOrder` to `Preorder` and three to `PartialOrder`.
The motivation for the `Preorder` generalizations is to enable deprecation of the almost identical results in `Mathlib/Order/SuccPred/Basic.lean`. The results in that file are stated more generally, so we need to generalize in order to subsume them properly.
---
We're aiming to keep the statements in the touched file rather than those in `SuccPred/Basic.lean` based on [this discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/duplicate.20succ.20interval.20lemmas/with/621955635).
This PR has significant overlap with #23810, but does not cover `Finset/SuccPred.lean`. The touched file in this PR asks to be kept in sync with the `Finset` sibling, but there is already a lot of divergence since the `Finset` file hasn't been treated with `to_dual` yet. I therefore suggest that `Finset/SuccPred.lean` and the other sibling files be brought up to date in a subsequent PR.
The generalizations were performed by Claude Code, and thereafter reviewed and somewhat cleaned up by me.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
61/19 |
Mathlib/Order/Interval/Set/SuccPred.lean |
1 |
3 |
['github-actions', 'harahu', 'vihdzp'] |
vihdzp assignee:vihdzp |
4-26896 4 days ago |
4-33938 4 days ago |
4-33932 4 days |
| 43526 |
vihdzp author:vihdzp |
chore(Topology/CantorBendixson): cleanup + more basic API |
We perform various small golfs, make some variables explicit, and add a few trivial 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]
-->
I would've suggested all of this in #37375, but somehow that PR went under my radar.
[](https://gitpod.io/from-referrer/)
|
t-topology |
58/57 |
Mathlib/SetTheory/Ordinal/FixedPointApproximants.lean,Mathlib/Topology/CantorBendixson.lean,Mathlib/Topology/DerivedSet.lean |
3 |
1 |
['github-actions'] |
nobody |
4-26726 4 days ago |
4-30703 4 days ago |
4-30697 4 days |
| 43447 |
gasparattila author:gasparattila |
feat: add `AffineSubspace.le_of_direction_le` |
The proof is extracted from `AffineSubspace.ext_of_direction_eq`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
12/15 |
Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean |
1 |
2 |
['gasparattila', 'github-actions', 'vlad902', 'wwylele'] |
nobody |
4-24525 4 days ago |
6-85657 6 days ago |
6-85651 6 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 |
28 |
['FordUniver', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'mitchell-horner'] |
nobody |
4-24524 4 days ago |
56-11357 56 days ago |
110-31647 110 days |
| 43406 |
luigi-massacci author:luigi-massacci |
ci: add comment with rendered links for PRs with new crossref tags |
Add a new workflow that computes the list of added cross-reference tags, and renders it as a markdown table with the declaration name (as a clickable link to the code line) side by side with the tag (as a clickable link to the corresponding database entry). This is then be added as a comment to the PR.
The possibility to have something like this was discussed before both on Zulip and in the comments of PRs adding tags, as it is currently highly annoying for a reviewer to see exactly what is being referenced to in the database, this should make it significantly easier.
To compute the diffs, I am recycling the existing `export_crossref` infrastructure so that nothing has to be elaborated again, which seems very reasonable to me. I am only making one change to it, namely adding the resolved url to the json computed in `export_crossrefs.lean`. This won't break anything in the downstream `export-crossref` repo (that reads the entries it needs off a dict), but allows this workflow to not have to re-elaborate all the tags. Unfortunately some entry urls (e.g. for pi-base) cannot be extracted just from the database name and id, so it's either this or re-elaborating.
In order to use it, I'm also adding the currently generated and discarded `crossrefs.json`to the `import-graph`. Looking at the current state, I'm neither the first nor the second to piggy-back off of `import-graph`, and by now we should probably change the name in a follow up PR, if I don't misunderstand something.
Note that the new workflow file is mostly identical to the existing `declDiff`, the changes only start at line 153 (out of 214).
This is the corresponding PR to mathlib-ci for the script that computes the table: https://github.com/leanprover-community/mathlib-ci/pull/68
I've also made a [PR to the crossref-export](https://github.com/leanprover-community/crossref-exports/pulls) repo adjusting the documentation (README).
One thing is I made a documentation choice that can be discussed: I've removed all explicit references to the existing tags from the various script doc-strings and markdown docs, and replaced them with generic phrases. The reason is that every single one was out of date with what is currently in mathlib, and it seems an unnecessary maintenance burden to list the available databases in all those places, especially since none of the scripts actually care (they are not hard-coded).
AI use: I've never added anything to CI before so I had Claude help me a bit with the first draft.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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 |
238/15 |
.github/workflows/build_template.yml,.github/workflows/crossrefDiff.yml,.github/workflows/export_crossrefs.yml,docs/workflows.md,scripts/README.md,scripts/export_crossrefs.lean |
6 |
2 |
['github-actions', 'luigi-massacci'] |
bryangingechen assignee:bryangingechen |
4-23865 4 days ago |
8-12026 8 days ago |
8-12020 8 days |
| 43473 |
Whysoserioushah author:Whysoserioushah |
chore(CategoryTheory/Preadditive/Biproducts): generalize universe and remove some set_options |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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
|
12/43 |
Mathlib/CategoryTheory/Limits/Shapes/BinaryProducts/BinaryFan.lean,Mathlib/CategoryTheory/Limits/Shapes/Biproducts.lean,Mathlib/CategoryTheory/Monoidal/Limits/Cokernels.lean,Mathlib/CategoryTheory/Preadditive/Biproducts.lean |
4 |
3 |
['Whysoserioushah', 'github-actions', 'joelriou'] |
nobody |
4-21107 4 days ago |
4-22984 4 days ago |
5-25839 5 days |
| 43504 |
JovanGerb author:JovanGerb |
perf(Tactic/Positivity): run extensions in `reducible` transparency |
This PR makes it so that `positivity` extensions are executed at `reducible` transparency, which should help with proof maintainability, and gives a slight speedup.
- This does not affect the check of whether the goal is a positivity goal. So, `0 i < x` is still considered a positivity goal, even though `0 i` is not defeq to `0` at reducible transparency.
- The positivity extension for subtraction is checking that it has the right instance using `isDefEq`, so this has to be done at the `implicit` transparency. Apparently, this change causes `positivity` to succeed somewhere where it did not before.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
41/39 |
Counterexamples/NowhereDifferentiable.lean,Mathlib/Algebra/Order/AbsoluteValue/Basic.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Field/Power.lean,Mathlib/Algebra/Order/Module/Field.lean,Mathlib/Analysis/Analytic/ConvergenceRadius.lean,Mathlib/Analysis/Hofer.lean,Mathlib/Analysis/Normed/Group/SeparationQuotient.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/SpecialFunctions/Bernstein.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean,Mathlib/MeasureTheory/Integral/PeakFunction.lean,Mathlib/MeasureTheory/Measure/Real.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Tactic/Positivity/Core.lean |
15 |
3 |
['JovanGerb', 'github-actions', 'leanprover-radar'] |
nobody |
4-20612 4 days ago |
4-26605 4 days ago |
4-26702 4 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
maintainer-merge
label:t-algebra$ |
2/2 |
Mathlib/LinearAlgebra/TensorProduct/Tower.lean |
1 |
4 |
['github-actions', 'leanprover-radar', 'marcelolynch', 'themathqueen'] |
nobody |
4-19963 4 days ago |
30-54521 30 days ago |
30-54515 30 days |
| 43348 |
tb65536 author:tb65536 |
chore(GroupTheory/Nilpotent): split off material on lower central series |
`GroupTheory/Nilpotent.lean` is getting rather long and messy. This PR splits off the material on lower central series to a new 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-algebra
t-group-theory
label:t-algebra$ |
250/203 |
Mathlib.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/Nilpotent/LowerCentralSeries.lean |
3 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
4-19668 4 days ago |
4-20275 4 days ago |
6-43014 6 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 |
4 |
['github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] |
nobody |
4-14917 4 days ago |
4-17462 4 days ago |
13-80821 13 days |
| 41856 |
Ruizsolveall author:Ruizsolveall |
feat(Topology/Covering): fundamental group of the circle is ℤ |
This is the promised follow-up to #40947 (see [Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/How.20to.20wisely.20state.20Homotopy.20lifting.20lemma)); most of the file is the computation that the loop `t ↦ n • t` is sent to `n : ℤ`.
---
I used Claude to navigate the quotient covering map API and for an initial frame of the proofs, which I then reworked; I understand and can vouch for all of it.
|
t-topology
new-contributor
LLM-generated
|
177/0 |
Mathlib.lean,Mathlib/Algebra/Group/Subgroup/ZPowers/Lemmas.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Data/Int/Cast/Lemmas.lean,Mathlib/Topology/Covering/FundamentalGroupCircle.lean,Mathlib/Topology/Homotopy/Lifting.lean |
6 |
8 |
['alreadydone', 'github-actions', 'mathlib-merge-conflicts'] |
ADedecker assignee:ADedecker |
4-12497 4 days ago |
8-8841 8 days ago |
50-53092 50 days |
| 43543 |
wwylele author:wwylele |
fix(LinearAlgebra): correct name and type of Affine.Simplex.span_eq_top |
The previous statement accidentally used V the vector space instead of P the affine space, making it less general. Also changed the name to `affineSpan_eq_top` following the convention
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
4/1 |
Mathlib/LinearAlgebra/AffineSpace/FiniteDimensional.lean |
1 |
2 |
['github-actions', 'wwylele'] |
nobody |
4-11933 4 days ago |
4-13960 4 days ago |
4-13954 4 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
maintainer-merge
label:t-algebra$ |
26/0 |
Mathlib/RepresentationTheory/Subrepresentation.lean |
1 |
22 |
['JX-Mo', 'Whysoserioushah', 'github-actions', 'jcommelin'] |
joelriou assignee:joelriou |
4-8934 4 days ago |
4-10488 4 days ago |
77-13938 77 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 and closes the issue raised in #41471.
This was broken because the old code passed indices of a list around, without updating when the list was modified by preprocessor dropped, split or synthesised facts. No index-fix could recover this, besides just carrying through the index. Keeping the `Origin` a set rather than a single index is necessary since preprocessors can combine hypotheses. However this does mean the preprocessors no longer act on `Expr`s but rather `TaggedProof`s - I'm not the greatest fan of this, but I couldn't come up with an easy solution that preserved this behaviour. I've also provided additional tests which highlight the issues that would've previously arisen.
AI disclosure:
I did have AI assistance (Claude Opus/Fable) with this, but this was for me to learn more Lean syntax not typically seen in writing proofs. The diagnosis and idea for the solution was mine, and debugging and documentation was with AI assistance.
[](https://gitpod.io/from-referrer/)
|
t-meta |
309/147 |
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 |
10 |
['github-actions', 'kbuzzard', 'leanprover-radar', 'sharky564'] |
kim-em assignee:kim-em |
4-7944 4 days ago |
33-49664 33 days ago |
33-49658 33 days |
| 43360 |
metakunt author:metakunt |
feat(RingTheory/AdjoinRoot/MapCyclotomic): define algebra isomorphism isAdjoinRoot for roots of unity |
From #43343
Section is deliberately not exposed. I think the API developed should be enough. But if needed it can always be exposed later. |
t-ring-theory
LLM-generated
|
111/7 |
Mathlib.lean,Mathlib/RingTheory/AdjoinRoot/MapCyclotomic.lean,Mathlib/RingTheory/IsAdjoinRoot.lean |
3 |
19 |
['github-actions', 'mathlib-bors', 'metakunt', 'tb65536'] |
nobody |
4-6990 4 days ago |
4-8977 4 days ago |
6-1547 6 days |
| 43549 |
JovanGerb author:JovanGerb |
chore(Algebra/Homology/HasNoLoop): use `to_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]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
4/16 |
Mathlib/Algebra/Homology/HasNoLoop.lean |
1 |
1 |
['github-actions'] |
nobody |
4-4146 4 days ago |
4-4992 4 days ago |
4-4986 4 days |
| 43545 |
gasparattila author:gasparattila |
refactor(Algebra/Order/Ring/Idempotent): introduce bundled types |
This file currently has several instances defined for specific subtypes. This PR replaces these with bundled structures. This also fixes possible typeclass diamonds when the order defined here conflicts with the general one on subtypes.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
242/111 |
Mathlib/Algebra/Order/Ring/Idempotent.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean |
2 |
1 |
['github-actions'] |
nobody |
4-963 4 days ago |
4-8632 4 days ago |
4-11491 4 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
- Redefine `PFun` as a structure with one field, `toFun : α → Part β`.
- Add the `FunLike (α →. β) α (Part β)` instance and configure `simps` projections.
- Add the projection and application simp lemmas required by the structure wrapper.
- Add `fun x ↦. ...` notation for partial-function literals.
- Adapt downstream equality proofs to use `PFun.ext` or `DFunLike.ext` where
`funext` no longer applies directly.
- Remove 33 local `backward.isDefEq.respectTransparency false` workarounds that
are no longer needed after the refactor.
### 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.
### 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
|
599/544 |
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 |
78 |
['AlexeyMilovanov', 'JovanGerb', 'YaelDillies', 'dagurtomas', 'github-actions', 'j-loreaux', 'jcommelin', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
3-79919 3 days ago |
4-31668 4 days ago |
107-53187 107 days |
| 43556 |
teorth author:teorth |
feat(Analysis/SpecialFunctions/Gamma/Digamma): the real digamma function, its asymptotics, and Gauss' series |
This extends the digamma file with the real digamma function, its logarithmic
asymptotics, and Gauss' series for `ψ`.
---
Main additions:
`Mathlib/Analysis/SpecialFunctions/Gamma/Digamma.lean`
* `Real.digamma`, the real digamma function `logDeriv Real.Gamma`, and its
real functional equations (`Real.digamma_apply_add_one`, `..._add_nat`,
`..._nat_add_one`, `..._one_sub`, `..._two_mul`), obtained from the complex
versions via the bridge below.
* `Complex.digamma_ofReal : Complex.digamma x = Real.digamma x` (a `simp`
lemma, unconditional thanks to matching junk values at the non-positive
integers), and `Complex.digamma_eq_re`.
* Real asymptotics: `Real.monotoneOn_digamma` (monotone on `Ioi 0`, via
log-convexity of `Γ`), `Real.digamma_le_log_le` (`ψ x ≤ log x ≤ ψ (x + 1)`),
and `Real.abs_digamma_sub_log_le` (`|ψ x - log x| ≤ 1 / x`).
* `Complex.gammaAnalyticSet`, the complement of the non-positive integers,
with `isOpen_gammaAnalyticSet`, `isPreconnected_gammaAnalyticSet`,
`Complex.differentiableOn_Gamma`, and `Complex.differentiableOn_digamma`.
* **Gauss' series** `ψ(s) = -γ + ∑ₙ (1/(n+1) - 1/(s+n))`
(`Complex.digamma_eq_gaussSeries`, `Real.digamma_eq_gaussSeries`,
`summable_gaussSeries`). The error is shown to vanish on the positive reals
(a finite partial-sum identity together with `abs_digamma_sub_log_le`) and to
be analytic off the poles, hence zero everywhere by the identity theorem.
`Mathlib/Analysis/Complex/RealDeriv.lean`
* `logDeriv_comp_ofReal`, `logDeriv_ofReal_comp`, relating the real and complex
logarithmic derivatives along the reals.
`Mathlib/Analysis/SpecialFunctions/Gamma/Deriv.lean`
* Real analogues of the existing complex lemmas: `Real.continuousAt_Gamma`,
and non-continuity/non-differentiability of `Real.Gamma` at the non-positive
integers.
Several complex analysis imports were added to `Digamma.lean` in order to justify the proof of the Gauss identity in the complex case.
The code was initially generated by an AI, and then heavily golfed and reviewed by the author.
[](https://gitpod.io/from-referrer/)
|
t-analysis |
413/23 |
Mathlib/Analysis/Complex/RealDeriv.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Digamma.lean |
3 |
2 |
['github-actions', 'metakunt'] |
nobody |
3-76450 3 days ago |
3-77427 3 days ago |
3-77421 3 days |
| 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
|
180/0 |
Mathlib.lean,Mathlib/RingTheory/MvPolynomial/DeterminantalIdeal.lean |
2 |
17 |
['WangJiabai', 'github-actions', 'tb65536'] |
riccardobrasca assignee:riccardobrasca |
3-75684 3 days ago |
7-33986 7 days ago |
97-76507 97 days |
| 42794 |
JovanGerb author:JovanGerb |
chore(CategoryTheory/Limits/Shapes/WidePullBacks): use `to_dual` |
Use `to_dual` for wide pullbacks/pushouts.
Additionally:
- Tag `WidePullbackShape.mkCone` with `implicit_reducible` and remove some backward options.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #42861
[](https://gitpod.io/from-referrer/)
|
tech debt |
133/295 |
Mathlib/AlgebraicTopology/CechNerve.lean,Mathlib/AlgebraicTopology/ExtraDegeneracy.lean,Mathlib/CategoryTheory/Limits/FormalCoproducts/ExtraDegeneracy.lean,Mathlib/CategoryTheory/Limits/Shapes/ConcreteCategory.lean,Mathlib/CategoryTheory/Limits/Shapes/WidePullbacks.lean |
5 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
3-74868 3 days ago |
7-6719 7 days ago |
7-61130 7 days |
| 43562 |
lakesare author:lakesare |
feat(MeasureTheory/Integral/Bochner/Set): add setIntegral_union' |
From the Carleson project.
-------
**Upstreaming from Carleson: [/Carleson/ToMathlib/MeasureTheory/Integral/Bochner/ContinuousLinearMap.lean](https://github.com/fpvandoorn/carleson/blob/0072b6e47ec58ac13be0a9f3b7c17e9f3bb1be2e/Carleson/ToMathlib/MeasureTheory/Integral/Bochner/ContinuousLinearMap.lean)**
### In this PR
#### theorem setIntegral_union'
Renamed: from `MeasureTheory.setIntegral_union_2` to `MeasureTheory.setIntegral_union'`.
Signature: changed from `[MeasurableSpace X]` to `{mX : MeasurableSpace X}` (to match existing section variables).
```lean
-- CARLESON
MeasureTheory.setIntegral_union_2.{u_1, u_2} {X : Type u_1} {E : Type u_2} [NormedAddCommGroup E]
[NormedSpace ℝ E] {f : X → E} {s t : Set X} {μ : Measure X} (hst : Disjoint s t)
(ht : MeasurableSet t) (ht : MeasurableSet t) (hfst : IntegrableOn f (s ∪ t) μ)
[MeasurableSpace X]
: ∫ (x : X) in s ∪ t, f x ∂μ = ∫ (x : X) in s, f x ∂μ + ∫ (x : X) in t, f x ∂μ
-- MATHLIB
MeasureTheory.setIntegral_union'.{u_1, u_3} {X : Type u_1} {E : Type u_3} [NormedAddCommGroup E]
[NormedSpace ℝ E] {f : X → E} {s t : Set X} {μ : Measure X} (hst : Disjoint s t)
(ht : MeasurableSet t) (ht : MeasurableSet t) (hfst : IntegrableOn f (s ∪ t) μ)
{mX : MeasurableSpace X}
: ∫ (x : X) in s ∪ t, f x ∂μ = ∫ (x : X) in s, f x ∂μ + ∫ (x : X) in t, f x ∂μ
```
|
t-measure-probability
carleson
easy
|
5/0 |
Mathlib/MeasureTheory/Integral/Bochner/Set.lean |
1 |
3 |
['github-actions', 'lakesare'] |
nobody |
3-66965 3 days ago |
3-68024 3 days ago |
3-68018 3 days |
| 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'] |
alreadydone assignee:alreadydone |
3-65634 3 days ago |
32-28808 32 days ago |
101-6635 101 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'] |
mattrobball assignee:mattrobball |
3-65633 3 days ago |
99-84888 99 days ago |
99-84882 99 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 |
5 |
['eric-wieser', 'github-actions', 'j-loreaux'] |
ADedecker assignee:ADedecker |
3-65631 3 days ago |
54-26685 54 days ago |
54-27179 54 days |
| 42759 |
mckoen author:mckoen |
feat(CategoryTheory/Subobject): extend image subobject API |
Extends some API for image subobjects. 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]
-->
- [x] depends on: #42757
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
70/0 |
Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/CategoryTheory/Subobject/Limits.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
dagurtomas assignee:dagurtomas |
3-65629 3 days ago |
4-30069 4 days ago |
4-30751 4 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'] |
nobody |
3-64730 3 days ago |
25-43331 25 days ago |
25-43325 25 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 |
4 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
3-59605 3 days ago |
3-60920 3 days ago |
55-49590 55 days |
| 43268 |
naype888-cloud author:naype888-cloud |
feat(Analysis/SpecialFunctions): the cosecant-squared identity |
This adds the finite cosecant-squared identity and its two cotangent-squared corollaries to
Mathlib, building on the existing Chebyshev `U` API. Everything lives in one new file.
The main result is
$$\sum_{k=1}^{N-1}\csc^2\!\bigl(\tfrac{k\pi}{N}\bigr)=\frac{N^2-1}{3},$$
together with `∑ cot²(kπ/N) = (N-1)(N-2)/3` and the odd-denominator half-sum
`∑_{k=1}^{m} cot²(kπ/(2m+1)) = m(2m-1)/3`, which is the arithmetic heart of the elementary
proof of the Basel problem (Aigner–Ziegler, *Proofs from THE BOOK*, Chapter "π²/6").
Along the way we prove three small facts about `U ℝ n` that the existing API was missing:
it splits over `ℝ`, its roots are symmetric about `0`, and they lie in `(-1, 1)`.
Happy to split these into a prerequisite PR if that makes review easier.
**Naming.** `Real.sum_inv_sin_sq_pi_div` — open to suggestions.
**References.** Cauchy, *Cours d'analyse* (1821); Aigner–Ziegler, *Proofs from THE BOOK*.
---
Eduardo Nava-Hernandez, with my father José Arturo Nava-Hernandez and my cousin
Gerardo Gabriel Nava-Gómez — our first contribution to Mathlib. Thank you for your time
reviewing this.
AI-assisted (Claude). I have verified every statement and proof step personally. |
t-analysis
new-contributor
LLM-generated
|
227/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/CosecantSq.lean |
2 |
4 |
['github-actions', 'naype888-cloud', 'wwylele'] |
nobody |
3-57565 3 days ago |
10-79523 10 days ago |
10-79517 10 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 |
33/12 |
Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Order/Filter/TendstoCofinite.lean |
2 |
13 |
['BryceT233', 'github-actions', 'jcommelin', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'plp127'] |
nobody |
3-51623 3 days ago |
3-51623 3 days ago |
8-22586 8 days |
| 43434 |
Parcly-Taxel author:Parcly-Taxel |
refactor: remove `set_option` in `ZagierTwoSquares` |
I refactor one of my very first non-porting contributions to mathlib by changing `zagierSet` to a structure `Zagier.Triple` and rewriting the whole proof to avoid `set_option`s. This required changing the type of `card_fixedPoints_modEq` to accept just `α → α` rather than `Function.End α`.
No deprecations are added since this a leaf file in Archive. |
t-number-theory
tech debt
t-group-theory
|
112/169 |
Archive/ZagierTwoSquares.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean |
2 |
3 |
['Parcly-Taxel', 'github-actions', 'jcommelin'] |
nobody |
3-42840 3 days ago |
3-44509 3 days ago |
7-21952 7 days |
| 43551 |
jessealama author:jessealama |
ci(weekly-lints): pass the build status to the Zulip report |
The report script marks a run with a green checkmark only when the caller sets `SUCCESS=true`. This workflow never did: the switch was added to the script in mathlib-ci in March 2026, and the nightly workflows there were updated to set it, but the weekly workflows in Mathlib and CSLib were not. The result is that every weekly report has been posted with a red X, even when the build was clean and had no linter messages.
The solution is to just capture the exit status of `lake build` and pass it through.
|
CI |
7/1 |
.github/workflows/weekly-lints.yml |
1 |
1 |
['github-actions'] |
nobody |
3-42166 3 days ago |
4-719 4 days ago |
4-713 4 days |
| 43565 |
Parcly-Taxel author:Parcly-Taxel |
refactor(Archive/FriendshipGraphs): golf everything |
Also remove the file's `set_option`s and `@[expose]`. Like #43434, no deprecations are added since this is a leaf file in Archive. |
tech debt |
103/295 |
Archive/Wiedijk100Theorems/FriendshipGraphs.lean |
1 |
7 |
['Parcly-Taxel', 'SnirBroshi', 'github-actions'] |
nobody |
3-40626 3 days ago |
3-41353 3 days ago |
3-57593 3 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 |
22 |
['Robertboy18', 'SnirBroshi', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'wwylele'] |
eric-wieser assignee:eric-wieser |
3-35515 3 days ago |
6-9384 6 days ago |
31-31294 31 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$ |
103/8 |
Mathlib/Algebra/QuadraticAlgebra/Discriminant.lean |
1 |
17 |
['github-actions', 'jcommelin', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'robin-carlier', 'xroblot'] |
nobody |
3-34707 3 days ago |
3-34707 3 days ago |
18-27924 18 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 |
354/0 |
Mathlib.lean,Mathlib/Topology/MetricSpace/Cover.lean,Mathlib/Topology/MetricSpace/CoveringNumbers.lean,Mathlib/Topology/MetricSpace/MinkowskiDimension.lean,docs/references.bib |
5 |
5 |
['github-actions', 'wwylele'] |
CoolRmal assignee:CoolRmal |
3-33197 3 days ago |
3-34010 3 days ago |
48-76508 48 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$ |
56/1 |
Mathlib/Algebra/QuadraticAlgebra/Basic.lean,Mathlib/Algebra/QuadraticAlgebra/Discriminant.lean |
2 |
6 |
['github-actions', 'jcommelin', 'mathlib-merge-conflicts', 'xroblot'] |
nobody |
3-32272 3 days ago |
3-32956 3 days ago |
19-63630 19 days |
| 43441 |
JakobScholbach author:JakobScholbach |
feat(CategoryTheory/LiftingProperties): the unique lifting property |
Defines `HasAtMostOneLiftingProperty i p`, saying that every commutative square from `i` to `p` has at most one filler (its type of lifts is a `Subsingleton`), and `HasUniqueLiftingProperty i p`, which extends it together with `HasLiftingProperty` to say that every such square has exactly one.
The API mirrors `LiftingProperties/Basic.lean`: both classes are stable under composition on either side, admit the corresponding cancellation, transfer along isomorphisms of arrows and along retracts of arrows, and are exchanged by passing to the opposite category. Every statement is dualized with `@[to_dual]`, so the file states one of each pair. Also included are `CommSq.lift_eq_of_hasAtMostOneLiftingProperty`, saying that two fillers of one square agree, and `hasUniqueLiftingProperty_iff`, which restates the unique lifting property as an explicit `∃!`.
I was not fully sure about two points, so I am happy to get feedback particularly on the following:
- `HasUniqueLiftingProperty.of_left_iso` carries `priority := 100`. Is this OK?
- `CommSq.uniqueLiftStruct` is a `def` with `instance_reducible` rather than an instance. OK?
I intend to submit further PRs that develop orthogonal factorization systems based on the small object argument later on, once this PR is approved.
Thank you. |
new-contributor
t-category-theory
LLM-generated
|
312/0 |
Mathlib.lean,Mathlib/CategoryTheory/LiftingProperties/Unique.lean |
2 |
5 |
['JakobScholbach', 'github-actions', 'theebayuser'] |
dagurtomas assignee:dagurtomas |
3-29779 3 days ago |
7-13379 7 days ago |
7-13373 7 days |
| 43521 |
grunweg author:grunweg |
chore: make m(v)fderiv(Within)_eq_fderiv(Within) more type-correct |
---
- [x] depends on: #42443
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
15/8 |
Mathlib/Geometry/Manifold/MFDeriv/NormedSpace.lean |
1 |
6 |
['github-actions', 'grunweg', 'mathlib-dependent-issues', 'scholzhannah'] |
scholzhannah assignee:scholzhannah |
3-29566 3 days ago |
3-31897 3 days ago |
3-31904 3 days |
| 38472 |
Raph-DG author:Raph-DG |
feat(AlgebraicGeometry): The Weil divisor associated to an element of the function field on a locally Noetherian integral scheme |
In this PR we define and provide some basic API for principal Weil divisors, i.e. the Weil divisor associated to an element of the function field of a locally noetherian, integral scheme.
- [x] depends on: #29774
- [x] depends on: #37985
- [x] depends on: #37901
- [x] depends on: #38002
- [x] depends on: #41317
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
233/3 |
Mathlib.lean,Mathlib/AlgebraicGeometry/AlgebraicCycle/Basic.lean,Mathlib/AlgebraicGeometry/AlgebraicCycle/Principal.lean,Mathlib/AlgebraicGeometry/Noetherian.lean,Mathlib/AlgebraicGeometry/OrderOfVanishing.lean,Mathlib/AlgebraicGeometry/Restrict.lean,Mathlib/Topology/LocallyFinsupp.lean |
7 |
6 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
3-27375 3 days ago |
7-21441 7 days ago |
8-19494 8 days |
| 43570 |
kim-em author:kim-em |
refactor(AlgebraicGeometry/Modules): transport pushforward along Opens.map functoriality isos |
This PR defines `Scheme.Modules.pushforwardId` and `pushforwardComp` by transporting the sheaf-of-modules isomorphisms along the existing `Opens.mapId` and `Opens.mapComp` (via `SheafOfModules.pushforwardCongr₂`) rather than by identifying `Opens.map (𝟙 X).base` with `𝟭` and `Opens.map (f ≫ g).base` with `Opens.map g.base ⋙ Opens.map f.base` by unfolding `Opens.map`. The componentwise simp lemmas become `M.presheaf.map_id` rather than `rfl`, and the pseudofunctor coherence fields are discharged explicitly since `cat_disch` no longer finds them by reflexivity. Also adds the simp lemma `Adj.eqToHom_τl`.
It is extracted from Paul Reichert's experiment making `Functor.comp` and `Functor.id` `instance_reducible` (https://github.com/leanprover-community/mathlib4/compare/master...leanprover-community:mathlib4-nightly-testing:datokrat/functorcomp, discussed at https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/backward.2EisDefEq.2ErespectTransparency), and depends on https://github.com/leanprover-community/mathlib4/pull/43569. The diff relative to that PR is https://github.com/kim-em/mathlib4/compare/associators-sheaves...opens-map.
🤖 Prepared with Claude Code |
tech debt |
516/139 |
Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pullback.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pushforward.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PushforwardContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/AlgebraicGeometry/Modules/Sheaf.lean,Mathlib/CategoryTheory/Adjunction/CompositionIso.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Adj.lean,Mathlib/Topology/Sheaves/Module.lean |
10 |
1 |
['github-actions'] |
nobody |
3-27273 3 days ago |
3-28106 3 days ago |
3-29922 3 days |
| 43569 |
kim-em author:kim-em |
refactor(ModuleCat): state pushforward coherence without identifying functor bracketings |
This PR makes the pushforward of (pre)sheaves of modules along the identity functor and along a composition of functors honestly typed. Currently `pushforwardId` takes `𝟙 S` at the type `S ⟶ (𝟭 C).op ⋙ S` and `pushforwardComp` takes `φ ≫ whiskerLeft F.op ψ` at the type `S ⟶ (F ⋙ G).op ⋙ T`, which only elaborate because `Functor.comp`, `Functor.id` and `Functor.op` unfold. The new `pushforwardIdHom` and `pushforwardCompHom` are the unitor and associator composed with `Functor.opId`/`Functor.opComp` (see `pushforwardIdHom_eq` and `pushforwardCompHom_eq`), and the associativity and unitality isomorphisms of pushforward and pullback are transported along the functor associator and unitors through the new `pushforwardCongr₂`/`pullbackCongr₂` (added at the presheaf level, together with `pushforwardCongr`, `pushforwardNatTrans` and `pushforwardNatIso`). The scheme-level pseudofunctor coherence lemmas in `AlgebraicGeometry.Modules.Sheaf` are reproved from these, and `Adjunction.leftAdjointCompIso_trans` is added for that purpose.
It is extracted from Paul Reichert's experiment making `Functor.comp` and `Functor.id` `instance_reducible` (https://github.com/leanprover-community/mathlib4/compare/master...leanprover-community:mathlib4-nightly-testing:datokrat/functorcomp, discussed at https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/backward.2EisDefEq.2ErespectTransparency), and is the (pre)sheaf-of-modules half of https://github.com/leanprover-community/mathlib4/pull/43566; it is independent of that PR.
🤖 Prepared with Claude Code |
tech debt |
480/131 |
Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pullback.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Pushforward.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PushforwardContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/AlgebraicGeometry/Modules/Sheaf.lean,Mathlib/CategoryTheory/Adjunction/CompositionIso.lean,Mathlib/Topology/Sheaves/Module.lean |
9 |
1 |
['github-actions'] |
nobody |
3-26911 3 days ago |
3-28886 3 days ago |
3-30507 3 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 |
118/4 |
Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean |
1 |
10 |
['WilliamCoram', 'github-actions', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
3-26664 3 days ago |
25-17814 25 days ago |
25-17808 25 days |
| 43578 |
WilliamCoram author:WilliamCoram |
feat: identifying WithZero (Multiplicative M) and WithTop M |
We identify `Mᵐ⁰ = WithZero (Multiplicative M)` with `WithTop M` in the form of the order-and-additive isomorphism.
In future work this will allow us to define additive valuations from valuations with a usable target (specifically attaching to a rank one discrete valuation an additive valuation into WithTop Z).
AI usage:
The need of attaching additive valuations to valuations came up in my Newton polygon work - after some discussion with people and Claude this was the approach I felt worked best for me. The file was drafted and written by Claude with my input and cleaning.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
LLM-generated |
142/0 |
Mathlib.lean,Mathlib/Algebra/Order/GroupWithZero/NegLog.lean |
2 |
1 |
['github-actions'] |
nobody |
3-16387 3 days ago |
3-17056 3 days ago |
3-17289 3 days |
| 43577 |
javgomzar author:javgomzar |
chore(Order/BooleanAlgebra): Add push tags |
Add push tags to some lemmas in Mathlib/Order/BooleanAlgebra/Set.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-order
new-contributor
|
19/4 |
Mathlib/Order/BooleanAlgebra/Set.lean |
1 |
3 |
['github-actions'] |
nobody |
3-10898 3 days ago |
3-15932 3 days ago |
3-19789 3 days |
| 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
|
|
70/45 |
Mathlib/LinearAlgebra/FreeModule/Basic.lean,Mathlib/NumberTheory/NumberField/Discriminant/Different.lean,Mathlib/RingTheory/FractionalIdeal/Norm.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/Ideal/Quotient/HasFiniteQuotients/Basic.lean |
6 |
6 |
['github-actions', 'jcommelin', 'leanprover-radar', 'mathlib-dependent-issues', 'xroblot'] |
nobody |
3-10576 3 days ago |
3-10576 3 days ago |
9-77646 9 days |
| 26479 |
thefundamentaltheor3m author:thefundamentaltheor3m |
feat(Analysis/Complex/CauchyIntegral): Cauchy–Goursat for Unbounded Rectangles |
In this PR, we prove versions of the Cauchy-Goursat theorem where the contours in question are rectangular and unbounded (ie, where the contours look like the $\bigsqcup$ symbol). I am not sure if I have formalised these in the best way, or if `Analysis.Complex.CauchyIntegral` is the best place for them (it might be prudent to reorganise the file into multiple files at some point), but I believe this is a useful result. Suggestions welcome.
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
To indicate co-authors, include lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-analysis
sphere-packing
maintainer-merge
|
186/0 |
Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/MeasureTheory/Integral/DominatedConvergence.lean |
2 |
49 |
['github-actions', 'j-loreaux', 'loefflerd', 'mathlib4-merge-conflict-bot', 'thefundamentaltheor3m', 'themathqueen', 'wwylele'] |
j-loreaux assignee:j-loreaux |
3-10504 3 days ago |
7-68325 7 days ago |
108-78848 108 days |
| 43415 |
gasparattila author:gasparattila |
feat: lattice lemmas about `Submodule.toAffineSubspace` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
55/0 |
Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean |
1 |
1 |
['github-actions'] |
nobody |
3-6718 3 days ago |
7-84159 7 days ago |
7-84153 7 days |
| 43590 |
mariainesdff author:mariainesdff |
chore(Topology/Algebra/Valued/NormedValued): generalize Valuation.norm to 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
t-topology
|
8/8 |
Mathlib/Topology/Algebra/Valued/NormedValued.lean |
1 |
1 |
['github-actions'] |
nobody |
3-3276 3 days ago |
3-3987 3 days ago |
3-3981 3 days |
| 43591 |
mariainesdff author:mariainesdff |
feat(RingTheory/Valuation/ValuationSubring): algebraic instances |
Given a valuation subring `A`, if `A.valuation` is trivial on `k`, `A` is a `k`-algebra.
Co-authored-by: @xgenereux
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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/0 |
Mathlib/RingTheory/Valuation/ValuationSubring.lean |
1 |
1 |
['github-actions'] |
nobody |
3-2027 3 days ago |
3-3052 3 days ago |
3-3046 3 days |
| 43588 |
plp127 author:plp127 |
feat(SetTheory/Ordinal): definition of addition and multiplication |
We prove theorems `Ordinal.type_lt_sum_lex` and `Ordinal.type_lt_prod_lex`, which characterize addition and multiplication on ordinals.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-set-theory
t-order
|
39/0 |
Mathlib/Data/Sum/Order.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean |
3 |
3 |
['github-actions', 'plp127', 'vihdzp'] |
nobody |
2-83239 2 days ago |
3-5324 3 days ago |
3-5318 3 days |
| 43582 |
vlad902 author:vlad902 |
feat(AffineSpace): `toAffineSubspace` 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$ |
29/4 |
Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean,Mathlib/LinearAlgebra/AffineSpace/Dimension.lean |
2 |
3 |
['github-actions', 'vlad902', 'wwylele'] |
nobody |
2-79805 2 days ago |
3-16939 3 days ago |
3-17161 3 days |
| 43522 |
JovanGerb author:JovanGerb |
style: omit `<|` before `fun` |
This PR replaces `<| fun` with `fun` as these are equivalent.
This was done directly with a single search and replace.
This is similar to #31769
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
321/321 |
Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Spectrum/Pi.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/MonCat/Limits.lean,Mathlib/Algebra/Category/Ring/Colimits.lean,Mathlib/Algebra/Category/Ring/Under/Limits.lean,Mathlib/Algebra/Category/Ring/Under/Property.lean,Mathlib/Algebra/DirectSum/LinearMap.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Lie/Basis/Base.lean,Mathlib/Algebra/Lie/Sl2.lean,Mathlib/Algebra/Module/Submodule/Equiv.lean,Mathlib/Algebra/Module/Torsion/Basic.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/Order/Antidiag/Nat.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/Floor/Div.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Polynomial/Sequence.lean,Mathlib/Algebra/Ring/CentroidHom.lean,Mathlib/Algebra/SkewMonoidAlgebra/Lift.lean,Mathlib/Algebra/Star/CentroidHom.lean,Mathlib/AlgebraicGeometry/Birational/Composition.lean,Mathlib/AlgebraicGeometry/Birational/Dominant.lean,Mathlib/AlgebraicGeometry/Cover/Directed.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/AlgebraicGeometry/ValuativeCriterion.lean,Mathlib/AlgebraicTopology/AlternatingFaceMapComplex.lean,Mathlib/Analysis/BoxIntegral/Basic.lean,Mathlib/Analysis/CStarAlgebra/Module/Constructions.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/Complex/HasPrimitives.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/Dual.lean,Mathlib/Analysis/InnerProductSpace/JointEigenspace.lean,Mathlib/Analysis/InnerProductSpace/OfNorm.lean,Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/Analysis/Matrix/Order.lean,Mathlib/Analysis/Normed/Field/ProperSpace.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean,Mathlib/Analysis/SpecialFunctions/ImproperIntegrals.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Orthogonality.lean,Mathlib/CategoryTheory/Action/Concrete.lean,Mathlib/CategoryTheory/Action/Monoidal.lean,Mathlib/CategoryTheory/Discrete/SumsProducts.lean,Mathlib/CategoryTheory/Equivalence/Symmetry.lean,Mathlib/CategoryTheory/Extensive.lean,Mathlib/CategoryTheory/Galois/Basic.lean,Mathlib/CategoryTheory/Galois/EssSurj.lean,Mathlib/CategoryTheory/Galois/Examples.lean,Mathlib/CategoryTheory/Galois/IsFundamentalgroup.lean,Mathlib/CategoryTheory/Galois/Prorepresentability.lean,Mathlib/CategoryTheory/Limits/Constructions/Over/Products.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Fubini.lean,Mathlib/CategoryTheory/Limits/IsConnected.lean,Mathlib/CategoryTheory/Limits/Shapes/CombinedProducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Grothendieck.lean,Mathlib/CategoryTheory/Limits/Shapes/SingleObj.lean,Mathlib/CategoryTheory/Limits/Types/End.lean,Mathlib/CategoryTheory/Limits/VanKampen.lean,Mathlib/CategoryTheory/Monoidal/ExternalProduct/Basic.lean,Mathlib/CategoryTheory/Monoidal/Free/Coherence.lean,Mathlib/CategoryTheory/Monoidal/Limits/Preserves.lean,Mathlib/CategoryTheory/MorphismProperty/Ind.lean,Mathlib/CategoryTheory/MorphismProperty/OverAdjunction.lean,Mathlib/CategoryTheory/Sites/Canonical.lean,Mathlib/CategoryTheory/Sites/CoproductSheafCondition.lean,Mathlib/CategoryTheory/Sites/Hypercover/Homotopy.lean,Mathlib/CategoryTheory/Sites/SubcanonicalOver.lean,Mathlib/CategoryTheory/Sums/Products.lean,Mathlib/Combinatorics/Graph/Subgraph.lean,Mathlib/Combinatorics/Matroid/Loop.lean,Mathlib/Combinatorics/Matroid/Rank/Finite.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Computability/Language.lean,Mathlib/Computability/Primrec/List.lean,Mathlib/Data/DFinsupp/Defs.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/Finset/Sups.lean,Mathlib/Data/List/Defs.lean,Mathlib/Data/List/Destutter.lean,Mathlib/Data/List/Shortlex.lean,Mathlib/Data/List/Sort.lean,Mathlib/Data/Matrix/Basis.lean,Mathlib/Data/Multiset/Sym.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/Data/PFun.lean,Mathlib/Data/Set/Card.lean,Mathlib/Data/Set/Defs.lean,Mathlib/Data/Set/FiniteExhaustion.lean,Mathlib/Data/Subtype.lean,Mathlib/FieldTheory/Galois/GaloisClosure.lean,Mathlib/FieldTheory/Isaacs.lean |
222 |
4 |
['JovanGerb', 'felixpernegger', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
2-77075 2 days ago |
2-80300 2 days ago |
4-14964 4 days |
| 43309 |
YaelDillies author:YaelDillies |
refactor(Geometry/Convex): make `StdSimplex` extend `Finsupp` |
Among other things, this lets users write `w.support` for `w : StdSimplex _ _` instead of `w.weights.support`. It prints the same, however.
From the Polytopes in Berlin workshop, where participants requested that they could write `w.support` instead of `w.weights.support`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
6/4 |
Mathlib/Geometry/Convex/ConvexSpace/Barycenter.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean |
2 |
4 |
['YaelDillies', 'b-mehta', 'github-actions'] |
nobody |
2-76907 2 days ago |
8-10628 8 days ago |
8-11436 8 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/Basic.lean,Mathlib/Data/EReal/Basic.lean |
3 |
15 |
['YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] |
eric-wieser assignee:eric-wieser |
2-75962 2 days ago |
3-6031 3 days ago |
70-44388 70 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'] |
alreadydone assignee:alreadydone |
2-65630 2 days ago |
7-59596 7 days ago |
59-12241 59 days |
| 40368 |
Sanghyeok0 author:Sanghyeok0 |
feat: add confluence predicates for relations |
This PR adds a minimal relation-level API for confluence-style properties:
* `Relation.IsDiamond`
* `Relation.IsConfluent`
* `Relation.IsChurchRosser`
It also adds the basic API connecting these predicates:
* `Relation.ReflTransGen.to_eqvGen`
* `Relation.Join.le_eqvGen`
* `Relation.IsChurchRosser.isConfluent`
* `Relation.IsConfluent.isChurchRosser`
* `Relation.IsChurchRosser.join_reflTransGen_eq_eqvGen`
The main downstream application is the polynomial-reduction development in
#41475. There, polynomial reduction is treated as an ordinary relation on
`MvPolynomial`, and these predicates are used to formulate confluence and the
Church--Rosser property.
A more general rewriting API exists in CSLib. This PR does not attempt to
upstream that API wholesale; its scope is intentionally limited to the
declarations needed by the downstream polynomial application.
The earlier version of this PR also introduced
`Relation.StronglyConfluent` and additional equivalence packaging. Those
declarations have been removed to keep this PR small and application-driven.
Reference: Becker, Weispfenning, and Kredel,
*Gröbner Bases: A Computational Approach to Commutative Algebra*.
AI usage disclosure:
I used OpenAI Codex to generate initial drafts of the definitions, theorem statements, proof scripts, and docstrings. I made the final decisions on the mathematical scope and API design, reviewed the generated code and final changes, and made a few edits to statements and docstrings.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic
new-contributor
tech debt
LLM-generated
|
103/25 |
Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/Logic/Relation.lean |
2 |
36 |
['Sanghyeok0', 'SnirBroshi', 'chenson2018', 'github-actions', 'mathlib-merge-conflicts'] |
JovanGerb assignee:JovanGerb |
2-65628 2 days ago |
4-83115 4 days ago |
76-74383 76 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'] |
j-loreaux assignee:j-loreaux |
2-65627 2 days ago |
36-35918 36 days ago |
36-53771 36 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'] |
mattrobball assignee:mattrobball |
2-65626 2 days ago |
56-15620 56 days ago |
56-15615 56 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
|
37/2 |
Mathlib/Data/List/Infix.lean |
1 |
4 |
['github-actions', 'mathlib-merge-conflicts', 'theebayuser'] |
TwoFX assignee:TwoFX |
2-65625 2 days ago |
4-103 4 days ago |
54-54399 54 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'] |
ocfnash assignee:ocfnash |
2-65624 2 days ago |
43-58036 43 days ago |
54-52498 54 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'] |
j-loreaux assignee:j-loreaux |
2-65623 2 days ago |
40-84256 40 days ago |
40-84250 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'] |
alreadydone assignee:alreadydone |
2-65622 2 days ago |
24-22800 24 days ago |
24-23748 24 days |
| 43589 |
mariainesdff author:mariainesdff |
chore(Data/Int/WithZero): use log in WithZeroMulInt.toNNReal |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
8/9 |
Mathlib/Data/Int/WithZero.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean |
2 |
1 |
['github-actions'] |
loefflerd assignee:loefflerd |
2-65620 2 days ago |
3-4558 3 days ago |
3-4552 3 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'] |
nobody |
2-64731 2 days ago |
23-64817 23 days ago |
88-39735 88 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'] |
nobody |
2-64729 2 days ago |
71-867 71 days ago |
71-34508 71 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'] |
nobody |
2-64728 2 days ago |
27-27959 27 days ago |
79-57794 79 days |
| 43326 |
kim-em author:kim-em |
feat: `Std.Total` instance for InvImage |
This PR fills in the transfer of unbundled relation classes along `InvImage` and `Order.Preimage`, so that both spellings carry everything `Function.onFun` already has.
`InvImage` gains `Std.Refl`, `Std.Symm`, `Std.Asymm`, `Std.Total`, `IsPreorder`, `IsEquiv`, `IsStrictOrder` and `IsStrictWeakOrder` instances, along with `antisymm`, `trichotomous`, `isPartialOrder`, `isLinearOrder` and `isStrictTotalOrder` for injective `f`. (`Std.Irrefl` and `IsTrans` are already in `Mathlib/Order/Defs/Unbundled.lean`.) These are stated for `Sort`, matching core's `InvImage`. `Order.Preimage` gains the four injectivity lemmas `trichotomous`, `isPartialOrder`, `isLinearOrder` and `isStrictTotalOrder`.
All of these are definitionally the `Function.onFun` versions, and are proved by `inferInstanceAs`, but instance search does not fire on goals stated with `InvImage` or `⁻¹'o` (and `InvImage` is how goals arise from `WellFoundedRelation`-adjacent and `Sum.Lex`-based constructions). Used in https://github.com/leanprover/cslib/pull/401.
```lean
example {α β : Type} (r : α → α → Prop) [Std.Total r] (f : β → α) :
Std.Total (InvImage r f) := inferInstance
```
🤖 Prepared with Claude Code
|
t-order |
65/5 |
Mathlib/Order/RelClasses.lean |
1 |
6 |
['SnirBroshi', 'github-actions', 'kim-em'] |
nobody |
2-61737 2 days ago |
2-64171 2 days ago |
3-31312 3 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
tech debt
|
188/89 |
Mathlib.lean,Mathlib/Data/Dyadic.lean,Mathlib/Data/Dyadic/OrderedRing.lean,Mathlib/Data/Dyadic/ToReal.lean,Mathlib/Tactic/Inclusion/Extension/IntervalDyadicReal/Init.lean |
5 |
13 |
['ADedecker', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'vihdzp'] |
nobody |
2-60640 2 days ago |
3-60630 3 days ago |
19-70101 19 days |
| 42336 |
kim-em author:kim-em |
feat(Tactic): add sum-of-squares tactic |
This PR adds the `leanprover/sos` tactic to Mathlib. See `MathlibTest/Tactic/SOS/Showcase.lean` for example applications.
---
## Review order
The history is deliberately six buildable commits, in this order:
1. `feat(Cache): fetch prebuilt native dependencies` — the Lake/cache boundary, tests, workflow hook, security documentation, and stable engine pin.
2. `feat(Tactic/SOS): add exact certificate verifier` — the small proof-facing polynomial and certificate layer.
3. `feat(Tactic/SOS): add sum-of-squares tactic` — reification, lifting, tactic elaboration, and public imports.
4. `test(Tactic/SOS): cover published examples and trust boundary` — the announcement showcase, Harrison examples, Blekherman–Bodirsky–Raghavendra follow-up examples, division/modulus coverage, issue #50, and axiom audit.
5. `chore(Tactic/SOS): use Lean 4.34 native releases` — the final SOS/CSDP release pins and simplified provider-release fetch.
6. `refactor(Tactic/SOS): share certificate quotation` — moves reusable certificate decompilation, quotation, and formatting into SOS v0.2.4, and removes obsolete commentary and repeated end-to-end examples. This layer reduces the Mathlib diff by 405 lines without removing distinct tactic paths or active negative tests.
## Trust and cache boundary
CSDP is a search oracle, not part of the logical trusted base. The tactic converts its answer to exact rational data and closes the goal through the checked verifier and Lean kernel.
Mathlib's cache command fetches `@CSDP:release` before unpacking the ordinary Lean cache. CSDP v0.1.2 supplies its complete platform build, so a cold checkout retains the normal invariant without compiling CSDP components:
```bash
lake exe cache get
lake build --no-build
```
The checked-in manifest pins the provider source, and the cache helper executes only its explicit allowlist. CSDP does not use Lake's implicit preferred-release job, so an ordinary offline or sandboxed build can still fall back to its bundled portable sources.
The Mathlib requirement points to the immutable, Mathlib-free SOS v0.2.4 release. Its Hex dependencies are likewise pinned to stable releases.
## Required landing order
1. Merge this Mathlib PR while it points to the stable SOS release tag.
2. Update SOS `main` to the staged Mathlib-free engine branch.
3. Make a one-line Mathlib follow-up changing the SOS requirement from the release tag back to `main`.
|
|
3999/2 |
Cache/IO.lean,Cache/Main.lean,Cache/Native.lean,Cache/README.md,Cache/SECURITY.md,Cache/Test.lean,Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/SOS.lean,Mathlib/Tactic/SOS/Certificate.lean,Mathlib/Tactic/SOS/Lift.lean,Mathlib/Tactic/SOS/Polynomial.lean,Mathlib/Tactic/SOS/Raw.lean,Mathlib/Tactic/SOS/Reify.lean,Mathlib/Tactic/SOS/Tactic.lean,Mathlib/Tactic/SOS/Verifier.lean,MathlibTest/Tactic/SOS/Axioms.lean,MathlibTest/Tactic/SOS/BBR.lean,MathlibTest/Tactic/SOS/DivMod.lean,MathlibTest/Tactic/SOS/Examples.lean,MathlibTest/Tactic/SOS/Harrison.lean,MathlibTest/Tactic/SOS/Issue50.lean,MathlibTest/Tactic/SOS/Showcase.lean,docs/workflows.md,lake-manifest.json,lakefile.lean |
26 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
2-59436 2 days ago |
2-59436 2 days ago |
2-59430 2 days |
| 42110 |
Zeta-Wu author:Zeta-Wu |
feat: add path length for paths in pseudo emetric spaces |
This PR defines the length of a path in a `PseudoEMetricSpace` as its variation on the unit interval.
It proves the basic properties of path length:
- the endpoint distance is bounded by the length;
- the constant path has length zero;
- reversing a path preserves its length;
- concatenating two paths adds their lengths.
Main declarations:
- `Path.length`
- `Path.edist_le_length`
- `Path.length_refl`
- `Path.length_symm`
- `Path.length_trans`
This is intended as a first step toward a broader theory of rectifiable paths, including later results on invariance of length under monotone reparametrization, and shortest paths are line segments up to monotone reparametrization in strict convex spaces.
This PR was discussed on Zulip [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/PR.20.2342110.3A.20Path.2Elength.20in.20PseudoEMetricSpace).
AI disclosure: I used an agent called ReasLingo to generate those codes. After the codes are generated I read them line by line and ask the agent to rewrite some proofs when I think it is a bad code. For design decisions, I asked the agent to give me several versions, and I manually picked one of them to make sure it fits human understanding.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
LLM-generated
|
225/0 |
Mathlib.lean,Mathlib/Topology/EMetricSpace/ArcLength.lean,Mathlib/Topology/EMetricSpace/PathLength.lean,Mathlib/Topology/Path.lean,Mathlib/Topology/UnitInterval.lean |
5 |
109 |
['CoolRmal', 'Zeta-Wu', 'felixpernegger', 'github-actions', 'pelicanhere', 'scholzhannah'] |
scholzhannah assignee:scholzhannah |
2-54109 2 days ago |
2-56181 2 days ago |
36-60080 36 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 |
2-49045 2 days ago |
17-45095 17 days ago |
17-45089 17 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 |
2 |
['b-mehta', 'github-actions'] |
nobody |
2-46916 2 days ago |
22-15410 22 days ago |
22-16107 22 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
LLM-generated
|
120/9 |
Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/NormNum/NatFib.lean,MathlibTest/Tactic/NormNum/NatFib.lean,MathlibTest/Tactic/NormNum/SimprocMacro.lean |
4 |
6 |
['JovanGerb', 'github-actions', 'kim-em'] |
thorimur assignee:thorimur |
2-46881 2 days ago |
20-50979 20 days ago |
20-53325 20 days |
| 43401 |
thomaskwaring author:thomaskwaring |
feat(Order): counterparts of `iSupIndep.disjoint_biSup_biSup{'}` for `sSup` |
Transfer `iSupIndep.disjoint_biSup_biSup'` and `iSupIndep.disjoint_biSup_biSup` to `sSupIndep.disjoint_sSup_sSup'` and `sSupIndep.disjoint_sSup_sSup`. Also add the supporting rewrite lemma `biSup_preimage`, roughly dual to `sSup_image`.
---
Used downstream for working with `Partition`, whose fields are stated in terms of `sSupIndep`.
[](https://gitpod.io/from-referrer/)
|
t-order |
22/0 |
Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/SupIndep.lean |
3 |
5 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
2-41403 2 days ago |
2-44514 2 days ago |
7-49828 7 days |
| 43599 |
fjvga author:fjvga |
feat(MeasureTheory/Measure/FrostmanMassBound): mass distribution principle |
If a measure ν satisfies ν s ≤ (ediam s)^d for all sets of diameter ≤ ε, and ν A ≠ 0, then d ≤ dimH A. This is the standard mass distribution principle (Frostman, easy direction) appearing in every fractal geometry textbook (Falconer §4.1, Mattila §4.9).
The proof composes two existing Mathlib results:
- Measure.le_hausdorffMeasure
- le_dimH_of_hausdorffMeasure_ne_zero
References:
- K. Falconer, Fractal Geometry, §4.1
- P. Mattila, Geometry of Sets and Measures in Euclidean Spaces, §4.9
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
new-contributor
|
68/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/FrostmanMassBound.lean |
2 |
4 |
['github-actions', 'metakunt'] |
nobody |
2-40851 2 days ago |
2-52609 2 days ago |
2-53409 2 days |
| 43399 |
jessealama author:jessealama |
feat(TacticAnalysis): tag pass messages with the linter option name |
The tactic analyzer passes reports through `logWarningAt`/`logInfoAt` or `Try this` suggestions, so their messages don't record which pass produced them. Reports built from build logs (e.g., the weekly linting report) can't group messages by linter.
This PR wraps each `config.run` in the tactic analyzer's `runPasses` with a new `withLintTagging`, which rewrites every message logged during the pass. The rewritten messages have the same shape as those coming from `Lean.Linter.logLint`:
- the message kind becomes the pass's option name (e.g. `linter.tacticAnalysis.mergeWithGrind`),
- the inner `Lean.Linter.linterMessageTag` marks it as a linter message,
- the usual note "This linter can be disabled with `set_option ... false`" is appended.
Severity is preserved (in particular, info stays info). Errors, and messages that are already linter messages, are left alone.
Because the shape matches `logLint`, `Lean.Linter.recordLints` will write these new messages into the .olean, so `lake lint` can report them per linter. This extends to the JSON code-quality mode, too.
---------
- [x] depends on: #43397 |
t-meta |
239/21 |
Mathlib/Tactic/TacticAnalysis.lean,MathlibTest/TacticAnalysis.lean,MathlibTest/tryAtEachStep.lean |
3 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
2-34527 2 days ago |
2-37955 2 days ago |
2-42545 2 days |
| 43583 |
xroblot author:xroblot |
chore(Algebra/QuadraticAlgebra): define all the casts through C |
The casts into `QuadraticAlgebra R a b` were defined in two different ways, some through `C` and some through the anonymous constructor, which made the `Algebra ℤ` instances non-defeq at instance transparency. Using `C` everywhere fixes it, and an example records the defeq.
Prepared with Claude Code 🤖
---
|
t-algebra label:t-algebra$ |
10/4 |
Mathlib/Algebra/QuadraticAlgebra/Basic.lean,Mathlib/Algebra/QuadraticAlgebra/Defs.lean |
2 |
15 |
['github-actions', 'jcommelin', 'leanprover-radar', 'mathlib-bors', 'plp127', 'xroblot'] |
nobody |
2-24467 2 days ago |
3-10109 3 days ago |
3-11159 3 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
|
64/0 |
Mathlib/Analysis/Convex/Intrinsic.lean,Mathlib/Analysis/Convex/Topology.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Homeomorph/Defs.lean |
4 |
15 |
['TTony2019', 'github-actions', 'j-loreaux', 'themathqueen'] |
j-loreaux assignee:j-loreaux |
2-21823 2 days ago |
2-21823 2 days ago |
60-22960 60 days |
| 43608 |
SnirBroshi author:SnirBroshi |
chore(Order/RelClasses): remove redundant instances |
Some instances can be synthesized but are necessary to help `to_dual`, so they are kept.
---
Also remove instance names using `to_dual none`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
31/70 |
Mathlib/Order/Quotient.lean,Mathlib/Order/RelClasses.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/SetTheory/ZFC/Basic.lean |
4 |
3 |
['SnirBroshi', 'github-actions', 'leanprover-radar'] |
nobody |
2-21593 2 days ago |
2-29507 2 days ago |
2-31984 2 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 |
15 |
['SnirBroshi', 'b-mehta', 'github-actions', 'metakunt'] |
TwoFX assignee:TwoFX |
2-15737 2 days ago |
2-15737 2 days ago |
59-17352 59 days |
| 43612 |
YaelDillies author:YaelDillies |
feat(Geometry/Convex): `positivity` extension for `StdSimplex.weights` |
Also add some Qq helper to Qq-match a type with `Finsupp`.
From the Polyhedra in Berlin workshop where people would have found it useful for `positivity` to close some goals.
Generated by Claude Opus in a few prompts worth of reviewl.
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
t-meta
|
126/1 |
Mathlib/Data/Finsupp/Defs.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/Util/Qq.lean,MathlibTest/Tactic/Positivity.lean |
4 |
4 |
['YaelDillies', 'eric-wieser', 'github-actions', 'grunweg'] |
nobody |
2-15300 2 days ago |
2-18009 2 days ago |
2-19475 2 days |
| 43626 |
mathlib-splicebot author:mathlib-splicebot |
chore(Algebra/GroupWithZero/Basic): automated extraction from #43343 |
This PR was automatically created from PR #43343 by @metakunt via a [review comment](https://github.com/leanprover-community/mathlib4/pull/43343#discussion_r3969323130) by @metakunt. |
t-algebra label:t-algebra$ |
21/1 |
Mathlib/Algebra/GroupWithZero/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
2-14884 2 days ago |
2-17643 2 days ago |
2-17637 2 days |
| 43346 |
JadAbouHawili author:JadAbouHawili |
feat(Combinatorics/SimpleGraph/Connectivity): change IsEdgeReachable and IsEdgeConnected to accept ENat instead of Nat |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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
|
28/6 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean |
2 |
35 |
['JadAbouHawili', 'SnirBroshi', 'github-actions'] |
nobody |
2-12861 2 days ago |
4-33588 4 days ago |
8-61156 8 days |
| 43484 |
lua-vr author:lua-vr |
feat(Dynamics/Ergodic): stronger PreErgodic definition |
---
Made with the help of Sonnet, thoroughly reviewed and edited by me.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-dynamics |
89/54 |
Mathlib/Dynamics/Ergodic/Action/Basic.lean,Mathlib/Dynamics/Ergodic/Action/OfMinimal.lean,Mathlib/Dynamics/Ergodic/AddCircle.lean,Mathlib/Dynamics/Ergodic/Ergodic.lean,Mathlib/Dynamics/Ergodic/Extreme.lean,Mathlib/Dynamics/Ergodic/Function.lean |
6 |
3 |
['github-actions', 'lua-vr'] |
sgouezel assignee:sgouezel |
2-12536 2 days ago |
5-33738 5 days ago |
5-33732 5 days |
| 43625 |
b-mehta author:b-mehta |
feat(NumberTheory/Bernoulli): denominators of Bernoulli numbers are squarefree |
This PR adds some new public theorems for bernoulli numbers. The new results are typically viewed as corollaries of the von Staudt-Clausen theorem, but the implementation in mathlib means it's actually easier to prove them along the way, and we can obtain `rw` versions, or versions with weaker hypotheses than von Staudt-Clausen.
In addition, the API changes have a secondary purpose: to act as a prereq for #42304. In principle these could be separate PRs, but the redefinition of the private abbrev `pIntegral` is mixed tightly with the new public API that it's difficult to make this PR into 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-number-theory |
148/79 |
Mathlib/NumberTheory/Bernoulli.lean |
1 |
2 |
['github-actions'] |
nobody |
2-12424 2 days ago |
2-17664 2 days ago |
2-17658 2 days |
| 43396 |
yuanyi-350 author:yuanyi-350 |
feat(AlgebraicTopology/FundamentalGroupoid): prove the generation part of van Kampen's theorem |
- [ ] depends on #43400 |
|
220/0 |
Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/VanKampen.lean |
2 |
1 |
['github-actions'] |
nobody |
2-11682 2 days ago |
8-23530 8 days ago |
8-23524 8 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 |
12 |
['eric-wieser', 'github-actions', 'hawkrobe', 'mathlib-merge-conflicts'] |
jjdishere assignee:jjdishere |
2-10082 2 days ago |
2-13933 2 days ago |
77-3852 77 days |
| 43594 |
JovanGerb author:JovanGerb |
chore(Tactic/GCongr): deprecate `Tactic/GCongr/CoreAttrs` |
This PR moves the `@[gcongr]` attributes that are in `Mathlib.Tactic.GCongr.CoreAttrs` to `Mathlib.Tactic.GCongr` and deprecates the former file.
This follows the same pattern as e.g. `to_additive` of putting the basic attributes/setup in the root file of the tactic implementation.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
30/34 |
Mathlib/Tactic/GCongr.lean,Mathlib/Tactic/GCongr/CoreAttrs.lean |
2 |
1 |
['github-actions'] |
nobody |
2-8775 2 days ago |
2-73120 2 days ago |
2-73114 2 days |
| 43587 |
mariainesdff author:mariainesdff |
chore(RingTheory/Valuation/DiscreteValuativeRel): fix two typos in lemma 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-ring-theory |
7/3 |
Mathlib/NumberTheory/LocalField/Basic.lean,Mathlib/RingTheory/Valuation/DiscreteValuativeRel.lean |
2 |
3 |
['github-actions', 'j-loreaux', 'mariainesdff'] |
nobody |
2-8386 2 days ago |
2-9467 2 days ago |
2-9956 2 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 |
2-8154 2 days ago |
28-35319 28 days ago |
28-37416 28 days |
| 43627 |
themathqueen author:themathqueen |
chore(LinearAlgebra/Matrix/PosDef): generalize and golf `PosSemidef.posDef_iff_isUnit` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #43617
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
31/23 |
Mathlib/Analysis/Matrix/Order.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean |
2 |
3 |
['github-actions', 'mathlib-dependent-issues', 'themathqueen'] |
nobody |
2-8131 2 days ago |
2-9405 2 days ago |
2-9863 2 days |
| 42666 |
artie2000 author:artie2000 |
refactor(Data/SetLike): generalise `IsConcreteLE` |
* Generalise `IsConcreteLE` typeclass from `SetLike` to `Membership`
* Generalise the API where possible
* Rename theorems to match generalisation
AI usage disclosure: Codex was used to fix long line lints. All changes were 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
287/249 |
Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Subgroup/Pointwise.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Group/Submonoid/Support.lean,Mathlib/Algebra/Lie/Engel.lean,Mathlib/Algebra/Lie/LieTheorem.lean,Mathlib/Algebra/Lie/Subalgebra.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/Submodule/Equiv.lean,Mathlib/Algebra/Module/Submodule/Ker.lean,Mathlib/Algebra/Module/Submodule/Map.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/Algebra/Module/Torsion/PrimaryComponent.lean,Mathlib/Algebra/Pointwise/Stabilizer.lean,Mathlib/Algebra/Polynomial/CoeffMem.lean,Mathlib/Algebra/Ring/NonZeroDivisors.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/AlgebraicGeometry/Sites/SmallAffineZariski.lean,Mathlib/AlgebraicGeometry/SpreadingOut.lean,Mathlib/AlgebraicTopology/SimplicialComplex/Basic.lean,Mathlib/Analysis/Calculus/TangentCone/Prod.lean,Mathlib/Analysis/Convex/Cone/Extension.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/CategoryTheory/Groupoid/Subgroupoid.lean,Mathlib/CategoryTheory/Sites/Spaces.lean,Mathlib/Combinatorics/Tiling/Tile.lean,Mathlib/Data/SetLike/Basic.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/FieldTheory/Extension.lean,Mathlib/FieldTheory/Finite/Polynomial.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/Minpoly/MinpolyDiv.lean,Mathlib/FieldTheory/PurelyInseparable/Basic.lean,Mathlib/FieldTheory/RatFunc/IntermediateField.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean,Mathlib/Geometry/Euclidean/Altitude.lean,Mathlib/Geometry/Euclidean/Angle/Bisector.lean,Mathlib/Geometry/Euclidean/Incenter.lean,Mathlib/Geometry/Euclidean/Projection.lean,Mathlib/Geometry/Euclidean/Sphere/Tangent.lean,Mathlib/GroupTheory/FiniteAbelian/Basic.lean,Mathlib/GroupTheory/FiniteAbelian/Duality.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/Perm/MaximalSubgroups.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/Centralizer.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/GroupTheory/SpecificGroups/ZGroup.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Basic.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean,Mathlib/LinearAlgebra/AffineSpace/FiniteDimensional.lean,Mathlib/LinearAlgebra/Basis/VectorSpace.lean,Mathlib/LinearAlgebra/DFinsupp.lean,Mathlib/LinearAlgebra/Dual/Defs.lean,Mathlib/LinearAlgebra/Finsupp/Span.lean,Mathlib/LinearAlgebra/Finsupp/Supported.lean,Mathlib/LinearAlgebra/Pi.lean,Mathlib/LinearAlgebra/Prod.lean,Mathlib/LinearAlgebra/Projection.lean,Mathlib/LinearAlgebra/Projectivization/Subspace.lean,Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/NumberTheory/ModularForms/Cusps.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Galois.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/Order/Atoms.lean,Mathlib/Order/PFilter.lean,Mathlib/Order/Sublattice.lean,Mathlib/RepresentationTheory/Stabilizer.lean,Mathlib/RingTheory/Conductor.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Basic.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/DedekindDomain/PID.lean,Mathlib/RingTheory/Extension/Cotangent/Basis.lean,Mathlib/RingTheory/Extension/Presentation/Core.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Finiteness.lean,Mathlib/RingTheory/Ideal/GoingUp.lean,Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Colon.lean,Mathlib/RingTheory/Ideal/NatInt.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/Ideal/Operations.lean |
124 |
21 |
['JovanGerb', 'SnirBroshi', 'artie2000', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
2-7571 2 days ago |
2-11042 2 days ago |
15-35113 15 days |
| 43637 |
gasparattila author:gasparattila |
feat(Topology/Sets): `ClosedIciTopology` and `OrderClosedTopology` instances for `Compacts` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology |
41/0 |
Mathlib/Topology/Sets/VietorisTopology.lean |
1 |
1 |
['github-actions'] |
nobody |
2-7562 2 days ago |
2-8922 2 days ago |
2-8916 2 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 |
191/0 |
Mathlib.lean,Mathlib/Analysis/Distribution/SchwartzSpace/CompactSupport.lean |
2 |
14 |
['github-actions', 'mathlib-splicebot', 'mcdoll', 'ocfnash', 'teorth'] |
nobody |
2-5352 2 days ago |
2-66850 2 days ago |
19-35686 19 days |
| 43613 |
YaelDillies author:YaelDillies |
feat(Tactic/Positivity): cover `Finset.sum_pos'` with the `Finset.sum` extension |
To prove `0 < ∑ a ∈ s, f a`, the `positivity` extension now also searches through assumptions of the form `a ∈ s` and for each of them tries to prove `0 < f a`.
Will be used in convexity theory.
Generated by Claude Opus
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-meta
LLM-generated
maintainer-merge
|
59/13 |
Mathlib/Tactic/Positivity/Finset.lean,Mathlib/Util/Qq.lean |
2 |
9 |
['YaelDillies', 'eric-wieser', 'github-actions'] |
nobody |
2-5012 2 days ago |
2-10798 2 days ago |
2-17692 2 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.
---
We would need this for #43191 to weaken `QuasiMeasurePreserving` from assuming `Measurable f` to `AEMeasurable`.
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
maintainer-merge
|
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 |
4 |
['Ruben-VandeVelde', 'felixpernegger', 'github-actions', 'lua-vr'] |
EtienneC30 assignee:EtienneC30 |
2-87 2 days ago |
5-81404 5 days ago |
5-81398 5 days |
| 43458 |
ajirving author:ajirving |
feat(MeasureTheory/Integral/CircleAverage): add norm_circleAverage_le_circleAverage_norm |
Adds norm_circleAverage_le_circleAverage_norm which is more general than the existing result for abs. Uses the new norm result to simplify the proof for abs.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
easy
maintainer-merge
|
8/3 |
Mathlib/MeasureTheory/Integral/CircleAverage.lean |
1 |
4 |
['JX-Mo', 'Ruben-VandeVelde', 'ajirving', 'github-actions'] |
nobody |
2-31 2 days ago |
6-39987 6 days ago |
6-39981 6 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 |
19/19 |
Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Subsemigroup/Defs.lean,Mathlib/AlgebraicTopology/SimplicialComplex/Basic.lean,Mathlib/Data/SetLike/Basic.lean,Mathlib/Order/Atoms.lean |
5 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
1-82980 1 day ago |
2-1280 2 days ago |
26-11707 26 days |
| 43643 |
Sanghyeok0 author:Sanghyeok0 |
refactor(Logic/Relation): move inclusion lemmas out of EqvGen |
I moved the four relation-inclusion lemmas introduced in #40792 from `Relation.EqvGen` to `Relation`, retaining the existing names as deprecated aliases.
This refactor was split out from #40368 following the review discussion there.
Changes:
* `Relation.EqvGen.reflGen_le_eqvGen` → `Relation.reflGen_le_eqvGen`
* `Relation.EqvGen.symmGen_le_eqvGen` → `Relation.symmGen_le_eqvGen`
* `Relation.EqvGen.transGen_le_eqvGen` → `Relation.transGen_le_eqvGen`
* `Relation.EqvGen.reflTransGen_le_eqvGen` → `Relation.reflTransGen_le_eqvGen`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
22/4 |
Mathlib/Logic/Relation.lean |
1 |
2 |
['github-actions'] |
nobody |
1-81985 1 day ago |
2-964 2 days ago |
2-1034 2 days |
| 43372 |
plp127 author:plp127 |
chore: deprecate monad operations on `MvPolynomial` |
Deprecate some monad operations on `MvPolynomial`, as they are simply special cases of existing `eval` operations and it's not clear from the name what the signatures of these operations are.
---
- [x] depends on: #43371
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
375/254 |
Mathlib/Algebra/Module/LinearMap/Polynomial.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/Expand.lean,Mathlib/Algebra/MvPolynomial/Monad.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/RingTheory/AlgebraicIndependent/Basic.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/RingTheory/WittVector/Basic.lean,Mathlib/RingTheory/WittVector/Defs.lean,Mathlib/RingTheory/WittVector/Frobenius.lean,Mathlib/RingTheory/WittVector/InitTail.lean,Mathlib/RingTheory/WittVector/IsPoly.lean,Mathlib/RingTheory/WittVector/MulCoeff.lean,Mathlib/RingTheory/WittVector/MulP.lean,Mathlib/RingTheory/WittVector/StructurePolynomial.lean,Mathlib/RingTheory/WittVector/Verschiebung.lean,Mathlib/RingTheory/WittVector/WittPolynomial.lean |
17 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
1-70791 1 day ago |
1-72320 1 day ago |
1-76725 1 day |
| 40599 |
ChiCubed author:ChiCubed |
feat(LinearAlgebra): rank-nullity theorems for Submodule map/comap |
We show forms of the rank-nullity theorem involving `Submodule.map` and `Submodule.comap`. Together with `LinearMap.ker_comp` this provides a formula for the rank of the kernel of a composite (and, in finite dimensions at least, for the rank of the range).
---
I didn't explicitly write the aforementioned formula for rank ker (f ∘ g) since it is just `LinearMap.ker_comp` followed by `LinearMap.lift_rank_comap`, but perhaps it should be added for discoverability?
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
63/15 |
Mathlib/Algebra/Module/Submodule/Ker.lean,Mathlib/Algebra/Module/Submodule/Map.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/LinearAlgebra/Dimension/RankNullity.lean |
4 |
41 |
['ADedecker', 'ChiCubed', 'github-actions', 'jcommelin', 'themathqueen', 'wwylele'] |
ocfnash assignee:ocfnash |
1-70562 1 day ago |
1-70562 1 day ago |
79-36760 79 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'] |
joelriou assignee:joelriou |
1-65632 1 day ago |
29-7380 29 days ago |
94-83682 94 days |
| 39710 |
justus-springer author:justus-springer |
feat(AlgebraicGeometry/AffineSpace): affine space is smooth |
Show that affine space `𝔸(n; S)` is smooth over `S` (or relative dimension `Nat.card n`) . Note that this replaces the the `LocallyOfFinitePresentation` instance, as it can be inferred automatically from smoothness ([instLocallyOfFinitePresentationOfSmooth](https://leanprover-community.github.io/mathlib4_docs/Mathlib/AlgebraicGeometry/Morphisms/Smooth.html#AlgebraicGeometry.instLocallyOfFinitePresentationOfSmooth)).
- [x] depends on: #39709
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
large-import
|
23/6 |
Mathlib/AlgebraicGeometry/AffineSpace.lean,Mathlib/AlgebraicGeometry/Morphisms/Smooth.lean |
2 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
dagurtomas assignee:dagurtomas |
1-65630 1 day ago |
2-38435 2 days ago |
2-41173 2 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'] |
kim-em assignee:kim-em |
1-65629 1 day ago |
37-60515 37 days ago |
89-27886 89 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'] |
mariainesdff assignee:mariainesdff |
1-65628 1 day ago |
27-40597 27 days ago |
80-77812 80 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'] |
mariainesdff assignee:mariainesdff |
1-65628 1 day ago |
76-42745 76 days ago |
77-39032 77 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'] |
mattrobball assignee:mattrobball |
1-65626 1 day ago |
37-39154 37 days ago |
37-40331 37 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 |
1-60760 1 day ago |
12-62599 12 days ago |
12-85197 12 days |
| 43604 |
MetinovAdik author:MetinovAdik |
feat(Analysis): Laplacian and gradient under composition with a dilation |
feat(Analysis): Laplacian and gradient under composition with a dilation
Two lemmas describing how the Laplacian and the gradient behave under
pre-composition with `c • ·`, the missing companions of `fderiv_comp_smul`
and `iteratedFDeriv_comp_const_smul`.
* `InnerProductSpace.laplacian_comp_smul` (in `InnerProductSpace/Laplacian.lean`,
next to `laplacian_smul`): for `f : E → F` with `ContDiff ℝ 2 f` and `c : ℝ`,
`Δ (f <| c • ·) x = c ^ 2 • Δ f (c • x)`.
Each of the two derivatives contributes one factor of `c`.
Proof: `laplacian_eq_iteratedFDeriv_stdOrthonormalBasis` and
`iteratedFDeriv_comp_const_smul`, in the style of `laplacian_smul`.
* `gradient_comp_smul` (in `Calculus/Gradient/Basic.lean`): for `f : F → 𝕜`
and `c : 𝕜`, `∇ (f <| c • ·) x = conj c • ∇ f (c • x)`.
The derivative picks up `c` (`fderiv_comp_smul`) and the Riesz isomorphism is
conjugate linear, hence `conj c`. No differentiability hypothesis: for `c = 0`
both sides are `0`, exactly as in `fderiv_comp_smul`.
Motivation: the parabolic scaling `v ↦ λ • v (λ • x) (λ² t)` of the Navier–Stokes
equations, where every term acquires `λ³`. Establishing that in Lean required
these two facts, which were the only missing pieces; the rest was already in
Mathlib.
Names follow `fderiv_comp_smul` rather than `iteratedFDeriv_comp_const_smul`;
happy to switch if the other convention is preferred.
---
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
t-analysis
new-contributor
LLM-generated
|
20/0 |
Mathlib/Analysis/Calculus/Gradient/Basic.lean,Mathlib/Analysis/InnerProductSpace/Laplacian.lean |
2 |
3 |
['github-actions'] |
nobody |
1-60700 1 day ago |
2-37702 2 days ago |
2-37696 2 days |
| 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 |
195/76 |
Mathlib/Algebra/MvPolynomial/Monad.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/Data/Finsupp/Weight.lean,docs/references.bib |
5 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
1-59859 1 day ago |
1-61567 1 day ago |
17-34211 17 days |
| 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 |
8 |
['github-actions', 'j-loreaux', 'mcdoll', 'themathqueen'] |
nobody |
1-59205 1 day ago |
9-56282 9 days ago |
9-57848 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$ |
554/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,docs/references.bib |
9 |
122 |
['Whysoserioushah', 'copilot-pull-request-reviewer', 'faenuccio', 'github-actions', 'jjdishere', 'mariainesdff', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'pechersky', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
1-55379 1 day ago |
1-57027 1 day ago |
17-3475 17 days |
| 40309 |
jjdishere author:jjdishere |
feat(IsValuativeTopology/Normed): `Normed` to `IsValuativeTopology` |
### Main description
The goal of this PR is to prepare APIs for creating `ValuativeRel`, `IsValuativeTopology`, ... instances when a `NormedField` is given, similar to `NormedField.toValued`.
### Entry point for reviewing
In file `Mathlib.Topology.Algebra.ValuativeRel.Normed`, we define `NormedField.toValuativeRel`, `NormedField.isValuativeTopology` and `IsValuativeTopology.toNormedField`.
Co-authored-by: Edison Xie <yx3021@ic.ac.uk>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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-topology
LLM-generated
|
321/30 |
Mathlib.lean,Mathlib/Basic/NNReal/Defs.lean,Mathlib/Topology/Algebra/ValuativeRel/Normed.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean |
4 |
13 |
['faenuccio', 'github-actions', 'jjdishere', 'mariainesdff', 'mathlib-merge-conflicts', 'riccardobrasca'] |
faenuccio assignee:faenuccio |
1-53467 1 day ago |
6-37748 6 days ago |
14-2582 14 days |
| 42724 |
kim-em author:kim-em |
feat(RingTheory/Polynomial/Hermite): derivatives and the generating function |
This PR adds the classical derivative identities, three-term recurrence, parity, and exponential generating function for the probabilists' Hermite polynomials. The algebraic results include `derivative_hermite`, `iterate_derivative_hermite`, `hermite_add_two`, and polynomial and evaluated forms of parity; the analytic results prove `∑' n, Hₙ(x) * tⁿ / n! = exp (x * t - t² / 2)` in complex and real `HasSum` forms, with a real `tsum` corollary. The algebraic and analytic developments live in separate files.
This contribution originated in the [Tau Ceti project](https://github.com/TauCetiProject/TauCeti), an AI-written mathematics repository; it was adapted for Mathlib with Claude Code and reviewed with OpenAI Codex, supervised by Kim Morrison.
:robot: Prepared with OpenAI Codex
|
t-ring-theory
LLM-generated
TauCeti
|
259/0 |
Mathlib.lean,Mathlib/RingTheory/Polynomial/Hermite/Derivative.lean,Mathlib/RingTheory/Polynomial/Hermite/GeneratingFunction.lean |
3 |
3 |
['b-mehta', 'github-actions', 'kim-em'] |
nobody |
1-50708 1 day ago |
8-57546 8 days ago |
8-57540 8 days |
| 43595 |
localecho author:localecho |
feat(NumberTheory/Transcendental/Liouville): irrational reals are LiouvilleWith for 1 < p ≤ 2 |
Closes the gap noted in this file's module doc — the reverse implication for 1 < p ≤ 2 was flagged 'not formalized yet' since 2021. Proved via Dirichlet approximation (Real.infinite_rat_abs_sub_lt_one_div_den_sq_of_irrational) plus a finite-fiber argument on denominators, rather than continued fractions directly.
----
Formalized with Claude's help, verified by a clean lake build.
Posted about this gap in #new-members first: https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Intro.3A.20Brigham.20Hall.20.3B.20LiouvilleWith.20gap.20for.201.20.3C.20p.20.E2.89.A4.202/near/622672679 |
t-number-theory
new-contributor
LLM-generated
|
76/2 |
Mathlib/NumberTheory/Transcendental/Liouville/LiouvilleWith.lean |
1 |
4 |
['SnirBroshi', 'github-actions', 'metakunt'] |
nobody |
1-45803 1 day ago |
2-72431 2 days ago |
2-72425 2 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/)
|
t-ring-theory |
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 |
1-45523 1 day ago |
9-44308 9 days ago |
10-33831 10 days |
| 43607 |
Whning0513 author:Whning0513 |
chore(Data/Set/Semiring): add simp attributes |
Mark `up_le_up` and `up_lt_up` with `@[simp]`, as requested by the existing TODO.
--------
Tests:
- `lake env lean Mathlib/Data/Set/Semiring.lean`
- `lake build Mathlib.Data.Set.Semiring`
- `lake exe runLinter Mathlib.Data.Set.Semiring` |
t-data
new-contributor
|
2/1 |
Mathlib/Data/Set/Semiring.lean |
1 |
6 |
['LLaurance', 'Whning0513', 'copilot-pull-request-reviewer', 'github-actions', 'grunweg', 'leanprover-radar'] |
nobody |
1-45155 1 day ago |
2-35324 2 days ago |
2-35318 2 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$ |
119/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Hecke/LeftFiniteDoubleCoset.lean |
2 |
1 |
['github-actions'] |
nobody |
1-44008 1 day ago |
1-44717 1 day ago |
9-59089 9 days |
| 43465 |
TJHeeringa author:TJHeeringa |
feat(Analysis/InnerProductSpace/Reproducing): add bilinearform for Mercer's theorem |
Mercer's theorem provides a spectral representation to kernels satisfying an integrability condition. The proof builds on a Hilbert-Schmidt operator. This PR introduces the bilinear form used to define that operator.
---
PR #42003 introduces the corresponding integral operator.
AI:
Claude and Mistral have helped me get up to speed with how to do the measurability proofs.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis |
157/0 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Reproducing/Mercer.lean |
2 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
1-43214 1 day ago |
1-43931 1 day ago |
5-16242 5 days |
| 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 |
1-42448 1 day ago |
1-43133 1 day ago |
10-13248 10 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
t-ring-theory
|
29/2 |
Mathlib/RingTheory/MvPowerSeries/Derivative.lean |
1 |
1 |
['github-actions'] |
nobody |
1-41329 1 day ago |
3-64509 3 days ago |
15-33275 15 days |
| 43642 |
b1de0 author:b1de0 |
feat(MeasureTheory/Measure/ResolventTransform): finite moment expansion |
Add a finite moment expansion of `resolventTransform` with an exact integral remainder, assuming integrable moments and a nonzero evaluation point outside the support image.
---
I need this to relate matched moments to errors in kernels of the form `∫ u, (1 + w * u)⁻¹ ∂μ`. The identity is finite and does not require convergence of the corresponding infinite geometric series.
|
t-measure-probability
new-contributor
|
52/0 |
Mathlib/MeasureTheory/Measure/ResolventTransform.lean |
1 |
2 |
['github-actions'] |
nobody |
1-39655 1 day ago |
1-40363 1 day ago |
1-40468 1 day |
| 43655 |
mariainesdff author:mariainesdff |
feat(RingTheory/Valuation/Discrete/IsDiscreteValuationSubring): equivalent discrete valuations |
If `v` is equivalent to a discrete valuation, then `v` is discrete.
In particular, if a `ValuationSubring F` `A` is a discrete valuation ring, then `A.valuation` is discrete.
Co-authored-by: @xgenereux
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
58/1 |
Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/IsDiscreteValuationRing.lean |
3 |
1 |
['github-actions'] |
nobody |
1-37520 1 day ago |
1-38686 1 day ago |
1-38680 1 day |
| 43423 |
b-mehta author:b-mehta |
chore(Algebra/Polynomial/Identities): move powAddExpansion and powSubPowFactor out of Polynomial |
This resolves a TODO, and also gives a useful generalisation.
The form of the result is a little odd, and it seems to be there for historical reasons. I kept it for consistency, but if reviewers prefer then I can adjust `powAddExpansion` to an existential statement, and probably deprecate `powSubPowFactor`.
Moves:
- `Polynomial.powAddExpansion` -> `powAddExpansion`
- `Polynomial.powSubPowFactor` -> `powSubPowFactor`
This is prerequisite for #42304
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
28/33 |
Mathlib/Algebra/Polynomial/Identities.lean,Mathlib/Algebra/Ring/GeomSum.lean,Mathlib/Algebra/Ring/Identities.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/FinTwo.lean,Mathlib/NumberTheory/SumTwoSquares.lean,Mathlib/RingTheory/Algebraic/StronglyTranscendental.lean,Mathlib/RingTheory/WittVector/Frobenius.lean |
7 |
1 |
['github-actions'] |
nobody |
1-35879 1 day ago |
4-16066 4 days ago |
4-19256 4 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
|
107/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 |
11 |
['github-actions', 'kebekus', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
1-34361 1 day ago |
1-34361 1 day ago |
29-25665 29 days |
| 43658 |
attilavjda author:attilavjda |
feat(Analysis/SpecialFunctions/Trigonometric/Sinc): add bounds and classical limits for sinc |
Add
- `cos x ≤ sin x / x ≤ 1`
- `sinc` is positive on `(-π, π)`
- `lim_{x → 0} (sin x) / x = 1`
- `lim_{x → 0} (tan x) / x = 1`
- `lim_{x → 0} (1 - cos x) / x = 0`
to `/Mathlib/Analysis/SpecialFunctions/Trigonometric/Sinc.lean b/Mathlib/Analysis/SpecialFunctions/Trigonometric/Sinc.lean`
Used Aristotle AI to make these 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-analysis |
42/0 |
Mathlib/Analysis/SpecialFunctions/Trigonometric/Sinc.lean |
1 |
3 |
['SnirBroshi', 'attilavjda', 'github-actions'] |
nobody |
1-31797 1 day ago |
1-33441 1 day ago |
1-33609 1 day |
| 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
|
169/8 |
Mathlib/Analysis/Complex/CanonicalDecomposition.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Complex/Poisson.lean |
3 |
5 |
['github-actions', 'kebekus', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
1-29443 1 day ago |
16-38138 16 days ago |
36-67074 36 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 |
1-27604 1 day ago |
26-11410 26 days ago |
47-66687 47 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 |
1-26147 1 day ago |
57-1051 57 days ago |
57-2087 57 days |
| 38223 |
Deicyde author:Deicyde |
feat(Geometry/Manifold): add `MfldCat`, the category of `C^n` manifolds |
Defines `MfldCat 𝕜 n`: the category of `C^n` manifolds over a field `𝕜`, in which the model with corners is allowed to vary between objects. An object bundles a model vector space `E`, a model space `H`, a model with corners `I : ModelWithCorners 𝕜 E H` and a term of `ModelWithCorners.MfldCat I n`--see #41109. This includes manifolds with boundary / corners.
For more discussion see this Zulip thread: [#PR reviews > #38223 The Category of C^n Manifolds](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2338223.20The.20Category.20of.20C.5En.20Manifolds/with/587038032)
Also added: `ContMDiffMap.id_apply`, `.coe_id` and `.coe_comp` which are comparable to `ContinuousMap` API.
### Future work
- ✅ Define a Monoidal structure via product manifolds, analogous to `Manifold.Topology.Category.TopCat.Monoidal` #38560
- ✅ Define the tangent functor: `M ↦ TM`, `F ↦ F.tangentMap` from `MfldCat (n+1) 𝕜` to `MfldCat n 𝕜` #38270
- Functor `FGModuleCat 𝕜 ⥤ MfldCat 𝕜 n` sending a finite-dimensional `𝕜`-vector space to the manifold modeled on itself. Left as `TODO`.
- Define `FGModuleCat 𝕜` as an enriched category over `MfldCat n 𝕜`. Then _smooth functors_ can be realized as endofunctors on the enriched category. This is the main motivation for this construction.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #41109 [The category of `C^n` manifolds on a fixed model]
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
new-contributor
t-category-theory
|
210/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/Category/MfldCat/Basic.lean,Mathlib/Geometry/Manifold/ContMDiffMap.lean |
3 |
63 |
['Deicyde', 'chrisflav', 'dagurtomas', 'github-actions', 'idontgetoutmuch', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'peabrainiac'] |
joelriou assignee:joelriou |
1-25850 1 day ago |
1-26728 1 day ago |
60-66961 60 days |
| 43664 |
b-mehta author:b-mehta |
feat(LinearAlgebra/Span/Basic): add Submodule.prodEquiv |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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/0 |
Mathlib/LinearAlgebra/Span/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
1-23077 1 day ago |
1-26667 1 day ago |
1-26661 1 day |
| 43666 |
SnirBroshi author:SnirBroshi |
feat(Topology/GDelta/Basic): a set is meagre iff it's a countable union of nowhere dense sets |
We have the same but with "contained in" instead, so this version has a stronger `mp` and a weaker `mpr`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
8/0 |
Mathlib/Topology/GDelta/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
1-22224 1 day ago |
1-24145 1 day ago |
1-24139 1 day |
| 43665 |
SnirBroshi author:SnirBroshi |
feat(Topology/Baire/Lemmas): a space is Baire iff countable unions of closed nowhere dense sets have empty interior |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
41/0 |
Mathlib/Topology/Baire/Lemmas.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Defs/Basic.lean,Mathlib/Topology/GDelta/Basic.lean |
4 |
2 |
['github-actions'] |
nobody |
1-21285 1 day ago |
1-23999 1 day ago |
1-24192 1 day |
| 43668 |
SnirBroshi author:SnirBroshi |
doc(MeasureTheory): `wikidata` tags for some basics |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
5/2 |
Mathlib/MeasureTheory/Constructions/BorelSpace/Basic.lean,Mathlib/MeasureTheory/MeasurableSpace/Defs.lean,Mathlib/MeasureTheory/Measure/Dirac/Def.lean |
3 |
1 |
['github-actions'] |
nobody |
1-19349 1 day ago |
1-20886 1 day ago |
1-20880 1 day |
| 43669 |
SnirBroshi author:SnirBroshi |
doc(Topology): `wikidata` tags for some basics |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
18/2 |
Mathlib/Topology/Defs/Basic.lean,Mathlib/Topology/Defs/Induced.lean,Mathlib/Topology/GDelta/Basic.lean,Mathlib/Topology/Homeomorph/Defs.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean |
5 |
1 |
['github-actions'] |
nobody |
1-18567 1 day ago |
1-20656 1 day ago |
1-20650 1 day |
| 43671 |
b-mehta author:b-mehta |
feat(LinearAlgebra/FreeModule/ModN): drop Module.Free from finiteness instances |
This has an import increase but it's a leaf file in mathlib.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
large-import
label:t-algebra$ |
13/4 |
Mathlib/LinearAlgebra/FreeModule/ModN.lean |
1 |
1 |
['github-actions'] |
nobody |
1-18450 1 day ago |
1-19238 1 day ago |
1-19232 1 day |
| 43672 |
javgomzar author:javgomzar |
chore(LinearAlgebra/Matrix): add push tags to transpose lemmas |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
6/5 |
Mathlib/LinearAlgebra/Matrix/Defs.lean |
1 |
3 |
['github-actions'] |
nobody |
1-16254 1 day ago |
1-18788 1 day ago |
1-18782 1 day |
| 43678 |
mariainesdff author:mariainesdff |
feat(Algebra/Order/Group/Cylic): add OrderMonoidIso.map_genLTOne |
Co-authored-by: @xgenereux
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
39/0 |
Mathlib/Algebra/Order/Group/Cyclic.lean |
1 |
1 |
['github-actions'] |
nobody |
1-15691 1 day ago |
1-16663 1 day ago |
1-16657 1 day |
| 43677 |
SnirBroshi author:SnirBroshi |
doc(Topology/Bornology): `wikidata` tags for some basics |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
easy
|
4/1 |
Mathlib/Analysis/LocallyConvex/Bounded.lean,Mathlib/Topology/Bornology/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
1-13934 1 day ago |
1-16767 1 day ago |
1-16761 1 day |
| 39875 |
mkaratarakis author:mkaratarakis |
refactor(NumberField/House): expose Siegel lemma infrastructure |
Add new theorems for house of algebraic integer, expose Siegel's lemma infrastructure and rename the private basis-matrix bound to `basisMatrixInvSupNorm`, make `house` reducible, and adjust `exists_ne_zero_int_vec_house_le`. This changes are required for #39874.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/) |
|
26/16 |
Mathlib/NumberTheory/NumberField/House.lean |
1 |
6 |
['github-actions', 'mathlib-merge-conflicts', 'mkaratarakis', 'tb65536'] |
nobody |
1-13362 1 day ago |
1-69105 1 day ago |
65-23669 65 days |
| 43683 |
mariainesdff author:mariainesdff |
feat(RingTheory/Valuation/ValuativeRel/Basic): add IsEquiv lemmas |
Co-authored-by: @xgenereux
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
14/0 |
Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
1-11157 1 day ago |
1-12033 1 day ago |
1-12027 1 day |
| 43662 |
luigi-massacci author:luigi-massacci |
doc(DerivNotation): remove stale "future work" note |
The title. The notation defined in the file is now available for all those spaces (except W which doesn't exist yet, but I think the comment looses meaning anyway).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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-analysis
|
0/3 |
Mathlib/Analysis/Distribution/DerivNotation.lean |
1 |
3 |
['SnirBroshi', 'github-actions', 'luigi-massacci'] |
nobody |
1-10862 1 day ago |
1-29406 1 day ago |
1-29400 1 day |
| 43675 |
mariainesdff author:mariainesdff |
feat(Algebra/GroupWithZero/Range): add lemmas |
Co-authored-by: @xgenereux
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
24/0 |
Mathlib/Algebra/GroupWithZero/Range.lean |
1 |
1 |
['github-actions'] |
nobody |
1-8315 1 day ago |
1-17441 1 day ago |
1-17435 1 day |
| 39915 |
mkaratarakis author:mkaratarakis |
feat(Analysis/Complex): the equality case of the triangle inequality |
The equality case of the triangle inequality for a finite sum
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-analysis |
196/2 |
Mathlib.lean,Mathlib/Analysis/Complex/Arg.lean,Mathlib/Analysis/Convex/TriangleEquality.lean,Mathlib/Analysis/Normed/Module/Normalize.lean,Mathlib/LinearAlgebra/Ray.lean |
5 |
30 |
['github-actions', 'j-loreaux', 'mkaratarakis', 'themathqueen', 'wwylele'] |
nobody |
1-8252 1 day ago |
1-9554 1 day ago |
5-41080 5 days |
| 40848 |
fbarroero author:fbarroero |
feat(RingTheory/DedekindDomain/SInteger): the ring of S-integers is a localization and a Dedekind Domain |
We prove
```
instance IsDedekindDomain.IsLocalizationSInteger. (R : Type *) [CommRing R] [IsDedekindDomain R]
(S : Set (HeightOneSpectrum R)) (K : Type *) [Field K] [Algebra R K] [IsFractionRing R K]
[Fact (Monoid.IsTorsion (ClassGroup R))] : IsLocalization S.Submonoid (S.integer K)
```
and
```
instance IsDedekindDomain.isDedekindDomainSInteger (R : Type *) [CommRing R] [IsDedekindDomain R]
(S : Set (HeightOneSpectrum R)) (K : Type *) [Field K] [Algebra R K] [IsFractionRing R K]
[Fact (Monoid.IsTorsion (ClassGroup R))] : IsDedekindDomain (S.integer K)
```
This is joint work with @larskuehne.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
162/4 |
Mathlib/RingTheory/DedekindDomain/SInteger.lean,Mathlib/RingTheory/Ideal/Prime.lean |
2 |
25 |
['copilot-pull-request-reviewer', 'faenuccio', 'fbarroero', 'github-actions'] |
faenuccio assignee:faenuccio |
1-8086 1 day ago |
1-8086 1 day ago |
33-44059 33 days |
| 43676 |
SnirBroshi author:SnirBroshi |
doc(Order): `wikidata` tags for some basics |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
49/3 |
Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/Bounds/Defs.lean,Mathlib/Order/Closure.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/CompletePartialOrder.lean,Mathlib/Order/Defs/LinearOrder.lean,Mathlib/Order/Defs/PartialOrder.lean,Mathlib/Order/Defs/Unbundled.lean,Mathlib/Order/Disjoint.lean,Mathlib/Order/GaloisConnection/Defs.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/Max.lean,Mathlib/Order/Monotone/Defs.lean |
13 |
1 |
['github-actions'] |
nobody |
1-7581 1 day ago |
1-16898 1 day ago |
1-16892 1 day |
| 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 |
1-7091 1 day ago |
25-25535 25 days ago |
25-43698 25 days |
| 43686 |
SnirBroshi author:SnirBroshi |
feat(Algebra/Divisibility/Basic): divisibility is a preorder |
and a partial order under the assumptions of `dvd_antisymm` (`[CommMonoidWithZero α] [IsCancelMulZero α] [Subsingleton αˣ]`).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
8/2 |
Mathlib/Algebra/Divisibility/Basic.lean,Mathlib/Algebra/GroupWithZero/Divisibility.lean |
2 |
1 |
['github-actions'] |
nobody |
1-5885 1 day ago |
1-10858 1 day ago |
1-10852 1 day |
| 43689 |
j-loreaux author:j-loreaux |
fix: fix `cfc_congr` lemmas |
#43028 introduced a regression in `norm_cast` due to adding an `@[congr]` lemma for `cfc` and `cfcₙ` which did not vary all arguments. This causes the following call to `norm_cast` to fail to close the goal. What happens is that on the LHS, the current `cfc_congr'` lemma causes `norm_cast` to visit the function, but *skip* the argument `((n : A) + m)`, leaving it as `↑n + ↑m`. On the RHS, because nothing needs to happen to the function, it acts on the `((n : A) + m)`, turning it into `↑(n + m)`. Another call to `norm_cast` then closes the goal because it does the same thing to the LHS now.
```lean
module
public import Mathlib.Analysis.CStarAlgebra.ContinuousFunctionalCalculus.Basic
example {A : Type*} [CStarAlgebra A] (n m : ℕ) :
cfc (fun x : ℝ ↦ (x : ℂ).re) ((n : A) + m) = cfc (fun x : ℝ ↦ x) ((n : A) + m) := by
norm_cast
```
The fix is to update the `cfc_congr'` lemma to vary all the arguments, as with, for example, `Finset.sum_congr`:
```lean
@[congr]
lemma cfc_congr' {f g : R → R} {a b : A} (hab : a = b) (hfg : ∀ x ∈ spectrum R b, f x = g x) :
cfc f a = cfc g b := by
subst hab
exact cfc_congr hfg
```
---
This issue is documented on the docstring of the `@[congr]` attribute, but there is no warning when you write a bad `@[congr]` lemma.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
bug
t-analysis
|
12/8 |
Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/NonUnital.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean |
2 |
1 |
['github-actions'] |
nobody |
1-5548 1 day ago |
1-6610 1 day ago |
1-6604 1 day |
| 43654 |
grunweg author:grunweg |
chore: rename `Isometry` to `Isometric` |
This definition refers to an unbundled isometry: let's keep the name `Isometry` for a future bundled version. The name `Isometric` is an adjective and avoids questions of whether to have an Is prefix. Suggested by `j-loreaux` [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Naming.20convention/near/615105410).
We leave declarations such as IsometryEquiv, IsometryClass, LinearIsometry alone.
Rename done using Claude code, manually reviewed by myself.
Co-Authored-By: Claude Sonnet 5 [noreply@anthropic.com](mailto: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/)
|
tech debt
LLM-generated
|
1088/676 |
Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Analysis/Analytic/ConvergenceRadius.lean,Mathlib/Analysis/AperiodicOrder/Delone/Basic.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/CStarAlgebra/Commutative/PosPart.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Basic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Continuity.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Analysis/CStarAlgebra/Hom.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/Calculus/Deriv/Basic.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Complex/Circle.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Metric.lean,Mathlib/Analysis/Convex/Continuous.lean,Mathlib/Analysis/Convex/LinearIsometry.lean,Mathlib/Analysis/Convex/StrictConvexBetween.lean,Mathlib/Analysis/Convex/StrictConvexSpace.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/Analysis/InnerProductSpace/NormDet.lean,Mathlib/Analysis/InnerProductSpace/Reproducing.lean,Mathlib/Analysis/InnerProductSpace/l2Space.lean,Mathlib/Analysis/LocallyConvex/Bounded.lean,Mathlib/Analysis/Matrix/Order.lean,Mathlib/Analysis/Normed/Affine/AddTorsor.lean,Mathlib/Analysis/Normed/Affine/Isometry.lean,Mathlib/Analysis/Normed/Algebra/GelfandFormula.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/Unitization.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean,Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/Analysis/Normed/Group/AddTorsor.lean,Mathlib/Analysis/Normed/Group/Hom.lean,Mathlib/Analysis/Normed/Group/Pointwise.lean,Mathlib/Analysis/Normed/Group/Quotient.lean,Mathlib/Analysis/Normed/Group/SemiNormedGrp.lean,Mathlib/Analysis/Normed/Group/Uniform.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/Normed/Operator/Extend.lean,Mathlib/Analysis/Normed/Operator/LinearIsometry.lean,Mathlib/Analysis/Normed/Operator/Mul.lean,Mathlib/Analysis/Normed/Ring/Basic.lean,Mathlib/Analysis/Normed/Ring/Lemmas.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/RCLike/ContinuousMap.lean,Mathlib/Geometry/Euclidean/PerpBisector.lean,Mathlib/Geometry/Euclidean/Sphere/Basic.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/AEMeasurable.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/ContinuousCompMeasurePreserving.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/ContDiff.lean,Mathlib/MeasureTheory/Measure/FiniteMeasure.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/MeasureTheory/Measure/ResolventTransform.lean,Mathlib/MeasureTheory/SpecificCodomains/Pi.lean,Mathlib/NumberTheory/NumberField/Completion/InfinitePlace.lean,Mathlib/NumberTheory/NumberField/Completion/LiesOverInstances.lean,Mathlib/Probability/Distributions/Gaussian/CharFun.lean,Mathlib/Topology/Algebra/Module/EmbeddingOfLocal.lean,Mathlib/Topology/ContinuousMap/Bounded/Basic.lean,Mathlib/Topology/ContinuousMap/ContinuousMapZero.lean,Mathlib/Topology/ContinuousMap/ZeroAtInfty.lean,Mathlib/Topology/MetricSpace/Closeds.lean,Mathlib/Topology/MetricSpace/Completion.lean,Mathlib/Topology/MetricSpace/Congruence.lean,Mathlib/Topology/MetricSpace/Cover.lean,Mathlib/Topology/MetricSpace/CoveringNumbers.lean,Mathlib/Topology/MetricSpace/Dilation.lean,Mathlib/Topology/MetricSpace/DilationEquiv.lean,Mathlib/Topology/MetricSpace/Gluing.lean,Mathlib/Topology/MetricSpace/GromovHausdorff.lean,Mathlib/Topology/MetricSpace/GromovHausdorffRealized.lean,Mathlib/Topology/MetricSpace/HausdorffDimension.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean,Mathlib/Topology/MetricSpace/IsometricSMul.lean,Mathlib/Topology/MetricSpace/Isometry.lean,Mathlib/Topology/MetricSpace/Kuratowski.lean,Mathlib/Topology/MetricSpace/PiNat.lean,Mathlib/Topology/MetricSpace/Polish.lean,Mathlib/Topology/MetricSpace/ProperSpace/Real.lean,Mathlib/Topology/MetricSpace/Similarity.lean,Mathlib/Topology/MetricSpace/UniformConvergence.lean,Mathlib/Topology/Metrizable/CompletelyMetrizable.lean,Mathlib/Topology/Metrizable/Urysohn.lean |
94 |
8 |
['github-actions', 'grunweg'] |
nobody |
1-4914 1 day ago |
1-6620 1 day ago |
1-15401 1 day |
| 38499 |
SnirBroshi author:SnirBroshi |
feat(Order/Hom/Basic): `Relation.Map`/`Function.onFun` form an order isomorphism between `α`-relations and `β`-relations |
For an injective function `f : α → β`, `Relation.Map · f f` is an order embedding from `α`-relations into `β`-relations.
For a surjective function `f : α → β`, `Function.onFun · f` is an order embedding from `β`-relations into `α`-relations.
For a bijective function `f : α → β`, `Relation.Map · f f` and `Function.onFun · f` form an order isomorphism between `α`-relations and `β`-relations.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [ ] depends on: #38432
TODO: generalize to `bicompl` after the dependency is merged
[](https://gitpod.io/from-referrer/)
|
t-order |
42/0 |
Mathlib/Order/Hom/Basic.lean |
1 |
7 |
['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'plp127', 'wwylele'] |
nobody |
1-1479 1 day ago |
1-1481 1 day ago |
5-12479 5 days |
| 38434 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Maps): `map` lemmas about support/top/bot |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [ ] depends on: #38432
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
141/27 |
Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Logic/Relation.lean,Mathlib/Order/GaloisConnection/Basic.lean |
3 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
1-1474 1 day ago |
1-1477 1 day ago |
1-2316 1 day |
| 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 |
173/0 |
Mathlib.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Data/Sym/Sym2/Card.lean |
4 |
38 |
['SnirBroshi', 'Vierkantor', 'eric-wieser', 'github-actions', 'joneugster', 'mathlib-merge-conflicts', 'themathqueen'] |
Vierkantor assignee:Vierkantor |
1-623 1 day ago |
1-10454 1 day ago |
116-59253 116 days |
| 42424 |
lydia-schiff author:lydia-schiff |
feat(Order/Partition/Finpartition): transport a set partition along a type equivalence |
- Adds `Finpartition.congr` to transport a `Finpartition` along a type equivalence.
- We can use `Finpartition.map` if we have an order-iso, and the equivalence induces one via the new `Finset.congrOrderIso` which is based on `Equiv.finsetCongr`.
- Includes parts, card, refl, and round-trip lemmas.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- `Equiv.finsetCongr` already gives us an equivalence of Finsets, so the new `Finset.congrOrderIso` just adds that the power-set lattice structure is also preserved.
- Includes lemmas showing that the parts are e-images of the old ones, card is preserved, and refl + round-trip for the equivalence.
- The cardinality lemma was the original motivation from some work on Stirling numbers, but I thought that `Finpartition.congr` and `Finset.congrOrderIso` seemed reusable and hopefully useful in their own right, and thought it would make a good first contribution.
- Zulip thread about naming and placement [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60Finpartition.2Econgr.60.20.E2.80.94.20naming.20.26.20placement)
- I used Claude Opus 4.8 to help draft the proofs and explore the API. I have spent several weeks making sure I understand and can justify every line and I've learned a lot which is great.
[](https://gitpod.io/from-referrer/)
|
t-order
LLM-generated
new-contributor
|
61/0 |
Mathlib/Data/Finset/Image.lean,Mathlib/Order/Partition/Finpartition.lean |
2 |
6 |
['github-actions', 'lydia-schiff', 'mathlib-merge-conflicts'] |
nobody |
0-85811 23 hours ago |
1-3868 1 day ago |
27-74824 27 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 |
130/2 |
Mathlib/Topology/UniformSpace/Basic.lean,Mathlib/Topology/UniformSpace/Cauchy.lean |
2 |
7 |
['github-actions', 'j-loreaux', 'peakpoint', 'plp127'] |
nobody |
0-80588 22 hours ago |
0-82294 22 hours ago |
7-84782 7 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 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-78982 21 hours ago |
0-79717 22 hours ago |
31-55352 31 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 |
7 |
['github-actions', 'leanprover-radar', 'mariainesdff', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
0-65634 18 hours ago |
47-30636 47 days ago |
89-77705 89 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'] |
ocfnash assignee:ocfnash |
0-65633 18 hours ago |
81-15775 81 days ago |
96-84296 96 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'] |
mattrobball assignee:mattrobball |
0-65632 18 hours ago |
79-74600 79 days ago |
79-74594 79 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'] |
joneugster assignee:joneugster |
0-65628 18 hours ago |
28-48790 28 days ago |
34-48713 34 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'] |
nobody |
0-64732 17 hours ago |
22-56638 22 days ago |
45-48524 45 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'] |
nobody |
0-64731 17 hours ago |
76-43159 76 days ago |
78-66850 78 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'] |
nobody |
0-64730 17 hours ago |
64-53534 64 days ago |
64-53528 64 days |
| 43699 |
SnirBroshi author:SnirBroshi |
feat(Order/Defs/Unbundled): relate core's `Is*Order` prop classes to their mathlib unbundled counterparts |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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/Defs/Unbundled.lean |
1 |
2 |
['github-actions'] |
nobody |
0-63069 17 hours ago |
0-68431 19 hours ago |
0-68425 19 hours |
| 41728 |
vaca22 author:vaca22 |
feat(GroupTheory): prove uniqueness of ℤᵐ⁰ automorphisms |
Prove that every order-preserving multiplicative automorphism of ℤᵐ⁰ is the identity. This also gives a Unique instance for its automorphism type and a Subsingleton instance for order-preserving multiplicative normalizations from G to ℤᵐ⁰.
The proof transports an automorphism through WithZero.exp and WithZero.log to an additive automorphism of ℤ, then excludes negation by monotonicity.
------------
**AI disclosure**: this PR is primarily LLM-generated (Claude Code).
|
t-group-theory
new-contributor
LLM-generated
|
55/0 |
Mathlib/GroupTheory/ArchimedeanDensely.lean |
1 |
13 |
['github-actions', 'grunweg', 'tb65536', 'vaca22', 'wwylele'] |
nobody |
0-54526 15 hours ago |
6-13626 6 days ago |
20-58162 20 days |
| 43667 |
SnirBroshi author:SnirBroshi |
fix(Topology/Baire/Lemmas): the Baire property is not Baire's theorem |
The lemmas whose docstring says "Baire theorem" were first proved for complete metric spaces in leanprover-community/mathlib3#816, so they were Baire's (first) theorem. Then leanprover-community/mathlib3#14547 introduced `BaireSpace`, which made these lemmas reformulations of the Baire property instead of the theorem (which is now called `BaireSpace.of_completelyPseudoMetrizable`).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
25/22 |
Mathlib/Topology/Baire/CompleteMetrizable.lean,Mathlib/Topology/Baire/Lemmas.lean,Mathlib/Topology/Baire/LocallyCompactRegular.lean,docs/1000.yaml,docs/overview.yaml |
5 |
1 |
['github-actions'] |
nobody |
0-52712 14 hours ago |
1-22062 1 day ago |
1-22177 1 day |
| 43621 |
Whning0513 author:Whning0513 |
feat(Data/List): add basic API for toChunks |
Adds basic API lemmas for `List.toChunks`: flattening recovers the input, chunks are nonempty sublists, and their lengths are bounded by the chunk size.
This addresses the `Data/List/Basic: SP: toChunks` item in #7987.
Tests:
- `lake env lean Mathlib/Data/List/ToChunks.lean`
- `lake build Mathlib.Data.List.ToChunks`
- `lake exe runLinter Mathlib.Data.List.ToChunks`
AI use: OpenAI Codex was used to rebase the branch, run the checks above, and submit this pull request. The code and proofs were written and reviewed by the author. |
t-data
new-contributor
|
119/0 |
Mathlib.lean,Mathlib/Data/List/ToChunks.lean |
2 |
8 |
['copilot-pull-request-reviewer', 'github-actions', 'theebayuser'] |
nobody |
0-50450 14 hours ago |
2-20280 2 days ago |
2-20274 2 days |
| 43649 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add two simp lemmas |
We add two simp lemmas saying both the composition and precomposition with zero are zero
```
@[simp]
lemma comp_zero (f : IntertwiningMap σ τ) :
comp f (0 : IntertwiningMap ρ σ) = 0 := by ext; simp
@[simp]
lemma zero_comp (g : IntertwiningMap ρ σ) :
comp (0 : IntertwiningMap σ τ) g = 0 := by ext; simp
```
We also fix the names `add_comp` and `comp_add` |
t-algebra label:t-algebra$ |
12/4 |
Mathlib/RepresentationTheory/Intertwining.lean,Mathlib/RepresentationTheory/Rep/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
0-47202 13 hours ago |
1-53004 1 day ago |
1-53030 1 day |
| 38964 |
smmercuri author:smmercuri |
chore(Algebra): consolidate variables and sections for `AlgHom`/`AlgEquiv` |
This is a preparatory PR for the refactor of `AlgHom` to be semilinear (see #38376). This PR does not add or remove any results and only moves things around to reduce the diff for the future refactor. Namely, we do the following:
- Re-order variables in `AlgHom` and `AlgEquiv` so that `CommSemiring R` directly follows `R`. This is needed in the semialgebra definition.
- Move `comp` and `trans` API later in respective files so that the extra variables needed for those lemmas can be sectioned better.
- Similarly move some `congr` results in `Equiv.lean` to their own sections.
- Align variable names in `Equiv.lean` to match `Hom.lean`
---
- [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/)
|
|
374/353 |
Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/Notation.lean,Mathlib/FieldTheory/Normal/Basic.lean,Mathlib/FieldTheory/SeparableDegree.lean,Mathlib/RingTheory/AlgebraTower.lean,Mathlib/RingTheory/Polynomial/Quotient.lean,Mathlib/RingTheory/Smooth/IntegralClosure.lean,MathlibTest/GalNotation.lean |
11 |
17 |
['Multramate', 'github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'smmercuri'] |
nobody |
0-42512 11 hours ago |
0-45952 12 hours ago |
20-21314 20 days |
| 43224 |
joelriou author:joelriou |
feat(Category/Abelian/Injective): interaction between `InjectiveResolution.extMk` and the connecting morphism |
Given a short exact sequence `0 → X₁ → X₂ → X₃ → 0` and an injective resolution `R` of an object `Y`, we give a concrete computation of the connecting homomorphism $$Ext^n(X_1, Y) \to Ext^{n + 1}(X_3, Y)$$.
---
- [x] depends on: #43492
- [x] depends on: #43086
- [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/)
|
tech debt
t-category-theory
|
196/30 |
Mathlib/Algebra/Homology/DerivedCategory/Ext/Map.lean,Mathlib/Algebra/Homology/DerivedCategory/SingleTriangle.lean,Mathlib/Algebra/Homology/DerivedCategory/SmallShiftedHom.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexShift.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexSingle.lean,Mathlib/Algebra/Homology/HomotopyCategory/Pretriangulated.lean,Mathlib/Algebra/Homology/ShortComplex/Basic.lean,Mathlib/CategoryTheory/Abelian/Injective/Ext.lean,Mathlib/CategoryTheory/Shift/Basic.lean,Mathlib/CategoryTheory/Shift/ShiftedHom.lean |
11 |
4 |
['github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-40886 11 hours ago |
4-663 4 days ago |
4-669 4 days |
| 43670 |
kbuzzard author:kbuzzard |
feat: add NormedSpace.log |
We add `NormedSpace.log` following the design decisions of `NormedSpace.exp`.
This is the first in a series of PRs aiming to get p-adic logarithms into mathlib. This PR is just porting constructions which are already in the `Mathlib/Analysis/Normed/Algebra/Exponential.lean` file (I stopped at 200 lines; note that the first 60 lines are module docstring and TODOs).
This PR is for the Formal Conjectures repo, which needs p-adic logarithms in order to state Leopoldt's conjecture.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
203/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Algebra/Logarithm.lean |
2 |
6 |
['Whysoserioushah', 'github-actions'] |
nobody |
0-38104 10 hours ago |
1-19521 1 day ago |
1-19515 1 day |
| 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
maintainer-merge
|
62/39 |
Mathlib/Order/CompleteBooleanAlgebra.lean,Mathlib/Order/SymmDiff.lean |
2 |
6 |
['JovanGerb', 'YaelDillies', 'github-actions', 'plp127', 'vihdzp'] |
nobody |
0-37661 10 hours ago |
0-81261 22 hours ago |
101-19005 101 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$ |
165/8 |
Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean |
2 |
44 |
['Multramate', 'YaelDillies', 'alreadydone', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536'] |
riccardobrasca and tb65536 assignee:tb65536 assignee:riccardobrasca |
0-37614 10 hours ago |
0-53123 14 hours ago |
29-928 29 days |
| 43532 |
tb65536 author:tb65536 |
feat(GroupTheory/Finiteness): add general `IsMulFG` |
This PR adds a general `IsMulFG` predicate on semigroups 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`.
This does not attempt to make a similar plan for `Module.Finite` / `Submodule.FG`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #43661
[](https://gitpod.io/from-referrer/)
This is a version of #42200 with additional refactoring to demonstrate the sufficiency of the new API.
|
t-algebra
t-group-theory
label:t-algebra$ |
451/161 |
Mathlib/Algebra/AffineMonoid/Irreducible.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Data/Set/Finite/Basic.lean,Mathlib/GroupTheory/Finiteness.lean,Mathlib/GroupTheory/Generators.lean,Mathlib/GroupTheory/Schreier.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Defs.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/Finiteness/Defs.lean,Mathlib/RingTheory/Localization/InvSubmonoid.lean |
10 |
9 |
['eric-wieser', 'github-actions', 'mathlib-dependent-issues', 'tb65536'] |
nobody |
0-34613 9 hours ago |
0-38814 10 hours ago |
3-38338 3 days |
| 41505 |
homeowmorphism author:homeowmorphism |
feat(Algebra/Order): define left-orderable monoids and left-orderable groups |
A monoid `M` is *left-orderable* if it admits a linear order invariant under left multiplication
(`a ≤ b → c * a ≤ c * b`), *right-orderable* if it admits one invariant under right multiplication,
and *bi-orderable* if a single order is invariant under both — stronger than being both left- and
right-orderable, since those may need different orders. Moreover, these order becomes strict if the monoid is cancellative. This file defines the `Prop`-valued classes
`IsLeftOrderable`, `IsRightOrderable` and `IsBiOrderable`, and the instances producing them from a
compatible `LinearOrder`. Their richer theory over a *group*, where the two one-sided notions
coincide, is developed in `Mathlib/GroupTheory/Orderable.lean`.
Building on the monoid-level classes `IsLeftOrderable`, `IsRightOrderable` and `IsBiOrderable` (see
`Mathlib/Algebra/Order/Monoid/Orderable.lean`), adds the theory specific to a group `G`,
where inverses make the left- and right-handed notions coincide.
Co-authored by: Yaël Dillies <yael.dillies@gmail.com>
---
Zulip thread: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Dynamical.20realization.20of.20left-orderable.20groups.20project/
Authored using Claude Fable during the Fermat’s Last Theorem workshop in July 2026.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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-group-theory
maintainer-merge
|
473/1 |
Mathlib.lean,Mathlib/Algebra/Order/Group/Opposite.lean,Mathlib/Algebra/Order/Group/PiLex.lean,Mathlib/Algebra/Order/Monoid/Orderable/Defs.lean,Mathlib/Algebra/Order/Monoid/Orderable/Pi.lean,Mathlib/Algebra/Order/Monoid/Orderable/Prod.lean,Mathlib/Algebra/Order/Monoid/Prod.lean,Mathlib/Tactic/Translate/ToAdditive.lean |
8 |
105 |
['JovanGerb', 'YaelDillies', 'github-actions', 'homeowmorphism', 'tb65536'] |
nobody |
0-33695 9 hours ago |
7-69320 7 days ago |
18-71945 18 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
maintainer-merge
|
359/0 |
Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/FundamentalGroupoid/Basic.lean,MathlibTest/CategoryTheory/CheckDsimp.lean |
4 |
15 |
['github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
0-32482 9 hours ago |
0-38245 10 hours ago |
28-25920 28 days |
| 40948 |
Thmoas-Guan author:Thmoas-Guan |
feat(LinearAlgebra): exterior power commute with base change |
In this PR, we added the commute of exterior power and base change.
AI usage: filling in construction of the final equivalence with lemmas decribing it, all the preliminary constructions are refactored by human later.
Co-authored-by: Zichen Wang <zichenwang25@stu.pku.edu.cn>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
LLM-generated
label:t-algebra$ |
229/0 |
Mathlib.lean,Mathlib/LinearAlgebra/ExteriorPower/BaseChange.lean |
2 |
3 |
['github-actions', 'grunweg', 'mathlib-merge-conflicts'] |
ocfnash assignee:ocfnash |
0-29757 8 hours ago |
1-16334 1 day ago |
77-24839 77 days |
| 40050 |
ReemMelamed author:ReemMelamed |
feat(Algebra/Group/GreensRelations): add definitions for Green's relations |
This PR introduces the foundational definitions for Green's relations (L, R, H, D, and J) on semigroups.
This is the first in a series of PRs aimed at formalizing Green's relations for semigroups.
[Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Formalization.20of.20Green.27s.20Relations.20for.20semigroups/with/598557876)
---
- [x] depends on: #40843
|
t-algebra
new-contributor
label:t-algebra$ |
505/0 |
Mathlib.lean,Mathlib/Algebra/Group/GreensRelations/Basic.lean |
2 |
33 |
['ReemMelamed', 'YaelDillies', 'YanYablonovskiy', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues'] |
nobody |
0-28811 8 hours ago |
0-29577 8 hours ago |
20-20721 20 days |
| 43633 |
Jun2028 author:Jun2028 |
feat(SetTheory/Ordinal): classify exponential principal ordinals |
Complete `` TODO: Prove that the exponential principal ordinals are `0`, `1`, `2`, `ω`, or `ε_ x` `` in [Mathlib/SetTheory/Ordinal/Principal.lean](https://github.com/leanprover-community/mathlib4/compare/master...Jun2028:mathlib4:feat/exponential-principal-classification?expand=1#diff-c700a68af59d576bafeeeac5211181f9ce129bdead444df6c9747344817103bd)
By the way, the original TODO was wrong because `1` is not an exponential principal ordinal (it requires $0^0=1<1$ which is false).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-set-theory
new-contributor
|
55/5 |
Mathlib/SetTheory/Ordinal/Principal.lean,Mathlib/SetTheory/Ordinal/Veblen.lean |
2 |
6 |
['github-actions', 'vihdzp'] |
nobody |
0-26845 7 hours ago |
2-12344 2 days ago |
2-12338 2 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', 'bjbraams', 'copilot-pull-request-reviewer', 'felixpernegger', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'wwylele'] |
CoolRmal assignee:CoolRmal |
0-26298 7 hours ago |
11-21029 11 days ago |
63-20895 63 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 |
3 |
['JX-Mo', 'github-actions', 'harahu'] |
nobody |
0-25615 7 hours ago |
27-33997 27 days ago |
27-33991 27 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 |
17 |
['Parcly-Taxel', 'github-actions', 'jsm28', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'pepamontero', 'wwylele'] |
nobody |
0-25364 7 hours ago |
0-25415 7 hours ago |
14-9761 14 days |
| 43480 |
LLaurance author:LLaurance |
feat(Geometry/Euclidean): affine span of orthocenter and vertex is altitude |
Special case of `Affine.Triangle.affineSpan_orthocenter_point_le_altitude`. There is probably a better way than invoking `Affine.Simplex.affineSpan_pair_altitudeFoot_eq_altitude` twice but this seems easiest at the moment.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry
maintainer-merge
|
8/0 |
Mathlib/Geometry/Euclidean/MongePoint.lean |
1 |
4 |
['LLaurance', 'github-actions', 'jsm28', 'wwylele'] |
jsm28 assignee:jsm28 |
0-25279 7 hours ago |
5-53701 5 days ago |
5-53695 5 days |
| 43715 |
Garmelon author:Garmelon |
chore: remove lean-pr-testing-* infrastructure |
The corresponding infrastructure in leanprover/lean4 has already been removed in leanprover/lean4#15098. The `batteries-pr-testing-*` infrastructure is not affected.
Once this makes its way into the nightly repo and branch, the `MATHLIB_LEAN_PR_TESTING_*` secrets/variables and corresponding Github app should be obsolete. |
file-removed
CI
|
99/453 |
.github/actions/cache-trust-dispatch/action.yml,.github/workflows/build_template.yml,.github/workflows/decls-diff.yml,.github/workflows/nightly_bump_and_merge.yml,.github/workflows/nightly_bump_toolchain.yml,.github/workflows/nightly_detect_failure.yml,.github/workflows/nightly_merge_master.yml,Cache/Requests.lean,docs/workflows.md,scripts/migrate_to_fork.py |
10 |
1 |
['github-actions'] |
nobody |
0-25206 7 hours ago |
0-25926 7 hours ago |
0-25920 7 hours |
| 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
|
552/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/MapNormalization.lean,MathlibTest/CategoryTheory/MapSimp.lean,MathlibTest/CategoryTheory/MapUniverses.lean |
7 |
28 |
['Vierkantor', 'adamtopaz', 'dagurtomas', 'github-actions', 'joelriou'] |
nobody |
0-22974 6 hours ago |
0-23062 6 hours ago |
162-19787 162 days |
| 29558 |
Thmoas-Guan author:Thmoas-Guan |
feat(Algebra): definition of global dimension |
In this PR, we define global dimension supremum over `projectiveDimension`
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
To indicate co-authors, include at least one commit authored by each
co-author among the commits in the pull request. If necessary, you may
create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
When merging, all the commits will be squashed into a single commit listing all co-authors.
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #32058
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
116/0 |
Mathlib.lean,Mathlib/RingTheory/GlobalDimension.lean |
2 |
23 |
['Thmoas-Guan', 'erdOne', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vlad902'] |
erdOne assignee:erdOne |
0-22367 6 hours ago |
9-38209 9 days ago |
37-64389 37 days |
| 43254 |
vasnesterov author:vasnesterov |
feat(Tactic): general tactic to translate `(E)NNReal`, `ENat`, `PNat` goals to `Real` and `Nat` |
Introduce the basify tactic, which translates goals about types with extended or truncated arithmetic (`PNat`, `ENat`, `NNReal`, `ENNReal`) into equivalent goals about the underlying type (`Nat`, `Real`), where automation works better.
The tactic is extensible:
* `@[basify_elim]` adds support for a new type;
* `@[basify_op]` adds support for a new operation;
* `@[basify_simp]` adds rewrite lemmas for clearing the degenerate branches
It subsumes `pnat_to_nat` and `enat_to_nat` (#43422).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
PR structure:
* `Tactic/Basify.lean` contains the implementation of the tactic
* `Tactic/Basify/Attr.lean` registers attributes
* `MathlibTest/Basify.lean` -- tests
* Other changes are purely tagging lemmas with new attributes
In future PRs we will add `basify [h1, h2, ...]` syntax to pass extra facts that help translation (finiteness, nonzeroness).
[](https://gitpod.io/from-referrer/)
|
t-meta
large-import
maintainer-merge
|
838/74 |
Mathlib.lean,Mathlib/Algebra/CharZero/Defs.lean,Mathlib/Algebra/NeZero.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Analysis/Normed/Group/Defs.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Basic/ENNReal/Basic.lean,Mathlib/Basic/ENNReal/Inv.lean,Mathlib/Basic/ENNReal/Operations.lean,Mathlib/Basic/NNReal/Defs.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/Data/ENat/Defs.lean,Mathlib/Data/ENat/Monoid.lean,Mathlib/Data/PNat/Basic.lean,Mathlib/Data/PNat/Defs.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Basify.lean,Mathlib/Tactic/Basify/Attr.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,MathlibTest/Tactic/Basify.lean |
22 |
19 |
['SnirBroshi', 'github-actions', 'grunweg', 'joneugster', 'lua-vr', 'mathlib-bors', 'vasnesterov'] |
joneugster assignee:joneugster |
0-21713 6 hours ago |
2-27462 2 days ago |
3-26725 3 days |
| 43402 |
thomaskwaring author:thomaskwaring |
feat(Order/CompactlyGenerated/Basic): atoms are compact in a frame |
... and therefore an atomistic frame is compactly generated. This allows to synthesise `IsCompactlyGenerated (Set α)`. Along the way we generalise a handful of results from `CompleteLattice` to `SemilatticeSup`.
---
[](https://gitpod.io/from-referrer/)
|
t-order
maintainer-merge
|
64/49 |
Mathlib/Order/CompactlyGenerated/Basic.lean |
1 |
24 |
['SnirBroshi', 'YaelDillies', 'github-actions', 'thomaskwaring'] |
nobody |
0-21570 5 hours ago |
1-10241 1 day ago |
6-35947 6 days |
| 43641 |
katyhr author:katyhr |
feat: definition of Gromov product |
This PR defines the Gromov product which is a prerequisite for defining hyperbolic metric space.
Co-Authored-By: Hang Lu Su <hanglu.su@pm.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-topology
new-contributor
maintainer-merge
|
77/0 |
Mathlib.lean,Mathlib/Topology/MetricSpace/GromovProduct.lean |
2 |
14 |
['Whysoserioushah', 'github-actions', 'grunweg', 'katyhr', 'tb65536', 'vlad902'] |
nobody |
0-21535 5 hours ago |
1-6558 1 day ago |
1-63090 1 day |
| 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
maintainer-merge
|
54/23 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean |
4 |
3 |
['github-actions', 'joneugster'] |
joneugster assignee:joneugster |
0-20921 5 hours ago |
59-51688 59 days ago |
59-51785 59 days |
| 43425 |
Julian-Kuelshammer author:Julian-Kuelshammer |
feat(Data/Fintype/Defs): add DecidableLE (∀ a, β a) |
This PR grew out of the project to define the Tamari lattice in https://github.com/Julian-Kuelshammer/ExtensionClosedSubcategoriesOfAn/blob/main/ExtensionClosedSubcategoriesOfAn/BracketingFunctions.lean
Prepared with the help of Claude. For this specific instance, I asked what was needed to make defining the Tamari lattice in the project above work. It then suggested an instance just for functions (Fin n -> Fin n). After the discussion it suggested the instance above but with an assumption of Preorder instead of LE, so I changed that. I then found a (hopefully) suitable file to put it in and changed the variable names to the surrouning 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-data
new-contributor
maintainer-merge
|
4/0 |
Mathlib/Data/Fintype/Defs.lean |
1 |
9 |
['Julian-Kuelshammer', 'github-actions', 'leanprover-radar', 'robin-carlier'] |
nobody |
0-20865 5 hours ago |
0-20894 5 hours ago |
7-22465 7 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
maintainer-merge
|
86/3 |
Mathlib/Data/PFun.lean,Mathlib/Data/Part.lean |
2 |
3 |
['github-actions', 'joneugster'] |
joneugster assignee:joneugster |
0-20758 5 hours ago |
56-85969 56 days ago |
56-85963 56 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-20735 5 hours ago |
55-42893 55 days ago |
55-42887 55 days |
| 43708 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory): definition of Koszul complex |
Definition of Koszul cocomplex.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
188/0 |
Mathlib.lean,Mathlib/RingTheory/KoszulComplex/Complex.lean |
2 |
3 |
['Whysoserioushah', 'github-actions'] |
nobody |
0-19454 5 hours ago |
0-30633 8 hours ago |
0-30627 8 hours |
| 43718 |
yuanyi-350 author:yuanyi-350 |
feat(Analysis/Calculus/Gradient): add arithmetic rules for gradients |
This PR revives #9352, which appears to have stalled after review. It incorporates the reviewers’ suggestions and updates the code to current mathlib.
I would like to use these basic gradient calculus lemmas as infrastructure for follow-up work in mathlib. |
t-analysis |
402/0 |
Mathlib.lean,Mathlib/Analysis/Calculus/Gradient/Lemmas.lean |
2 |
1 |
['github-actions'] |
nobody |
0-19309 5 hours ago |
0-19910 5 hours ago |
0-19904 5 hours |
| 43707 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory): definition of Koszul cocomplex |
Definition of Koszul complex.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
172/0 |
Mathlib.lean,Mathlib/RingTheory/KoszulComplex/Cocomplex.lean |
2 |
1 |
['github-actions'] |
nobody |
0-19293 5 hours ago |
0-30636 8 hours ago |
0-30630 8 hours |
| 43717 |
pepamontero author:pepamontero |
feat(Topology/Covering/Quotient): add `IsLocalHomeomorph` for quotient covering maps |
This PR adds three lemmas deriving `IsLocalHomeomorph` from a quotient covering map:
* `IsQuotientCoveringMap.isLocalHomeomorph`
* `Topology.IsQuotientMap.isLocalHomeomorph_of_properlyDiscontinuousSMul`
* `isLocalHomeomorph_quotientMk_of_properlyDiscontinuousSMul`
I tried to keep the same structure from the related files (like `isQuotientCoveringMap_quotientMk_of_properlyDiscontinuousSMul` etc).
Since the last two need `IsQuotientCoveringMap.isCoveringMap`, the `IsQuotientCoveringMap` namespace block (`isCoveringMap`, `isOpenQuotientMap`) is moved earlier in the file, ahead of the `ProperlyDiscontinuousSMul` section (which is now not nested inside `section MulAction`).
The last lemma, `isLocalHomeomorph_quotientMk_of_properlyDiscontinuousSMul`, makes proofs simpler in #40727 (I split these changes from that 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 |
50/31 |
Mathlib/Topology/Covering/Quotient.lean |
1 |
1 |
['github-actions'] |
nobody |
0-19188 5 hours ago |
0-20143 5 hours ago |
0-20228 5 hours |
| 38198 |
JovanGerb author:JovanGerb |
chore(Data/Real/Basic): `no_expose` the private operations |
This PR puts `no_expose` on all of the operations on `Real` that are defined in terms of quotients. This is a step in the direction of not exposing the definiton of `Real`.
Note that I leave the `irreducible_def`s as is. This is because the `simpNF` linter does not participate in the module system, and it would time out otherwise. Additionally, downstream users may not be using the module system.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
maintainer-merge
|
13/32 |
Counterexamples/SorgenfreyLine.lean,Mathlib/Basic/Real/Basic.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean |
3 |
26 |
['JovanGerb', 'Vierkantor', 'eric-wieser', 'github-actions', 'grunweg', 'joneugster', 'leanprover-radar', 'mathlib-merge-conflicts'] |
joneugster assignee:joneugster |
0-17985 4 hours ago |
7-16907 7 days ago |
141-85162 141 days |
| 38086 |
dagurtomas author:dagurtomas |
feat(CategoryTheory): composition of profunctors |
---
- [x] depends on: #38085
- [x] depends on: #38382
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
378/2 |
Mathlib.lean,Mathlib/CategoryTheory/Profunctor/Basic.lean,Mathlib/CategoryTheory/Profunctor/Comp.lean |
3 |
22 |
['adamtopaz', 'dagurtomas', 'github-actions', 'mathlib-dependent-issues', 'mathlib-splicebot', 'robin-carlier'] |
riccardobrasca assignee:riccardobrasca |
0-17899 4 hours ago |
0-18553 5 hours ago |
104-83590 104 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 |
166/0 |
Mathlib.lean,Mathlib/NumberTheory/Padics/Measure/Basic.lean,Mathlib/NumberTheory/Padics/Measure/Group.lean |
3 |
9 |
['faenuccio', 'github-actions', 'loefflerd', 'tb65536'] |
faenuccio assignee:faenuccio |
0-17580 4 hours ago |
2-79265 2 days ago |
52-83977 52 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 |
154/0 |
Mathlib.lean,Mathlib/CategoryTheory/ObjectProperty/HasFiniteResolution/Basic.lean |
2 |
21 |
['github-actions', 'joelriou', 'mbkybky', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
0-17534 4 hours ago |
6-24958 6 days ago |
53-24815 53 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
documentation
maintainer-merge
|
16/13 |
Mathlib/Basic/Rel.lean |
1 |
9 |
['OrfeasLitos', 'github-actions', 'joneugster', 'mathlib-merge-conflicts', 'sankalpsthakur'] |
joneugster assignee:joneugster |
0-16838 4 hours ago |
5-84350 5 days ago |
39-26036 39 days |
| 43719 |
Thmoas-Guan author:Thmoas-Guan |
feat(LinearAlgebra): add API for exterior algebra of ring itself |
In this PR, we added some API for handling `ExteriorAlgebra R R`.
AI disclosure: the proof in section "self" is generated by AI after providing the final target definition and characterizing lemma.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
64/0 |
Mathlib/LinearAlgebra/ExteriorAlgebra/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
0-16640 4 hours ago |
0-17373 4 hours ago |
0-17367 4 hours |
| 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
|
902/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/MkConcreteCategory.lean,MathlibTest/CategoryTheory/MkConcreteCategory.lean |
4 |
10 |
['Vierkantor', 'dagurtomas', 'eric-wieser', 'github-actions'] |
nobody |
0-16616 4 hours ago |
0-17191 4 hours ago |
127-31335 127 days |
| 41028 |
Thmoas-Guan author:Thmoas-Guan |
feat(LinearAlgebra): exterior power of product |
In this PR, we proved exterior power of product with the ring itself is isomorphic to product of exterior algebra with itself, via inclusion and multiplication by `1` of the ring on the two components.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #41026
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
275/0 |
Mathlib.lean,Mathlib/LinearAlgebra/ExteriorAlgebra/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Product.lean |
3 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-16515 4 hours ago |
0-29390 8 hours ago |
8-28513 8 days |
| 43378 |
marcelolynch author:marcelolynch |
feat(cache): put with native Azure and S3 backends |
This PR reworks the upload side of the cache tool. It prepares CI to upload to more than one storage location. The defaults stay the same: uploads continue to go to the Azure account, and the `put-staged` invocation in CI works unchanged.
Major changes:
**Upload commands.**:
- `put-staged` is moved to run before the expensive hash-memo build.
- All upload commands share one write path: `runPut` resolves the destination and dispatches to the selected backend. `put-unpacked` and the `commit` commands are removed; nothing in the tool reads a commit file.
**Backends**:
- The new `--backend` option selects the storage backend on every upload command: `azure` (the default) or `s3`. Each backend reads only its own credentials and resolves its own destination
- `azure` signs with the OIDC bearer token and writes to the chosen `--container` on the Azure account.
- `s3` signs each request with SigV4: a credential pair, an optional session token, and the region `MATHLIB_CACHE_S3_REGION`. It writes the same container layout (`{base}/{container}/{key}`) under the bucket endpoint `MATHLIB_CACHE_PUT_BASE_URL`, of the form `https://endpoint/bucket`
**Transfer tools**:
- selected by the backend: `azure` uploads with curl (the built-in tool, as before); `s3` uploads with a system rclone when one works on PATH, and with curl otherwise
- rclone receives the S3 credentials through its environment
**Clear upload boundary.**:
- The new `Cache/Upload/` modules hold everything that moves staged bytes.
- `Upload/Azure.lean` and `Upload/S3.lean` each implement a complete backend: credential resolution, destination, tool choice, and the transfer entry point.
- `Upload/Curl.lean` and `Upload/Rclone.lean` have the transfer mechanics
- `Upload/Dest.lean` the destination contract
- `Upload/Defs.lean` the backend selection and the destination arbitration
**Documentation.** The README and `cache --help` document the public surface: reads, staging, and the external-cache interface. The upload commands, options, and variables are documented in the new `Cache/CI.md`.
**Behavior changes beyond the new upload path**:
- `put-staged` without `--staging-dir` exits with code 1. Before, it printed a message and exited 0, so a misconfigured CI job reported success and uploaded nothing.
- An upload without `--container` (and without `MATHLIB_CACHE_PUT_URL`) errors and names the known containers. Before, it defaulted to the bare `mathlib4` container, so a misconfigured job wrote to the lowest-trust namespace.
- A scope that is not a hex commit SHA causes an error. Before, a path-shaped `MATHLIB_CACHE_REPO_SCOPE` could reach URL paths and a local temp-file name.
- `MATHLIB_CACHE_SAS` is retired: the tool does not read it. CI mints OIDC bearer tokens and the broker mints S3 pairs; nothing sets a SAS token.
|
CI
LLM-generated
|
1519/457 |
Cache/CI.md,Cache/Cli.lean,Cache/IO.lean,Cache/Infra.lean,Cache/Main.lean,Cache/Marker.lean,Cache/README.md,Cache/Requests.lean,Cache/SECURITY.md,Cache/Test.lean,Cache/Upload.lean,Cache/Upload/Azure.lean,Cache/Upload/Curl.lean,Cache/Upload/Defs.lean,Cache/Upload/Dest.lean,Cache/Upload/Rclone.lean,Cache/Upload/S3.lean |
17 |
18 |
['bryangingechen', 'github-actions', 'marcelolynch'] |
nobody |
0-16475 4 hours ago |
2-70801 2 days ago |
2-72838 2 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.
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 |
14/19 |
Mathlib/RingTheory/Ideal/Cotangent.lean |
1 |
14 |
['Thmoas-Guan', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'pelicanhere'] |
pelicanhere assignee:pelicanhere |
0-16361 4 hours ago |
3-10947 3 days ago |
15-31170 15 days |
| 43680 |
Jun2M author:Jun2M |
feat(Topology): add path interiors and connectivity lemmas |
This PR is part of PR chain leading to definition of drawing of graph on topological space. This PR introduces preliminary unit interval/path results needed for the later PRs.
In particular, this PR
* Defines `Path.interior` as the image of the open parameter interval.
* Proves that path ranges and nonempty open subintervals of the unit interval are path-connected
* Adds endpoint lemmas for analyzing path interiors.
Some of the lemmas in the PR chain was initially proven with codex then manually golfed.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
39/0 |
Mathlib/Analysis/Convex/PathConnected.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Path.lean,Mathlib/Topology/UnitInterval.lean |
4 |
3 |
['github-actions', 'mathlib-bors', 'vlad902'] |
nobody |
0-16070 4 hours ago |
0-17952 4 hours ago |
1-9753 1 day |
| 43342 |
ADedecker author:ADedecker |
feat: a linear map which is locally a closed embedding is a closed embedding |
The novelty in this PR is the "closed" part, which follows from the fact that locally closed subgroups are closed.
This addresses the `TODO` I left at the beginning of the summer in `Topology/Algebra/Module/EmbeddingOfLocal`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #42501
[](https://gitpod.io/from-referrer/)
|
t-topology |
16/7 |
Mathlib/Topology/Algebra/Module/EmbeddingOfLocal.lean |
1 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-15647 4 hours ago |
1-75182 1 day ago |
1-75783 1 day |
| 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
maintainer-merge
|
6/17 |
Mathlib/Data/Finsupp/Indicator.lean |
1 |
4 |
['github-actions', 'joneugster', 'mathlib-merge-conflicts'] |
joneugster assignee:joneugster |
0-15640 4 hours ago |
16-44832 16 days ago |
36-12719 36 days |
| 37865 |
Jun2M author:Jun2M |
feat(Combinatorics/Graph): edge cut of `Graph` |
This PR introduces
- `edgeCut`: A function on set of vertices that returns the set of edges with exactly one end in the set.
- `IsEdgeCut`: A predicate for set of edges that promises it is `edgeCut` of some set.
- `IsBridge`: An edge `e` is a bridge iff it is a singleton edge cut.
- `IsBond`: An edge Set `B` is bond iff it is minimal nonempty edge cut.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #35879
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
215/0 |
Mathlib.lean,Mathlib/Combinatorics/Graph/Connected/EdgeCut.lean,Mathlib/Combinatorics/Graph/Subgraph.lean,docs/references.bib |
4 |
32 |
['Jun2M', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-15053 4 hours ago |
0-15534 4 hours ago |
120-83888 120 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
maintainer-merge
|
16/0 |
Mathlib/Data/Set/Card.lean |
1 |
3 |
['github-actions', 'joneugster'] |
joneugster assignee:joneugster |
0-13645 3 hours ago |
50-31051 50 days ago |
50-31045 50 days |
| 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 |
190/58 |
Mathlib/Combinatorics/Digraph/Basic.lean,Mathlib/Combinatorics/Digraph/Orientation.lean |
2 |
224 |
['IvanRenison', 'Shreyas4991', 'SnirBroshi', 'YaelDillies', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'vihdzp', 'vlad902'] |
SnirBroshi assignee:SnirBroshi |
0-13347 3 hours ago |
7-68788 7 days ago |
40-62350 40 days |
| 43673 |
raoxiaojia author:raoxiaojia |
feat(Tactic/Matrix): list-based implementation of matrix, multiplication expansion, and the associated simproc |
This PR adds a list-based implementation of (dense) matrix which can be used to state reflection proofs and certificates. In addition, this adds a multiplication on the representation, and a more efficient expansion construction path than letting kernel directly perform reduction. Also adds a simproc for matrix multiplication which is 3-4x faster than `simp`, the latter of which reduces a matrix multiplication today as well by `@[simp]` lemmas.
---
Note that `ListMatrix.mul` is already kernel reducible, but is susceptible to efficiency issues and eager evaluation of arithmetic expressions, which can be undesirable. The point of MulExpand.lean is to provide a manual construction of the expanded literal and an associated proof term via controlled unfold of the dot product, which is faster to construct (no discovery required by `simp`) and cheaper to check.
The bridge between the list representation and mathlib's `Matrix` is placed in a separate file. As a result the list representation itself requires only minimal mathlib import.
Note that currently Matrix/Reflection.lean (unused within mathlib) also provides a reflection target, but is defined on the `vecCons` construction, which is not very efficient. This work should eventually unify with Matrix/Reflection.lean if the elaboration of `!![]` is changed in the future to lists.
This is separated from https://github.com/raoxiaojia/mathlib4/pull/6 as part of enabling the echelon certificate to be parametric over a custom entry certifier.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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-meta
new-contributor
|
472/18 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Matrix/ListMatrix.lean,Mathlib/Tactic/Matrix/MulExpand.lean,Mathlib/Tactic/Matrix/OfLists.lean,Mathlib/Tactic/Matrix/Parsing.lean,Mathlib/Tactic/NormMatMul.lean,Mathlib/Tactic/NormRank.lean,MathlibTest/NormMatMul.lean |
9 |
3 |
['github-actions', 'raoxiaojia'] |
nobody |
0-13322 3 hours ago |
0-14020 3 hours ago |
1-18191 1 day |
| 33077 |
YaelDillies author:YaelDillies |
feat(Basic/Rel): balls |
Define `SetRel.ball` and use it in place of `UniformSpace.ball`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
406/301 |
Mathlib/Basic/Rel.lean,Mathlib/Basic/Rel/Cover.lean,Mathlib/Dynamics/TopologicalEntropy/CoverEntropy.lean,Mathlib/Dynamics/TopologicalEntropy/DynamicalEntourage.lean,Mathlib/Dynamics/TopologicalEntropy/NetEntropy.lean,Mathlib/Dynamics/TopologicalEntropy/Semiconj.lean,Mathlib/Dynamics/TopologicalEntropy/Subset.lean,Mathlib/MeasureTheory/Measure/LevyProkhorovMetric.lean,Mathlib/MeasureTheory/Measure/RegularityCompacts.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/Topology/Algebra/Module/LocallyConvex.lean,Mathlib/Topology/EMetricSpace/Basic.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,Mathlib/Topology/MetricSpace/Pseudo/Lemmas.lean,Mathlib/Topology/Metrizable/Basic.lean,Mathlib/Topology/Semicontinuity/Hemicontinuity.lean,Mathlib/Topology/Sequences.lean,Mathlib/Topology/UniformSpace/Basic.lean,Mathlib/Topology/UniformSpace/Cauchy.lean,Mathlib/Topology/UniformSpace/Closeds.lean,Mathlib/Topology/UniformSpace/Compact.lean,Mathlib/Topology/UniformSpace/CompactConvergence.lean,Mathlib/Topology/UniformSpace/Defs.lean,Mathlib/Topology/UniformSpace/Equicontinuity.lean,Mathlib/Topology/UniformSpace/HeineCantor.lean,Mathlib/Topology/UniformSpace/Separation.lean,Mathlib/Topology/UniformSpace/Ultra/Basic.lean,Mathlib/Topology/UniformSpace/UniformConvergenceTopology.lean,Mathlib/Topology/UniformSpace/UniformEmbedding.lean,Mathlib/Topology/UniformSpace/Uniformizable.lean |
30 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-13159 3 hours ago |
0-16341 4 hours ago |
4-50894 4 days |
| 43459 |
vlad902 author:vlad902 |
feat(AffineIndependent): add `AffineIndepOn` |
`LinearIndepOn` is a set-valued analog of `LinearIndependent`. `AffineIndepOn` is similarly a set-valued analog of `AffineIndependent` that makes it easier to reason about operations like insertion/deletion occurring over sets. The first half of the change is mostly copied from `LinearIndepOn`.
Created as part of the "Polyhedra in Lean" workshop in Berlin.
---
AI disclosure: Claude helped find some lemmas I had forgotten to copy over, and then I used it to generate a few proofs (relating AffineIndepOn/LinearIndepOn and for `insert`) that I then golfed/edited.
There should also be an `AffineIndepOn`-version of `exists_affineIndependent`, but I have another change I also have scheduled for this lemma so I want to do this in a follow-up since this PR is large-enough as-is.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
LLM-generated
maintainer-merge
label:t-algebra$ |
240/22 |
Mathlib/Data/Fin/VecNotation.lean,Mathlib/LinearAlgebra/AffineSpace/FiniteDimensional.lean,Mathlib/LinearAlgebra/AffineSpace/Independent.lean,Mathlib/LinearAlgebra/Matrix/Notation.lean,Mathlib/LinearAlgebra/Projectivization/Basic.lean |
5 |
10 |
['YaelDillies', 'github-actions', 'vlad902'] |
nobody |
0-12786 3 hours ago |
4-25733 4 days ago |
4-29335 4 days |
| 43358 |
EtienneC30 author:EtienneC30 |
feat: strong measurability of a path-valued random variable |
If `X` is a right-continuous strongly adapted stochastic process, then it is strongly measurable when seen as a path-valued random variable.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #43352
Co-authored-by: @RemyDegenne
[](https://gitpod.io/from-referrer/)
|
brownian
t-measure-probability
|
202/0 |
Mathlib.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/Probability/Process/StronglyMeasurablePath.lean,Mathlib/Topology/NhdsWithin.lean |
4 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-12448 3 hours ago |
0-14401 3 hours ago |
0-14395 3 hours |
| 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 |
26/8 |
Mathlib/NumberTheory/NumberField/Ideal/KummerDedekind.lean,Mathlib/RingTheory/Nilpotent/Lemmas.lean,Mathlib/RingTheory/Radical/Basic.lean |
3 |
16 |
['BryceT233', 'github-actions', 'tb65536'] |
mattrobball assignee:mattrobball |
0-12182 3 hours ago |
1-53842 1 day ago |
77-58383 77 days |
| 43558 |
loefflerd author:loefflerd |
feat(NumberTheory/ModularForms): mean square bound for q-expansions |
Show that the sum of the norm squares of the first `M` q-expansion coefficients of a modular cusp form grows like `M ^ k`, refining the Hecke bound for a single coefficient already in the library.
Upstreamed from the Mazur-Tate-Teitelbaum project on Prove2Me, see https://prove2.me/theorems/2c6274cd-4b5e-49cd-9daa-d45e670e9fdf.
---
**AI use**: this code was originally AI-written (by a bot run by Chris Birkbeck, instructed to follow some online notes of Zeev Rudnick). The code has been substantially refactored and cleaned up by me for use in Mathlib.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-number-theory
LLM-generated
large-import
maintainer-merge
|
208/20 |
Mathlib/Geometry/Manifold/MFDeriv/Basic.lean,Mathlib/NumberTheory/ModularForms/Bounds.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean |
3 |
23 |
['CBirkbeck', 'github-actions', 'loefflerd', 'wwylele'] |
nobody |
0-11457 3 hours ago |
3-76671 3 days ago |
3-76665 3 days |
| 43721 |
eric-wieser author:eric-wieser |
chore(LinearAlgebra/Alternating/Basic): missing lemma |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
8/0 |
Mathlib/LinearAlgebra/Alternating/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
0-11423 3 hours ago |
0-13042 3 hours ago |
0-13036 3 hours |
| 41652 |
xroblot author:xroblot |
feat(GroupTheory/PGroup): maximal subgroups of abelian p-groups have index p |
Building on the API from #41651, prove some results on `p`-groups and on the maximal subgroups of the abelian ones:
* `IsPGroup.isSimpleGroup_iff_card_eq`: a finite `p`-group is simple iff it has cardinality `p`.
* `IsPGroup.isCoatom_iff_index_eq_prime`: in an abelian `p`-group (finite or infinite) the maximal subgroups are exactly the subgroups of index `p`.
* `IsPGroup.not_isCyclic_iff_exists_ne_index_eq_prime`: a finite abelian `p`-group is non-cyclic iff it has two distinct subgroups of index `p`.
Also expand the module docstring of `Mathlib/GroupTheory/PGroup.lean`, which described only the fixed-point congruence.
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude.
---
- [x] depends on: #41651
- [x] depends on: #40597
|
t-group-theory |
60/5 |
Mathlib/GroupTheory/PGroup.lean |
1 |
14 |
['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536', 'xroblot'] |
nobody |
0-11383 3 hours ago |
1-22788 1 day ago |
1-31238 1 day |
| 43638 |
hawkrobe author:hawkrobe |
chore(RingTheory/HopfAlgebra): remove left-over `noncomputable`s |
I don't think anything in `ofConvInverse` and `ofAlgHom` is noncomputable so this isn't necessary anymore. (Similar to #41041.) |
t-ring-theory
easy
maintainer-merge
|
2/2 |
Mathlib/RingTheory/HopfAlgebra/Basic.lean |
1 |
7 |
['github-actions', 'hawkrobe', 'leanprover-radar', 'themathqueen'] |
nobody |
0-11363 3 hours ago |
0-31143 8 hours ago |
0-35427 9 hours |
| 42947 |
jeremypparker author:jeremypparker |
feat(Dynamics/ErgodicTheory): krylov-bogolyubov theorem |
The existence of invariant probability measures for continuous maps on compact spaces.
---
I discussed the implementation with ChatGPT but I wrote all the code myself.
[](https://gitpod.io/from-referrer/)
|
t-dynamics
new-contributor
large-import
|
211/0 |
Mathlib.lean,Mathlib/Dynamics/BirkhoffSum/Average.lean,Mathlib/Dynamics/BirkhoffSum/Basic.lean,Mathlib/Dynamics/BirkhoffSum/NormedSpace.lean,Mathlib/Dynamics/Ergodic/EmpiricalMeasure.lean |
5 |
31 |
['github-actions', 'jeremypparker', 'lua-vr', 'mathlib-bors', 'sgouezel'] |
sgouezel assignee:sgouezel |
0-11219 3 hours ago |
0-11258 3 hours ago |
7-80286 7 days |
| 43702 |
theebayuser author:theebayuser |
feat(LinearAlgebra/AffineSpace): add Varignon's theorem |
Hello, this PR introduces Varignon's theorem.
Varignon's theorem states that the midpoints of the sides of a quadrilateral form a parallelogram. More precisely, `midpoint_midpoint_midpoint_rotate` states: the two diagonals of the midpoint quadrilateral have the same midpoint.
This PR was written with AI assistance (Claude Code)
|
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
22/2 |
Mathlib/LinearAlgebra/AffineSpace/Midpoint.lean,docs/1000.yaml |
2 |
7 |
['github-actions', 'theebayuser', 'wwylele'] |
nobody |
0-9828 2 hours ago |
0-55900 15 hours ago |
0-55894 15 hours |
| 42779 |
j-loreaux author:j-loreaux |
feat: geometric series in `WithLp 1 (Unitization 𝕜 A)` are summable if they are in `A` |
This can be used to eliminate the need for `NormOneClass` assumptions related to the spectrum in Banach algebras, and to generalize them from `CompleteSpace` to `HasSummableGeometricSeries`.
---
- [ ] depends on: #43141
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
29/9 |
Mathlib/Algebra/Algebra/Spectrum/Quasispectrum.lean,Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean |
3 |
18 |
['ADedecker', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'themathqueen'] |
nobody |
0-9173 2 hours ago |
0-18603 5 hours ago |
10-2970 10 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 |
111/117 |
Archive/Wiedijk100Theorems/Konigsberg.lean,Mathlib/Combinatorics/Graph/Simple.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Dart.lean,Mathlib/Combinatorics/SimpleGraph/Density.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean,Mathlib/Combinatorics/SimpleGraph/Hall.lean,Mathlib/Combinatorics/SimpleGraph/LineGraph.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Prod.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Uniform.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Sum.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Tripartite.lean,Mathlib/ModelTheory/Graph.lean,Mathlib/Order/Cover.lean,Mathlib/Order/RelClasses.lean |
25 |
26 |
['SnirBroshi', 'Vierkantor', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-9142 2 hours ago |
0-12632 3 hours ago |
101-60266 101 days |
| 43690 |
b-mehta author:b-mehta |
refactor(NumberTheory/Bernoulli): define pIntegral via the p-adic valuation subring |
This is useful for #42304, since it will let us use subring lemmas there. In this case the diff is innocuous, but in Finset.sum cases the new version is cleaner to work with
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
24/21 |
Mathlib/NumberTheory/Bernoulli.lean |
1 |
1 |
['github-actions'] |
nobody |
0-8801 2 hours ago |
1-5782 1 day ago |
1-5776 1 day |
| 42483 |
bocowgill author:bocowgill |
feat(Topology/MetricSpace/HausdorffDistance): characterize joint minimizers via infDist |
This PR adds `Metric.exists_forall_dist_le_iff_forall_infDist_le`, a generic profiling theorem for pseudometric spaces. Assuming the distance from `a` to `U` is attained, it says that `a` can be paired with some `u ∈ U` whose distance is bounded by every pair in `A × U` if and only if
`Metric.infDist a U ≤ Metric.infDist a' U`
for every `a' ∈ A`.
The theorem profiles out the `U` variable and is intended for later minimization arguments, including least-squares and Frisch–Waugh–Lovell (FWL) partialling-out applications.
The projection lemmas originally included here were split into #43645 following review feedback.
---
### LLM disclosure
I used OpenAI Codex substantially for planning, Lean implementation, responding to review feedback, and local validation. I reviewed the statement and proof line by line and can explain them.
For the current revision, I ran a targeted build of `Mathlib.Topology.MetricSpace.HausdorffDistance`, the style and environment linters, signature and axiom checks, a placeholder scan, and `git diff --check`. |
t-analysis
LLM-generated
new-contributor
|
19/0 |
Mathlib/Topology/MetricSpace/HausdorffDistance.lean |
1 |
22 |
['bocowgill', 'github-actions', 'j-loreaux', 'themathqueen', 'wwylele'] |
j-loreaux assignee:j-loreaux |
0-7364 2 hours ago |
1-79942 1 day ago |
32-70673 32 days |
| 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 |
15 |
['SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'tb65536'] |
nobody |
0-6191 1 hour ago |
10-76590 10 days ago |
32-84924 32 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.
Closes https://github.com/leanprover-community/mathlib4/issues/17722
Co-authored-by: @ocfnash |
LLM-generated
new-contributor
t-algebra
large-import
label:t-algebra$ |
204/3 |
Mathlib.lean,Mathlib/Data/Set/PowersetCard.lean,Mathlib/LinearAlgebra/ExteriorPower/HodgeStar.lean,Mathlib/LinearAlgebra/ExteriorPower/WedgePairing.lean,Mathlib/LinearAlgebra/PerfectPairing/Basic.lean,Mathlib/Order/Hom/PowersetCard.lean |
6 |
30 |
['github-actions', 'kirill-kondrashov', 'mathlib-bors', 'ocfnash', 'wwylele'] |
ocfnash assignee:ocfnash |
0-6071 1 hour ago |
0-23710 6 hours ago |
10-81853 10 days |
| 43261 |
YaelDillies author:YaelDillies |
feat(Geometry/Convex): cancellative convex spaces |
Define cancellative convex spaces as those space where non-trivial convex combinations are injective in any of their inputs. Show that modules, affine spaces, products of cancellative convex spaces, subspaces of cancellative convex spaces... are cancellative convex spaces.
Cancellative convex spaces are the correct setting for a large number of convexity concepts. Such a convex space embeds into some (canonical) affine space and therefore satisfies the geometrically intuitive properties of convexity. Non-cancellative convex spaces are pathological from the point of view of polytope theory.
[nLab](https://ncatlab.org/nlab/show/convex+space)
Generated by Claude Opus, reviewed and golfed by myself.
From the Polytopes in Berlin workshop, where participants were confused whether they could generalise their results from affine spaces to convex spaces.
Assisted-by: Claude Opus 5
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry
LLM-generated
|
209/15 |
Mathlib/Algebra/Order/GroupWithZero/Basic.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Geometry/Convex/ConvexSpace/AffineSpace.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/Geometry/Convex/ConvexSpace/Module.lean,Mathlib/Geometry/Convex/ConvexSpace/Prod.lean,Mathlib/Geometry/Convex/Set.lean |
7 |
9 |
['YaelDillies', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-4281 1 hour ago |
0-22792 6 hours ago |
8-51036 8 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
maintainer-merge
|
24/1 |
Mathlib/Order/Fin/Basic.lean |
1 |
2 |
['github-actions', 'themathqueen'] |
nobody |
0-4181 1 hour ago |
20-65158 20 days ago |
20-67918 20 days |
| 41675 |
joelriou author:joelriou |
feat(AlgebraicTopology): pushout diagrams in the filtration of `Δ[p] ⊗ Δ[1]` |
---
- [x] depends on: #41656
- [x] depends on: #41655
- [x] depends on: #41624
- [x] depends on: #41617
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology |
243/3 |
Mathlib/AlgebraicTopology/SimplicialSet/ProdStdSimplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/ProdStdSimplexOne.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/Subcomplex.lean |
4 |
19 |
['github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
0-3758 1 hour ago |
0-4540 1 hour ago |
3-83796 3 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 |
0-3185 53 minutes ago |
29-68830 29 days ago |
41-72559 41 days |
| 43724 |
TJHeeringa author:TJHeeringa |
chore: rename (anti)lipschitz to (anti)lipschitzWith |
This PR renames
- `SemilinearIsometryClass.lipschitz` -> `SemilinearIsometryClass.lipschitzWith`
- `SemilinearIsometryClass.antilipschitz` -> `SemilinearIsometryClass.antilipschitzWith`
- `LinearIsometry.lipschitz` -> `LinearIsometry.lipschitzWith`
- `LinearIsometry.antilipschitz` -> `LinearIsometry.antilipschitzWith`
- `LinearIsometryEquiv.lipschitz` -> `LinearIsometryEquiv.lipschitzWith`
- `Dilation.lipschitz` -> `Dilation.lipschitzWith`
- `Dilation.antilipschitz` -> `Dilation.antilipschitzWith`
---
Part of #42869.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
51/21 |
Mathlib/Analysis/Normed/Operator/LinearIsometry.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/MeasureTheory/Integral/Bochner/ContinuousLinearMap.lean,Mathlib/Topology/MetricSpace/Dilation.lean,Mathlib/Topology/MetricSpace/Isometry.lean |
5 |
3 |
['github-actions', 'themathqueen'] |
nobody |
0-2926 48 minutes ago |
0-4590 1 hour ago |
0-4584 1 hour |
| 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.
From the convexity refactor. Ordered convex spaces will be used to define convex/concave functions.
Assisted-by: Claude Opus 5
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry
LLM-generated
|
384/5 |
Mathlib.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/Geometry/Convex/ConvexSpace/Order.lean,Mathlib/Order/UpperLower/Basic.lean |
6 |
10 |
['YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-2305 38 minutes ago |
0-19606 5 hours ago |
9-77951 9 days |
| 43741 |
marcinbugaj author:marcinbugaj |
feat(Data/Fin/Tuple/Sort): add descending sort `Tuple.sortDesc` |
Add `Tuple.sortDesc`, the permutation sorting a tuple `f : Fin n → α` into decreasing order, as the antitone counterpart of `Tuple.sort`. Along with it:
* `Tuple.antitone_sortDesc`: `f ∘ Tuple.sortDesc f` is `Antitone` (mirrors `Tuple.monotone_sort`);
* `Tuple.comp_perm_comp_sortDesc_eq_comp_sortDesc`: the descending sorts of `f` and of any permutation of `f` agree (mirrors `comp_perm_comp_sort_eq_comp_sort`).
Split out of #41898 (majorization), which needs the decreasing rearrangement of a tuple; these are general-purpose additions to the tuple-sorting API and belong next to `Tuple.sort`. |
new-contributor
t-data
|
19/0 |
Mathlib/Data/Fin/Tuple/Sort.lean |
1 |
2 |
['github-actions'] |
nobody |
0-2242 37 minutes ago |
0-3089 51 minutes ago |
0-3083 51 minutes |
| 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
|
267/0 |
Mathlib.lean,Mathlib/Order/Category/PartOrd/CartesianClosed.lean,Mathlib/Order/Category/PartOrd/Colimits.lean,Mathlib/Order/Category/PartOrd/Reflective.lean,Mathlib/Order/Category/Preord/CartesianClosed.lean,Mathlib/Order/Category/Preord/Colimits.lean,Mathlib/Order/Category/Preord/Reflective.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
8 |
7 |
['github-actions', 'intgrah', 'thomaskwaring'] |
nobody |
0-2127 35 minutes ago |
1-70408 1 day ago |
72-20230 72 days |
| 43692 |
j-loreaux author:j-loreaux |
feat: a syntax linter for the `@[congr]` attribute |
The documentation for the `@[congr]` attribute states:
```
A `simp` congruence lemma should prove the equality of two applications of the same function from
the equality of the individual arguments. They are used by `simp` to visit subexpressions of an
application where the default congruence algorithm fails. This is particularly important for
functions where some parameters depend on previous parameters.
Congruence lemmas should have an equality for every parameter, possibly bounded by foralls, with
the right hand side being an application of a parameter on the right-hand side. When applying
congruence theorems, `simp` will first infer parameters from the right-hand side, then try to
simplify each left-hand side of the parameter equalities and finally infer the right-hand side
parameters from the result.
```
However, no check is performed to verify that all the arguments to the function vary. This PR adds a syntax linter to check this and turns it on by default across Mathlib. We explicitly silence the linter where it currently triggers.
This linter addresses a real problem, as I was bitten by the lack of this check in #43028 and fixed in #43689.
---
AI disclosure: this was generated by Claude (Opus 5) with my prompting. I rewrote some bits here and there to something I found more suitable, especially in the documentation portions. I understand all the meta code written herein, but I'm not sure if it follows best practices everywhere or not.
After some initial review, I had some better ideas of what could be changed, and made edits myself, without Claude.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-linter
LLM-generated
large-import
|
227/0 |
Mathlib.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/NonUnital.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Data/Finset/Filter.lean,Mathlib/Data/Finset/Fold.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Find.lean,Mathlib/Data/List/Zip.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Multiset/Find.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Set/NAry.lean,Mathlib/Data/Sym/Basic.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/Init.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/CongrFixedArgs.lean,MathlibTest/Linter/CongrFixedArgs.lean |
21 |
11 |
['github-actions', 'grunweg', 'j-loreaux'] |
nobody |
0-1876 31 minutes ago |
1-1728 1 day ago |
1-1722 1 day |
| 42344 |
plp127 author:plp127 |
feat: generalize `Polynomial.irreducible_comp` |
The new statement doesn't require the polynomials be monic. There's also an iff version.
---
- [x] depends on: #42069
- [x] depends on: #42333
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
62/66 |
Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/KummerExtension.lean |
2 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-1257 20 minutes ago |
0-2494 41 minutes ago |
0-28488 7 hours |
| 42461 |
Ganton23 author:Ganton23 |
feat(Probability/Quantile): the lower quantile function of a real cdf |
This adds `ProbabilityTheory.lowerQuantile`, the lower quantile function
(the generalized inverse of a cdf-like monotone function on ℝ), with the
order core, the Galois connection under right-continuity, the plug-in
identity, left-continuity in the level, uniqueness, equivariance under
order isomorphisms, and the specialization to `cdf μ` where both standing
side conditions become theorems.
---
This adds the LOWER QUANTILE FUNCTION, that is the generalized inverse of a cdf-like
monotone function on `ℝ`, in a new file `Mathlib/Probability/Quantile.lean` beside
`Mathlib/Probability/CDF.lean`.
### What it adds
`ProbabilityTheory.quantileSet F p = {x | p ≤ F x}` and
`ProbabilityTheory.lowerQuantile F p = sInf (quantileSet F p)`, with:
* the order core: monotonicity in the level, and the two `csInf` bounds;
* attainment `p ≤ F (lowerQuantile F p)` under monotonicity and right continuity;
* the Galois connection `lowerQuantile F p ≤ x ↔ p ≤ F x`, and its strict form;
* the plug-in identity `F (lowerQuantile F p) = p` under continuity;
* left continuity of the quantile in the level;
* uniqueness under strict monotonicity, and existence on an interval via the IVT;
* equivariance under an `OrderIso ℝ ℝ`, in both functional and pushforward form;
* the specialization to `cdf μ` for a probability measure at `0 < p < 1`, where both
standing side conditions become theorems.
### Why
`sInf` of an empty or unbounded-below set is Lean's junk value `0`. A quantile lemma
stated without `Set.Nonempty` and `BddBelow` is therefore either false or accidentally
true of the junk value, and a reader cannot tell which. Every general lemma here carries
both by name, and the cdf section discharges both from the limits of the cdf at `atBot`
and `atTop`. That discharge is what makes the general statements non-vacuous.
Three lemmas record that the continuity hypotheses are load bearing, stated as
`¬ ∀ ...` rather than as existentials. An existential says a bad case exists; the negated
universal says the weakened lemma is FALSE, which is what a reader asking "is this
hypothesis decorative" actually wants. The witness is a monotone step function that is
left continuous at its jump: monotone, bounded, well behaved quantile set, and not right
continuous, which alone breaks attainment, the forward half of the adjunction, and the
plug-in identity.
`not_galoisConnection_lowerQuantile_cdf` is included deliberately as a NEGATIVE result.
The bundled `GaloisConnection` packaging quantifies over all levels, and a cdf has an
unbounded quantile set at level `0` and an empty one at level `2`, so the bundled
conclusion is false for every probability measure. Reaching the cdf case would need the
level indexed by the open unit interval as a subtype. I would rather state that boundary
than let a reader discover it.
### What it depends on
`Mathlib.Probability.CDF` for the cdf and its monotonicity and limits;
`Mathlib.Topology.Order.IntermediateValue`; `Mathlib.Topology.Order.MonotoneContinuity`;
`Mathlib.Order.ConditionallyCompleteLattice.Indexed`. No new axioms: every declaration
reports exactly `propext`, `Classical.choice`, `Quot.sound`.
### Prior art, named because a reviewer will find it
`Mathlib/Order/SemiconjSup.lean` defines `IsOrderRightAdjoint f g := ∀ y, IsLUB
{x | f x ≤ y} (g y)`, built by `isOrderRightAdjoint_csSup` as a supremum over a
SUB-level set. That is the order-dual construction, the UPPER generalized inverse; the
two functions are different and neither definition unfolds to the other. Its file is
about circle homeomorphisms, which is why searching for "quantile" does not find it.
`GaloisConnection` is used rather than reinvented.
There is no existing `quantile` in mathlib: zero case-insensitive hits across the tree.
`median` exists but is the median of a simplex in affine geometry, a different word in a
different subject.
### Generality, stated rather than left to review
Everything is at `F : ℝ → ℝ`. Running mathlib's environment linters locally flagged
`[IsProbabilityMeasure μ]` as unused in nine cdf-facing declarations. Five (the two
side-condition dischargers and the three negative results) are generalized: they now
hold for the cdf of any measure, since the cdf's limit lemmas hold unconditionally.
Four convenience wrappers (`lowerQuantile_cdf_le_iff`, `lowerQuantile_cdf_mono`,
`le_cdf_lowerQuantile`, `continuousWithinAt_lowerQuantile_cdf_Iic`) KEEP the instance
under `@[nolint unusedArguments]`, deliberately: for a non-probability measure,
`cdf μ` is a normalizing construction, so the generalized statements would be
accidentally true of the construction rather than of the object the name suggests,
which is the failure mode the Why section above exists to avoid. If reviewers prefer
the fully general forms, I am happy to drop the instances; the proofs do not use
them. Two declarations (`cdf_map_orderIso`, `lowerQuantile_cdf_map`) consume the
instance and keep it.
The ORDER CORE generalizes to a `ConditionallyCompleteLinearOrder` domain with a
`Preorder` codomain with proof terms UNCHANGED, and I have checked that rather than
assumed it. Two caveats found while checking, which is why I would rather do it as a
follow-up than fold it in here:
* `apply_lt_of_lt_lowerQuantile` needs a LINEAR codomain, since it goes from
`¬ (p ≤ F x)` to `F x < p`.
* `exists_apply_lt_of_bddBelow` is FALSE without `NoMinOrder` on the domain. Over `ℝ` it
is proved by exhibiting `b - 1`; on a domain with a least element, a constant `F` at
level `p` has a quantile set that is everything, is bounded below, and has no point
with `F a < p`.
The TOPOLOGICAL layer does not transcribe: `tendsto_lowerQuantile_nhdsLT` takes the
midpoint `(c + q) / 2`, which uses the field structure, and a general version needs
`DenselyOrdered`. Happy to do the generalization in a follow-up, or in this PR if a
reviewer prefers it landed general the first time.
### Open, and not claimed
The UPPER quantile and the lemmas relating the two; the probability integral transform;
`Measure.map` along a general measurable monotone function rather than an order
isomorphism; and a `GaloisConnection` packaging indexed by the open unit interval that
would reach the cdf case.
### AI disclosure
- Lean definitions and proofs generated with the assistance of AI agents (Utilized Anthropic's Claude, operating through Claude Code). Done over numerous working sessions wherein I, Gabriel Anton, directed, reviewed and authorized each session.
- Every declaration is kernel-checked; Zero sorry, and everyone of the 48 submitted declarations reports exactly [Propext, Classical.choice, Quot.sound] under transitive #print axioms; clean lake build against current master.
-Ran aggressive adversarial review process on each agents work with a separate agent; A hostile-reviewer pass, refutation lemmas proving the hypotheses are load bearing, and a certified negative result for the packaging that does not work. The corrections forced by this process are in the file and history.
- Ran Mathlib's environment linters BEFORE submission; their finding (Unused in nine declarations) was adopted, which produced the generalization-versus-nolint split described in the PR body.
- Commit messages are terse factual summaries; PR body was drafted by agents and reviewed and edited by me, this disclosure is also written by me, Gabriel Anton.
- I will apply the LLM-Generated label (by comment) and I will answer review questions myself.
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
LLM-generated
new-contributor
|
603/0 |
Mathlib.lean,Mathlib/Probability/Quantile.lean |
2 |
3 |
['Ganton23', 'github-actions'] |
nobody |
0-1028 17 minutes ago |
0-1758 29 minutes ago |
1-77069 1 day |
| 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 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-950 15 minutes ago |
0-1561 25 minutes ago |
25-69832 25 days |
| 43539 |
abhijitaj1997 author:abhijitaj1997 |
feat(CategoryTheory/Monoidal/Cartesian/Endomorphism): add ring and semiring structures |
Given two monoidal object in a nice enough category, this show that the monoidal morphisms between then forms an additive group. This additive group is part of a a larger semiring structure.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-category-theory
large-import
|
204/0 |
Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Endomorphism.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Mon.lean,Mathlib/CategoryTheory/Monoidal/Mon.lean |
4 |
28 |
['abhijitaj1997', 'alreadydone', 'github-actions', 'joelriou', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
0-374 6 minutes ago |
0-12769 3 hours ago |
2-58658 2 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
|
499/416 |
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 |
27 |
['TJHeeringa', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
0-222 3 minutes ago |
0-222 3 minutes ago |
21-82638 21 days |
| 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 |
111-64731 3 months ago |
198-4186 198 days ago |
200-38466 200 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 |
96-30716 3 months ago |
96-31549 96 days ago |
96-31915 96 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 |
91-74044 2 months ago |
91-75480 91 days ago |
91-76007 91 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 |
85-64086 2 months ago |
85-66136 85 days ago |
94-11378 94 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 |
76-49901 2 months ago |
79-86127 79 days ago |
79-86206 79 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 |
75-74029 2 months ago |
90-76639 90 days ago |
90-76919 90 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 |
72-67262 2 months ago |
72-68451 72 days ago |
72-68445 72 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 |
69-62949 2 months ago |
69-65204 69 days ago |
69-65198 69 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 |
69-34517 2 months ago |
69-35106 69 days ago |
69-35100 69 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 |
66-79695 2 months ago |
66-81362 66 days ago |
66-82803 66 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 |
65-11153 2 months ago |
65-11153 65 days ago |
81-53424 81 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 |
64-5484 2 months ago |
64-7927 64 days ago |
64-15698 64 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 |
58-9041 1 month ago |
58-11641 58 days ago |
58-11651 58 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 |
57-62452 1 month ago |
57-62973 57 days ago |
65-45928 65 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 |
57-16762 1 month ago |
82-13770 82 days ago |
219-17512 219 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 |
54-50084 1 month ago |
54-58934 54 days ago |
54-60269 54 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 |
53-65488 1 month ago |
53-79231 53 days ago |
53-79225 53 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 |
53-51869 1 month ago |
53-55955 53 days ago |
53-55949 53 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 |
50-64732 1 month ago |
72-31796 72 days ago |
103-81286 103 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 |
49-25447 1 month ago |
49-63417 49 days ago |
49-63411 49 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 |
49-25428 1 month ago |
49-63417 49 days ago |
49-63411 49 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 |
48-15242 1 month ago |
48-16026 48 days ago |
48-24491 48 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 |
45-15506 1 month ago |
94-10264 94 days ago |
94-10258 94 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 |
45-15408 1 month ago |
48-53445 48 days ago |
48-53439 48 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 |
44-66127 1 month ago |
44-66759 44 days ago |
60-27243 60 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 |
44-52965 1 month ago |
45-17036 45 days ago |
45-17030 45 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 |
44-37877 1 month ago |
44-38443 44 days ago |
44-38437 44 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 |
43-14566 1 month ago |
44-42374 44 days ago |
44-42368 44 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 |
43-14540 1 month ago |
44-41312 44 days ago |
44-44514 44 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 |
43-14540 1 month ago |
44-78343 44 days ago |
44-79161 44 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 |
43-14533 1 month ago |
45-34458 45 days ago |
45-34452 45 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 |
40-70604 1 month ago |
46-18793 46 days ago |
46-43515 46 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 |
39-25187 1 month ago |
56-1475 56 days ago |
56-1469 56 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 |
38-55000 1 month ago |
39-64586 39 days ago |
39-64580 39 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 |
37-2198 1 month ago |
37-2816 37 days ago |
79-22505 79 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 |
36-21132 1 month ago |
36-21132 36 days ago |
36-21126 36 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 |
33-86202 1 month ago |
40-7700 40 days ago |
40-11688 40 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 |
33-79494 1 month ago |
41-70315 41 days ago |
41-70855 41 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 |
33-34447 1 month ago |
33-35079 33 days ago |
85-43538 85 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 |
32-42286 1 month ago |
32-45444 32 days ago |
61-18614 61 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 |
32-6704 1 month ago |
32-9080 32 days ago |
32-9074 32 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 |
31-6401 1 month ago |
31-7101 31 days ago |
43-34505 43 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 |
30-21841 30 days ago |
93-8748 93 days ago |
93-8835 93 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 |
29-74449 29 days ago |
29-75612 29 days ago |
29-75606 29 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 |
29-72601 29 days ago |
56-66214 56 days ago |
56-66208 56 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 |
29-31497 29 days ago |
29-32105 29 days ago |
29-32099 29 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 |
29-29907 29 days ago |
29-31668 29 days ago |
29-31662 29 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 |
29-28398 29 days ago |
29-32882 29 days ago |
29-32876 29 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 |
29-8879 29 days ago |
29-10898 29 days ago |
29-12240 29 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 |
28-76760 28 days ago |
38-11793 38 days ago |
40-53307 40 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 |
28-11962 28 days ago |
60-83479 60 days ago |
62-51775 62 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 |
27-60852 27 days ago |
27-61494 27 days ago |
27-64122 27 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 |
27-9864 27 days ago |
27-12559 27 days ago |
27-12673 27 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 |
26-80902 26 days ago |
28-63803 28 days ago |
28-63797 28 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 |
26-13841 26 days ago |
26-26607 26 days ago |
26-26601 26 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 |
26-9240 26 days ago |
26-71508 26 days ago |
26-72113 26 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 |
25-35715 25 days ago |
27-75391 27 days ago |
27-75436 27 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 |
25-32260 25 days ago |
31-35970 31 days ago |
34-54156 34 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 |
24-79925 24 days ago |
24-80519 24 days ago |
24-80703 24 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 |
24-75599 24 days ago |
24-85088 24 days ago |
39-78689 39 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 |
24-34083 24 days ago |
25-47071 25 days ago |
25-61941 25 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 |
24-12663 24 days ago |
24-14195 24 days ago |
31-28966 31 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 |
23-11884 23 days ago |
23-14215 23 days ago |
77-6489 77 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 |
21-66492 21 days ago |
22-63628 22 days ago |
22-63622 22 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 |
21-30509 21 days ago |
21-33456 21 days ago |
25-74831 25 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 |
20-82165 20 days ago |
21-55994 21 days ago |
21-55988 21 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 |
20-40584 20 days ago |
20-41741 20 days ago |
20-41735 20 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 |
19-23757 19 days ago |
19-23851 19 days ago |
61-34770 61 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 |
18-12513 18 days ago |
18-20776 18 days ago |
18-23195 18 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 |
16-66980 16 days ago |
27-65330 27 days ago |
40-56842 40 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 |
16-47579 16 days ago |
26-50653 26 days ago |
26-50647 26 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 |
16-1009 16 days ago |
36-26121 36 days ago |
49-55535 49 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 |
15-72810 15 days ago |
15-73392 15 days ago |
15-73386 15 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 |
15-65618 15 days ago |
46-37340 46 days ago |
46-82767 46 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 |
15-45815 15 days ago |
31-26352 31 days ago |
57-15305 57 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 |
15-27171 15 days ago |
16-42717 16 days ago |
22-50499 22 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 |
13-65633 13 days ago |
112-33191 112 days ago |
112-33785 112 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 |
12-78677 12 days ago |
39-85495 39 days ago |
39-85489 39 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 |
12-43255 12 days ago |
38-7687 38 days ago |
56-76082 56 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 |
12-42799 12 days ago |
18-54155 18 days ago |
18-71387 18 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 |
12-14389 12 days ago |
22-70293 22 days ago |
22-70287 22 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 |
12-9591 12 days ago |
12-11007 12 days ago |
12-11084 12 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 |
11-65631 11 days ago |
47-52770 47 days ago |
71-36099 71 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 |
11-37703 11 days ago |
24-7354 24 days ago |
31-62849 31 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 |
11-10730 11 days ago |
11-11321 11 days ago |
69-26757 69 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 |
11-8474 11 days ago |
13-74421 13 days ago |
13-74415 13 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 |
11-6268 11 days ago |
30-77435 30 days ago |
30-77429 30 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 |
10-65629 10 days ago |
60-75506 60 days ago |
64-78895 64 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 |
10-58861 10 days ago |
27-72539 27 days ago |
54-46026 54 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 |
10-40411 10 days ago |
10-40411 10 days ago |
10-40405 10 days |
| 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 |
10-38099 10 days ago |
10-76559 10 days ago |
26-33588 26 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 |
10-21194 10 days ago |
16-31696 16 days ago |
16-31786 16 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 |
10-12149 10 days ago |
41-70420 41 days ago |
41-71083 41 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 |
9-69791 9 days ago |
32-8982 32 days ago |
32-9747 32 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 |
9-65624 9 days ago |
24-28647 24 days ago |
26-43728 26 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 |
9-65620 9 days ago |
10-43046 10 days ago |
10-44239 10 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 |
9-47127 9 days ago |
9-76683 9 days ago |
9-76677 9 days |
| 43349 |
Nicola9Falciola author:Nicola9Falciola |
feat(Algebra/FreeAbelianGroup/Finsupp): add api for the coeff of a single element |
---
Add two API lemmas computing the coefficent of the form `of x` for `x : X` in the FreeAbelianGroup.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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$ |
8/0 |
Mathlib/Algebra/FreeAbelianGroup/Finsupp.lean |
1 |
2 |
['github-actions'] |
nobody |
9-11290 9 days ago |
9-15286 9 days ago |
9-15280 9 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 |
9-10196 9 days ago |
12-1702 12 days ago |
37-71667 37 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 |
9-8556 9 days ago |
123-7114 123 days ago |
123-7108 123 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.
---
- [x] depends on: #42896 [which fixes buggy naming present in Topology/Metrizable/CompletelyMetrizable]
This can be viewed as a companion to #42693, which - under the stronger assumption of the ambient space being Polish - establishes the other direction --- a Gδ subspace of a Polish space is itself Polish.
Together, these give Alexandrov's theorem, characterizing the Polish subspaces of an ambient Polish space as exactly the Gδ ones, and (via `Metric.PiNatEmbed.exists_embedding_to_hilbert_cube`) Polish spaces as exactly the Gδ subsets of the Hilbert cube. If and when both these PRs are committed, I anticipate adding these consequences to Topology/MetricSpace/Polish.lean
LLM usage: I wrote the initial version myself, while using Google's free "AI mode" to help me find relevant lemma names in the codebase, and afterward used helped Claude Opus to review, which led to simplifying some of the arguments. I take full responsibility for the code here
|
t-topology
new-contributor
|
91/0 |
Mathlib.lean,Mathlib/Topology/GDelta/CompletelyMetrizable.lean |
2 |
8 |
['github-actions', 'justin-palumbo', 'mathlib-dependent-issues', 'plp127'] |
nobody |
8-84717 8 days ago |
23-22415 23 days ago |
23-22706 23 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, which strengthens the existing IsOpen.polishSpace.
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.]
---
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 |
8-84657 8 days ago |
30-4453 30 days ago |
30-4447 30 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 |
14 |
['felixpernegger', 'github-actions', 'lman310', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
8-78636 8 days ago |
8-81849 8 days ago |
20-18693 20 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'] |
riccardobrasca assignee:riccardobrasca |
8-39952 8 days ago |
10-24522 10 days ago |
48-6194 48 days |
| 40537 |
SnkXyx author:SnkXyx |
feat(Algebra/MvPolynomial/Variables): define main degree |
This PR defines the **main degree** of a multivariate polynomial:
* `MvPolynomial.mainDegree p : Multiset σ` :
When `σ` is a linear order, `mainDegree p` is the multiset consisting of the maximal variable
among all variables appearing in `p`, appearing with its largest multiplicity among all monomials
in `p`.
The definition was originally developed in PR #36103 as part of the formalization of the Characteristic Set Method (Wu-Ritt Method). The Characteristic Set project aims to formalize the algorithmic method for solving systems of multivariate polynomial equations in Lean 4, providing foundational infrastructure for algebraic geometry based on triangular decomposition.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
tech debt
label:t-algebra$ |
111/23 |
Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/SchwartzZippel.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/RingTheory/MvPolynomial/Basic.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder/DegLex.lean,Mathlib/RingTheory/MvPowerSeries/Trunc.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Spectrum/Prime/ChevalleyComplexity.lean |
12 |
21 |
['SnkXyx', 'faenuccio', 'github-actions', 'mathlib-merge-conflicts', 'vlad902'] |
nobody |
8-15053 8 days ago |
8-16642 8 days ago |
56-5829 56 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'] |
RemyDegenne assignee:RemyDegenne |
7-65616 7 days ago |
36-62452 36 days ago |
36-62446 36 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'] |
ocfnash assignee:ocfnash |
7-65615 7 days ago |
22-13941 22 days ago |
22-13935 22 days |
| 43418 |
aimmerwahr author:aimmerwahr |
feat(RingTheory): prove `comap_ringConGen_equiv` (`proof_wanted`) |
Prove that `(ringConGen r).comap f = ringConGen (r on f)` for an EquivLike as stated in proof_wanted.
I rearranged the parameter order (and dropped `[FunLike F R' R]`) from the original proof_wanted statement, since EquivLike already gives a FunLike and having repeated FunLike (that are not definitionally equal) makes instance resolution impossible.
This is essentially the same proof as the previous ring equivalence version (pulling back the RingCon by f inverse and then by f), with comap spelled out explicitly.
AI usage: Everything is proved by hand. I then worked with AI to review and simplify the code. |
file-removed
t-ring-theory
new-contributor
|
37/33 |
Mathlib/RingTheory/Congruence/Basic.lean,Wanted.lean,Wanted/RingTheory/Congruence/Basic.lean |
3 |
2 |
['github-actions'] |
nobody |
7-57544 7 days ago |
7-60856 7 days ago |
7-60850 7 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'] |
nobody |
7-43361 7 days ago |
64-75073 64 days ago |
64-75067 64 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$ |
87/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Hecke/Basic.lean |
2 |
8 |
['JX-Mo', 'Whysoserioushah', 'github-actions'] |
nobody |
7-41246 7 days ago |
18-18189 18 days ago |
18-18285 18 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
|
70/6 |
Mathlib/Tactic/Linarith/Frontend.lean,MathlibTest/Tactic/Linarith/Basic.lean |
2 |
12 |
['BorisTheBrave', 'JovanGerb', 'github-actions', 'sharky564'] |
JovanGerb assignee:JovanGerb |
7-12941 7 days ago |
7-32799 7 days ago |
14-31013 14 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'] |
b-mehta assignee:b-mehta |
6-65630 6 days ago |
68-55238 68 days ago |
86-69405 86 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'] |
urkud assignee:urkud |
6-65629 6 days ago |
36-14314 36 days ago |
88-59355 88 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'] |
fpvandoorn assignee:fpvandoorn |
6-65627 6 days ago |
69-34468 69 days ago |
75-32047 75 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'] |
EtienneC30 assignee:EtienneC30 |
6-65624 6 days ago |
12-16174 12 days ago |
12-16168 12 days |
| 41459 |
EzequielS2 author:EzequielS2 |
feat(Algebra/Group): mulOpposite equivs for submonoid and subgroup |
Add MulOpposite monoid equivalences for submonoids and subgroups, and remove the corresponding TODOs in `Subsemiring/MulOpposite.lean`. |
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 |
6-34607 6 days ago |
24-72916 24 days ago |
65-83528 65 days |
| 37279 |
imalinowskip author:imalinowskip |
feat(Probability): multivariate CLT |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #40345 -->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-measure-probability
|
138/3 |
Mathlib/Probability/CentralLimitTheorem.lean |
1 |
18 |
['EtienneC30', 'RemyDegenne', 'github-actions', 'imalinowskip', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
RemyDegenne assignee:RemyDegenne |
6-15567 6 days ago |
6-15567 6 days ago |
13-57280 13 days |
| 41729 |
vaca22 author:vaca22 |
feat(RingTheory/DedekindDomain): add divisor group core |
Add the divisor group of a Dedekind domain as a formal-sum model, together with the additive equivalence to the multiplicative group of nonzero fractional ideals.
**Relation to what Mathlib already has.** As pointed out on Zulip, Mathlib already knows that fractional ideals factor: `FractionalIdeal.count` gives the exponent of a height-one prime, and `ClassGroup` is built from fractional ideals directly. This PR does not re-prove any of that — it reuses `count` and `finite_factors` verbatim. What it adds is the *additive* packaging:
* `IsDedekindDomain.Divisor R := HeightOneSpectrum R →₀ ℤ`, so a divisor is a finitely supported integer-valued function and one can write `D₁ + D₂`, `-D`, `D v`, and use the whole `Finsupp` API (`support`, `sum`, induction on the support);
* `FractionalIdeal.divisorEquiv`, an `AddEquiv` from `(FractionalIdeal R⁰ K)ˣ` to `Divisor R`, turning ideal multiplication into divisor addition.
The multiplicative view is the right one for the class group; the additive one is what divisor-theoretic arguments are written in, where one constantly forms `D - D'`, compares coefficients prime by prime, and does induction over `D.support`. Having both, related by a single `AddEquiv`, means neither side has to be re-derived.
**Downstream use.** This is the bottom layer of a formalization of Riemann–Roch for algebraic function fields (announced in `#AI authored projects > Riemann–Roch for function fields`): `L(D)`, `deg D`, and the statement `ℓ(D) = deg D + 1 - g + ℓ(W - D)` are all phrased in terms of additive divisors, and the degree map is defined by summing coefficients over `D.support`.
Happy to reshape the API — in particular whether `Divisor` should be an `abbrev` or a structure, and whether this belongs next to `Factorization` rather than in its own file.
AI usage: LLM-generated, disclosed per the AI policy.
|
t-ring-theory
new-contributor
LLM-generated
|
100/0 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Divisor.lean |
2 |
4 |
['github-actions', 'grunweg', 'vaca22'] |
nobody |
6-14296 6 days ago |
56-75600 56 days ago |
58-72797 58 days |
| 41732 |
vaca22 author:vaca22 |
feat(RingTheory/ClassGroup): add mulEquiv_mk0 |
Add `ClassGroup.mulEquiv_mk0`: the class-group isomorphism induced by a ring equivalence `e : R ≃+* S` sends `ClassGroup.mk0 I` to `ClassGroup.mk0 (I.map e)`.
`ClassGroup.mulEquiv` is currently only characterized through the `FractionRing` comparison equivalences, so any concrete computation has to unfold `ClassGroup.equiv` and chase fractional ideals through `IsFractionRing.semilinearEquivOfRingEquiv` by hand. This lemma states the expected behaviour on generators — classes of nonzero ideals — and is marked `@[simp 1100]` so that transporting class-group facts along a ring equivalence becomes a `simp` step.
**Downstream use.** This came out of a formalization of Riemann–Roch for algebraic function fields (announced in `#AI authored projects > Riemann–Roch for function fields`). There the group law on a Weierstrass elliptic curve is compared with the degree-zero class group, and the comparison is set up along a ring equivalence between two coordinate presentations; without this lemma the transport is several lines of manual fractional-ideal chasing at each use site.
The proof is by injectivity of `ClassGroup.equiv (FractionRing S)`, reducing to the statement that the semilinear equivalence maps `coeSubmodule` of `I` onto `coeSubmodule` of `I.map e`.
AI usage: LLM-generated, disclosed per the AI policy.
|
t-ring-theory
new-contributor
LLM-generated
|
43/0 |
Mathlib/RingTheory/ClassGroup/Basic.lean |
1 |
3 |
['github-actions', 'vaca22'] |
nobody |
6-14265 6 days ago |
59-21027 59 days ago |
59-21021 59 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
|
22/3 |
Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/NormalClosure.lean |
3 |
16 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'vaca22', 'xroblot'] |
nobody |
6-11234 6 days ago |
6-12474 6 days ago |
56-10850 56 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 |
27 |
['Formalistic03', 'SnirBroshi', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts'] |
b-mehta assignee:b-mehta |
6-5216 6 days ago |
6-5216 6 days ago |
80-23087 80 days |
| 43216 |
JadAbouHawili author:JadAbouHawili |
feat(Combinatorics/SimpleGraph/Clique): independence number is zero iff the graph has no vertices |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor |
46/3 |
Mathlib/Combinatorics/SimpleGraph/Clique.lean |
1 |
45 |
['JadAbouHawili', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
6-196 6 days ago |
6-6498 6 days ago |
9-69082 9 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'] |
eric-wieser assignee:eric-wieser |
5-65634 5 days ago |
91-73655 91 days ago |
100-73693 100 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'] |
sgouezel assignee:sgouezel |
5-65633 5 days ago |
71-71311 71 days ago |
71-71305 71 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'] |
nobody |
5-64725 5 days ago |
91-63294 91 days ago |
91-63288 91 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
|
156/0 |
Mathlib.lean,Mathlib/Analysis/ODE/Peano.lean |
2 |
8 |
['github-actions', 'philipp-svinger', 'sgouezel'] |
sgouezel assignee:sgouezel |
5-22853 5 days ago |
5-22854 5 days ago |
45-2233 45 days |
| 41786 |
Nicola9Falciola author:Nicola9Falciola |
feat(LinearAlgebra/Matrix/GeneralLinearGroup/Defs): add the proof of the range of toGL to be the ker of the determinant and the induced equivalence |
Add a lemma proving that the `toGL.range ` is equal to `det.ker` and the induced equivalence between `SL` and `det.ker` .
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
22/0 |
Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean |
1 |
21 |
['Nicola9Falciola', 'github-actions', 'pepamontero', 'themathqueen'] |
nobody |
5-16996 5 days ago |
5-24360 5 days ago |
37-69709 37 days |
| 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
|
16/3 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean |
1 |
39 |
['JadAbouHawili', 'SnirBroshi', 'github-actions'] |
nobody |
5-10532 5 days ago |
5-84922 5 days ago |
24-79800 24 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 |
51 |
['Maldooor', 'TJHeeringa', 'github-actions', 'j-loreaux', 'jkandel1', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'themathqueen'] |
nobody |
4-64732 4 days ago |
15-18916 15 days ago |
54-51803 54 days |
| 43503 |
carlok author:carlok |
chore: weaken unused typeclass assumptions on section variables |
This PR has been described at
https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/unused.20hypotheses.3A.20431.20in.20a.2029k.20sample.2C.20and.2033.20one-line.20PRs/near/622113682
it is a list of mechanically found [1] one-liners relaxing theorems whose setting is stronger than their proof needs. Each change compiled alone against an unmodified file (whole library building locally at 633b366493).
More information on the project https://github.com/carlok/unused-assumptions
In the zulip thread, @SnirBroshi spotted that the refactored Topology/EMetricSpace/Pi.lean takes [EDist α] in place of two binders.
PS: A single PR because I noticed #42214 (813 files, merged, same kind of change).
Thank you for your work.
[1] LLM + Lean4 itself |
new-contributor |
32/32 |
Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRingsExact.lean,Mathlib/Algebra/CharP/Algebra.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Order/Archimedean/Defs.lean,Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Algebra/Order/Group/Indicator.lean,Mathlib/Algebra/Order/Sub/Unbundled/Hom.lean,Mathlib/Algebra/Order/WithTop/Untop0.lean,Mathlib/Algebra/Regular/SMul.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/Analysis/Convex/Cone/TensorProduct.lean,Mathlib/Analysis/Convex/Gauge.lean,Mathlib/Analysis/Normed/Group/CocompactMap.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Data/Finset/Pairwise.lean,Mathlib/GroupTheory/Torsion.lean,Mathlib/LinearAlgebra/BilinearMap.lean,Mathlib/LinearAlgebra/LinearIndependent/Defs.lean,Mathlib/Order/Antichain.lean,Mathlib/Order/Monotone/Extension.lean,Mathlib/RingTheory/AlgebraTower.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/Over.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Module.lean,Mathlib/RingTheory/Valuation/ValuationRing.lean,Mathlib/Topology/EMetricSpace/Pi.lean,Mathlib/Topology/Instances/Sign.lean |
29 |
5 |
['github-actions', 'leanprover-radar', 'themathqueen'] |
nobody |
4-62851 4 days ago |
4-77768 4 days ago |
4-77762 4 days |
| 37964 |
mortarsanjaya author:mortarsanjaya |
feat(Algebra/Order/Floor): weaken assumptions on theorems about `FloorRing` |
This PR weakens as much assumptions as possible on theorems about `FloorSemiring` and `FloorRing`. Mainly, `IsOrderedRing` and `IsStrictOrderedRing` are weakened to just `IsOrderedAddMonoid` or removed completely from the assumptions on the theorems.
Most theorems can be generalized as is or only requires a minor modification of replacing lemmas about casting naturals/integers preserving order (the likes of `Nat.cast_le`, `Int.cast_lt`, etc.) with the corresponding version for `FloorRing`. Some other lemmas require modification in the proofs, but these changes shorten the proofs. The new proof of the theorem `Int.mul_cast_floor_div_cancel_of_pos` requires an extra import.
The assumption `IsOrderedAddMonoid` is required on lemmas that involve comparison + addition, and `IsOrderedRing` is required only on lemmas that involve comparison + multiplication of two non-integer 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]
-->
- [x] depends on: #37714
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
169/142 |
Mathlib/Algebra/ContinuedFractions/Computation/Translations.lean,Mathlib/Algebra/Order/Floor/Defs.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semifield.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/Round.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Data/Int/Log.lean,Mathlib/Data/NNRat/Floor.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/MeasureTheory/Function/Floor.lean,Mathlib/Order/Interval/Finset/Floor.lean,Mathlib/Topology/Algebra/Order/Floor.lean |
13 |
17 |
['github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mortarsanjaya', 'themathqueen'] |
jjdishere assignee:jjdishere |
4-30517 4 days ago |
4-33819 4 days ago |
78-43294 78 days |
| 41856 |
Ruizsolveall author:Ruizsolveall |
feat(Topology/Covering): fundamental group of the circle is ℤ |
This is the promised follow-up to #40947 (see [Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/How.20to.20wisely.20state.20Homotopy.20lifting.20lemma)); most of the file is the computation that the loop `t ↦ n • t` is sent to `n : ℤ`.
---
I used Claude to navigate the quotient covering map API and for an initial frame of the proofs, which I then reworked; I understand and can vouch for all of it.
|
t-topology
new-contributor
LLM-generated
|
177/0 |
Mathlib.lean,Mathlib/Algebra/Group/Subgroup/ZPowers/Lemmas.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Data/Int/Cast/Lemmas.lean,Mathlib/Topology/Covering/FundamentalGroupCircle.lean,Mathlib/Topology/Homotopy/Lifting.lean |
6 |
8 |
['alreadydone', 'github-actions', 'mathlib-merge-conflicts'] |
ADedecker assignee:ADedecker |
4-12497 4 days ago |
8-8841 8 days ago |
50-53092 50 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
maintainer-merge
label:t-algebra$ |
26/0 |
Mathlib/RepresentationTheory/Subrepresentation.lean |
1 |
22 |
['JX-Mo', 'Whysoserioushah', 'github-actions', 'jcommelin'] |
joelriou assignee:joelriou |
4-8934 4 days ago |
4-10488 4 days ago |
77-13938 77 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
- Redefine `PFun` as a structure with one field, `toFun : α → Part β`.
- Add the `FunLike (α →. β) α (Part β)` instance and configure `simps` projections.
- Add the projection and application simp lemmas required by the structure wrapper.
- Add `fun x ↦. ...` notation for partial-function literals.
- Adapt downstream equality proofs to use `PFun.ext` or `DFunLike.ext` where
`funext` no longer applies directly.
- Remove 33 local `backward.isDefEq.respectTransparency false` workarounds that
are no longer needed after the refactor.
### 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.
### 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
|
599/544 |
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 |
78 |
['AlexeyMilovanov', 'JovanGerb', 'YaelDillies', 'dagurtomas', 'github-actions', 'j-loreaux', 'jcommelin', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
3-79919 3 days ago |
4-31668 4 days ago |
107-53187 107 days |
| 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
|
180/0 |
Mathlib.lean,Mathlib/RingTheory/MvPolynomial/DeterminantalIdeal.lean |
2 |
17 |
['WangJiabai', 'github-actions', 'tb65536'] |
riccardobrasca assignee:riccardobrasca |
3-75684 3 days ago |
7-33986 7 days ago |
97-76507 97 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 |
5 |
['eric-wieser', 'github-actions', 'j-loreaux'] |
ADedecker assignee:ADedecker |
3-65631 3 days ago |
54-26685 54 days ago |
54-27179 54 days |
| 43268 |
naype888-cloud author:naype888-cloud |
feat(Analysis/SpecialFunctions): the cosecant-squared identity |
This adds the finite cosecant-squared identity and its two cotangent-squared corollaries to
Mathlib, building on the existing Chebyshev `U` API. Everything lives in one new file.
The main result is
$$\sum_{k=1}^{N-1}\csc^2\!\bigl(\tfrac{k\pi}{N}\bigr)=\frac{N^2-1}{3},$$
together with `∑ cot²(kπ/N) = (N-1)(N-2)/3` and the odd-denominator half-sum
`∑_{k=1}^{m} cot²(kπ/(2m+1)) = m(2m-1)/3`, which is the arithmetic heart of the elementary
proof of the Basel problem (Aigner–Ziegler, *Proofs from THE BOOK*, Chapter "π²/6").
Along the way we prove three small facts about `U ℝ n` that the existing API was missing:
it splits over `ℝ`, its roots are symmetric about `0`, and they lie in `(-1, 1)`.
Happy to split these into a prerequisite PR if that makes review easier.
**Naming.** `Real.sum_inv_sin_sq_pi_div` — open to suggestions.
**References.** Cauchy, *Cours d'analyse* (1821); Aigner–Ziegler, *Proofs from THE BOOK*.
---
Eduardo Nava-Hernandez, with my father José Arturo Nava-Hernandez and my cousin
Gerardo Gabriel Nava-Gómez — our first contribution to Mathlib. Thank you for your time
reviewing this.
AI-assisted (Claude). I have verified every statement and proof step personally. |
t-analysis
new-contributor
LLM-generated
|
227/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/CosecantSq.lean |
2 |
4 |
['github-actions', 'naype888-cloud', 'wwylele'] |
nobody |
3-57565 3 days ago |
10-79523 10 days ago |
10-79517 10 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 |
22 |
['Robertboy18', 'SnirBroshi', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'wwylele'] |
eric-wieser assignee:eric-wieser |
3-35515 3 days ago |
6-9384 6 days ago |
31-31294 31 days |
| 43441 |
JakobScholbach author:JakobScholbach |
feat(CategoryTheory/LiftingProperties): the unique lifting property |
Defines `HasAtMostOneLiftingProperty i p`, saying that every commutative square from `i` to `p` has at most one filler (its type of lifts is a `Subsingleton`), and `HasUniqueLiftingProperty i p`, which extends it together with `HasLiftingProperty` to say that every such square has exactly one.
The API mirrors `LiftingProperties/Basic.lean`: both classes are stable under composition on either side, admit the corresponding cancellation, transfer along isomorphisms of arrows and along retracts of arrows, and are exchanged by passing to the opposite category. Every statement is dualized with `@[to_dual]`, so the file states one of each pair. Also included are `CommSq.lift_eq_of_hasAtMostOneLiftingProperty`, saying that two fillers of one square agree, and `hasUniqueLiftingProperty_iff`, which restates the unique lifting property as an explicit `∃!`.
I was not fully sure about two points, so I am happy to get feedback particularly on the following:
- `HasUniqueLiftingProperty.of_left_iso` carries `priority := 100`. Is this OK?
- `CommSq.uniqueLiftStruct` is a `def` with `instance_reducible` rather than an instance. OK?
I intend to submit further PRs that develop orthogonal factorization systems based on the small object argument later on, once this PR is approved.
Thank you. |
new-contributor
t-category-theory
LLM-generated
|
312/0 |
Mathlib.lean,Mathlib/CategoryTheory/LiftingProperties/Unique.lean |
2 |
5 |
['JakobScholbach', 'github-actions', 'theebayuser'] |
dagurtomas assignee:dagurtomas |
3-29779 3 days ago |
7-13379 7 days ago |
7-13373 7 days |
| 43577 |
javgomzar author:javgomzar |
chore(Order/BooleanAlgebra): Add push tags |
Add push tags to some lemmas in Mathlib/Order/BooleanAlgebra/Set.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-order
new-contributor
|
19/4 |
Mathlib/Order/BooleanAlgebra/Set.lean |
1 |
3 |
['github-actions'] |
nobody |
3-10898 3 days ago |
3-15932 3 days ago |
3-19789 3 days |
| 26479 |
thefundamentaltheor3m author:thefundamentaltheor3m |
feat(Analysis/Complex/CauchyIntegral): Cauchy–Goursat for Unbounded Rectangles |
In this PR, we prove versions of the Cauchy-Goursat theorem where the contours in question are rectangular and unbounded (ie, where the contours look like the $\bigsqcup$ symbol). I am not sure if I have formalised these in the best way, or if `Analysis.Complex.CauchyIntegral` is the best place for them (it might be prudent to reorganise the file into multiple files at some point), but I believe this is a useful result. Suggestions welcome.
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
To indicate co-authors, include lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-analysis
sphere-packing
maintainer-merge
|
186/0 |
Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/MeasureTheory/Integral/DominatedConvergence.lean |
2 |
49 |
['github-actions', 'j-loreaux', 'loefflerd', 'mathlib4-merge-conflict-bot', 'thefundamentaltheor3m', 'themathqueen', 'wwylele'] |
j-loreaux assignee:j-loreaux |
3-10504 3 days ago |
7-68325 7 days ago |
108-78848 108 days |
| 40368 |
Sanghyeok0 author:Sanghyeok0 |
feat: add confluence predicates for relations |
This PR adds a minimal relation-level API for confluence-style properties:
* `Relation.IsDiamond`
* `Relation.IsConfluent`
* `Relation.IsChurchRosser`
It also adds the basic API connecting these predicates:
* `Relation.ReflTransGen.to_eqvGen`
* `Relation.Join.le_eqvGen`
* `Relation.IsChurchRosser.isConfluent`
* `Relation.IsConfluent.isChurchRosser`
* `Relation.IsChurchRosser.join_reflTransGen_eq_eqvGen`
The main downstream application is the polynomial-reduction development in
#41475. There, polynomial reduction is treated as an ordinary relation on
`MvPolynomial`, and these predicates are used to formulate confluence and the
Church--Rosser property.
A more general rewriting API exists in CSLib. This PR does not attempt to
upstream that API wholesale; its scope is intentionally limited to the
declarations needed by the downstream polynomial application.
The earlier version of this PR also introduced
`Relation.StronglyConfluent` and additional equivalence packaging. Those
declarations have been removed to keep this PR small and application-driven.
Reference: Becker, Weispfenning, and Kredel,
*Gröbner Bases: A Computational Approach to Commutative Algebra*.
AI usage disclosure:
I used OpenAI Codex to generate initial drafts of the definitions, theorem statements, proof scripts, and docstrings. I made the final decisions on the mathematical scope and API design, reviewed the generated code and final changes, and made a few edits to statements and docstrings.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic
new-contributor
tech debt
LLM-generated
|
103/25 |
Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/Logic/Relation.lean |
2 |
36 |
['Sanghyeok0', 'SnirBroshi', 'chenson2018', 'github-actions', 'mathlib-merge-conflicts'] |
JovanGerb assignee:JovanGerb |
2-65628 2 days ago |
4-83115 4 days ago |
76-74383 76 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
|
37/2 |
Mathlib/Data/List/Infix.lean |
1 |
4 |
['github-actions', 'mathlib-merge-conflicts', 'theebayuser'] |
TwoFX assignee:TwoFX |
2-65625 2 days ago |
4-103 4 days ago |
54-54399 54 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'] |
j-loreaux assignee:j-loreaux |
2-65623 2 days ago |
40-84256 40 days ago |
40-84250 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'] |
alreadydone assignee:alreadydone |
2-65622 2 days ago |
24-22800 24 days ago |
24-23748 24 days |
| 42110 |
Zeta-Wu author:Zeta-Wu |
feat: add path length for paths in pseudo emetric spaces |
This PR defines the length of a path in a `PseudoEMetricSpace` as its variation on the unit interval.
It proves the basic properties of path length:
- the endpoint distance is bounded by the length;
- the constant path has length zero;
- reversing a path preserves its length;
- concatenating two paths adds their lengths.
Main declarations:
- `Path.length`
- `Path.edist_le_length`
- `Path.length_refl`
- `Path.length_symm`
- `Path.length_trans`
This is intended as a first step toward a broader theory of rectifiable paths, including later results on invariance of length under monotone reparametrization, and shortest paths are line segments up to monotone reparametrization in strict convex spaces.
This PR was discussed on Zulip [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/PR.20.2342110.3A.20Path.2Elength.20in.20PseudoEMetricSpace).
AI disclosure: I used an agent called ReasLingo to generate those codes. After the codes are generated I read them line by line and ask the agent to rewrite some proofs when I think it is a bad code. For design decisions, I asked the agent to give me several versions, and I manually picked one of them to make sure it fits human understanding.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
LLM-generated
|
225/0 |
Mathlib.lean,Mathlib/Topology/EMetricSpace/ArcLength.lean,Mathlib/Topology/EMetricSpace/PathLength.lean,Mathlib/Topology/Path.lean,Mathlib/Topology/UnitInterval.lean |
5 |
109 |
['CoolRmal', 'Zeta-Wu', 'felixpernegger', 'github-actions', 'pelicanhere', 'scholzhannah'] |
scholzhannah assignee:scholzhannah |
2-54109 2 days ago |
2-56181 2 days ago |
36-60080 36 days |
| 43599 |
fjvga author:fjvga |
feat(MeasureTheory/Measure/FrostmanMassBound): mass distribution principle |
If a measure ν satisfies ν s ≤ (ediam s)^d for all sets of diameter ≤ ε, and ν A ≠ 0, then d ≤ dimH A. This is the standard mass distribution principle (Frostman, easy direction) appearing in every fractal geometry textbook (Falconer §4.1, Mattila §4.9).
The proof composes two existing Mathlib results:
- Measure.le_hausdorffMeasure
- le_dimH_of_hausdorffMeasure_ne_zero
References:
- K. Falconer, Fractal Geometry, §4.1
- P. Mattila, Geometry of Sets and Measures in Euclidean Spaces, §4.9
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
new-contributor
|
68/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/FrostmanMassBound.lean |
2 |
4 |
['github-actions', 'metakunt'] |
nobody |
2-40851 2 days ago |
2-52609 2 days ago |
2-53409 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
|
64/0 |
Mathlib/Analysis/Convex/Intrinsic.lean,Mathlib/Analysis/Convex/Topology.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Homeomorph/Defs.lean |
4 |
15 |
['TTony2019', 'github-actions', 'j-loreaux', 'themathqueen'] |
j-loreaux assignee:j-loreaux |
2-21823 2 days ago |
2-21823 2 days ago |
60-22960 60 days |
| 43346 |
JadAbouHawili author:JadAbouHawili |
feat(Combinatorics/SimpleGraph/Connectivity): change IsEdgeReachable and IsEdgeConnected to accept ENat instead of Nat |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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
|
28/6 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean |
2 |
35 |
['JadAbouHawili', 'SnirBroshi', 'github-actions'] |
nobody |
2-12861 2 days ago |
4-33588 4 days ago |
8-61156 8 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 |
12 |
['eric-wieser', 'github-actions', 'hawkrobe', 'mathlib-merge-conflicts'] |
jjdishere assignee:jjdishere |
2-10082 2 days ago |
2-13933 2 days ago |
77-3852 77 days |
| 43643 |
Sanghyeok0 author:Sanghyeok0 |
refactor(Logic/Relation): move inclusion lemmas out of EqvGen |
I moved the four relation-inclusion lemmas introduced in #40792 from `Relation.EqvGen` to `Relation`, retaining the existing names as deprecated aliases.
This refactor was split out from #40368 following the review discussion there.
Changes:
* `Relation.EqvGen.reflGen_le_eqvGen` → `Relation.reflGen_le_eqvGen`
* `Relation.EqvGen.symmGen_le_eqvGen` → `Relation.symmGen_le_eqvGen`
* `Relation.EqvGen.transGen_le_eqvGen` → `Relation.transGen_le_eqvGen`
* `Relation.EqvGen.reflTransGen_le_eqvGen` → `Relation.reflTransGen_le_eqvGen`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
22/4 |
Mathlib/Logic/Relation.lean |
1 |
2 |
['github-actions'] |
nobody |
1-81985 1 day ago |
2-964 2 days ago |
2-1034 2 days |
| 40599 |
ChiCubed author:ChiCubed |
feat(LinearAlgebra): rank-nullity theorems for Submodule map/comap |
We show forms of the rank-nullity theorem involving `Submodule.map` and `Submodule.comap`. Together with `LinearMap.ker_comp` this provides a formula for the rank of the kernel of a composite (and, in finite dimensions at least, for the rank of the range).
---
I didn't explicitly write the aforementioned formula for rank ker (f ∘ g) since it is just `LinearMap.ker_comp` followed by `LinearMap.lift_rank_comap`, but perhaps it should be added for discoverability?
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
63/15 |
Mathlib/Algebra/Module/Submodule/Ker.lean,Mathlib/Algebra/Module/Submodule/Map.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/LinearAlgebra/Dimension/RankNullity.lean |
4 |
41 |
['ADedecker', 'ChiCubed', 'github-actions', 'jcommelin', 'themathqueen', 'wwylele'] |
ocfnash assignee:ocfnash |
1-70562 1 day ago |
1-70562 1 day ago |
79-36760 79 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'] |
kim-em assignee:kim-em |
1-65629 1 day ago |
37-60515 37 days ago |
89-27886 89 days |
| 43604 |
MetinovAdik author:MetinovAdik |
feat(Analysis): Laplacian and gradient under composition with a dilation |
feat(Analysis): Laplacian and gradient under composition with a dilation
Two lemmas describing how the Laplacian and the gradient behave under
pre-composition with `c • ·`, the missing companions of `fderiv_comp_smul`
and `iteratedFDeriv_comp_const_smul`.
* `InnerProductSpace.laplacian_comp_smul` (in `InnerProductSpace/Laplacian.lean`,
next to `laplacian_smul`): for `f : E → F` with `ContDiff ℝ 2 f` and `c : ℝ`,
`Δ (f <| c • ·) x = c ^ 2 • Δ f (c • x)`.
Each of the two derivatives contributes one factor of `c`.
Proof: `laplacian_eq_iteratedFDeriv_stdOrthonormalBasis` and
`iteratedFDeriv_comp_const_smul`, in the style of `laplacian_smul`.
* `gradient_comp_smul` (in `Calculus/Gradient/Basic.lean`): for `f : F → 𝕜`
and `c : 𝕜`, `∇ (f <| c • ·) x = conj c • ∇ f (c • x)`.
The derivative picks up `c` (`fderiv_comp_smul`) and the Riesz isomorphism is
conjugate linear, hence `conj c`. No differentiability hypothesis: for `c = 0`
both sides are `0`, exactly as in `fderiv_comp_smul`.
Motivation: the parabolic scaling `v ↦ λ • v (λ • x) (λ² t)` of the Navier–Stokes
equations, where every term acquires `λ³`. Establishing that in Lean required
these two facts, which were the only missing pieces; the rest was already in
Mathlib.
Names follow `fderiv_comp_smul` rather than `iteratedFDeriv_comp_const_smul`;
happy to switch if the other convention is preferred.
---
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
t-analysis
new-contributor
LLM-generated
|
20/0 |
Mathlib/Analysis/Calculus/Gradient/Basic.lean,Mathlib/Analysis/InnerProductSpace/Laplacian.lean |
2 |
3 |
['github-actions'] |
nobody |
1-60700 1 day ago |
2-37702 2 days ago |
2-37696 2 days |
| 43595 |
localecho author:localecho |
feat(NumberTheory/Transcendental/Liouville): irrational reals are LiouvilleWith for 1 < p ≤ 2 |
Closes the gap noted in this file's module doc — the reverse implication for 1 < p ≤ 2 was flagged 'not formalized yet' since 2021. Proved via Dirichlet approximation (Real.infinite_rat_abs_sub_lt_one_div_den_sq_of_irrational) plus a finite-fiber argument on denominators, rather than continued fractions directly.
----
Formalized with Claude's help, verified by a clean lake build.
Posted about this gap in #new-members first: https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Intro.3A.20Brigham.20Hall.20.3B.20LiouvilleWith.20gap.20for.201.20.3C.20p.20.E2.89.A4.202/near/622672679 |
t-number-theory
new-contributor
LLM-generated
|
76/2 |
Mathlib/NumberTheory/Transcendental/Liouville/LiouvilleWith.lean |
1 |
4 |
['SnirBroshi', 'github-actions', 'metakunt'] |
nobody |
1-45803 1 day ago |
2-72431 2 days ago |
2-72425 2 days |
| 43607 |
Whning0513 author:Whning0513 |
chore(Data/Set/Semiring): add simp attributes |
Mark `up_le_up` and `up_lt_up` with `@[simp]`, as requested by the existing TODO.
--------
Tests:
- `lake env lean Mathlib/Data/Set/Semiring.lean`
- `lake build Mathlib.Data.Set.Semiring`
- `lake exe runLinter Mathlib.Data.Set.Semiring` |
t-data
new-contributor
|
2/1 |
Mathlib/Data/Set/Semiring.lean |
1 |
6 |
['LLaurance', 'Whning0513', 'copilot-pull-request-reviewer', 'github-actions', 'grunweg', 'leanprover-radar'] |
nobody |
1-45155 1 day ago |
2-35324 2 days ago |
2-35318 2 days |
| 43642 |
b1de0 author:b1de0 |
feat(MeasureTheory/Measure/ResolventTransform): finite moment expansion |
Add a finite moment expansion of `resolventTransform` with an exact integral remainder, assuming integrable moments and a nonzero evaluation point outside the support image.
---
I need this to relate matched moments to errors in kernels of the form `∫ u, (1 + w * u)⁻¹ ∂μ`. The identity is finite and does not require convergence of the corresponding infinite geometric series.
|
t-measure-probability
new-contributor
|
52/0 |
Mathlib/MeasureTheory/Measure/ResolventTransform.lean |
1 |
2 |
['github-actions'] |
nobody |
1-39655 1 day ago |
1-40363 1 day ago |
1-40468 1 day |
| 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 |
1-26147 1 day ago |
57-1051 57 days ago |
57-2087 57 days |
| 38223 |
Deicyde author:Deicyde |
feat(Geometry/Manifold): add `MfldCat`, the category of `C^n` manifolds |
Defines `MfldCat 𝕜 n`: the category of `C^n` manifolds over a field `𝕜`, in which the model with corners is allowed to vary between objects. An object bundles a model vector space `E`, a model space `H`, a model with corners `I : ModelWithCorners 𝕜 E H` and a term of `ModelWithCorners.MfldCat I n`--see #41109. This includes manifolds with boundary / corners.
For more discussion see this Zulip thread: [#PR reviews > #38223 The Category of C^n Manifolds](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2338223.20The.20Category.20of.20C.5En.20Manifolds/with/587038032)
Also added: `ContMDiffMap.id_apply`, `.coe_id` and `.coe_comp` which are comparable to `ContinuousMap` API.
### Future work
- ✅ Define a Monoidal structure via product manifolds, analogous to `Manifold.Topology.Category.TopCat.Monoidal` #38560
- ✅ Define the tangent functor: `M ↦ TM`, `F ↦ F.tangentMap` from `MfldCat (n+1) 𝕜` to `MfldCat n 𝕜` #38270
- Functor `FGModuleCat 𝕜 ⥤ MfldCat 𝕜 n` sending a finite-dimensional `𝕜`-vector space to the manifold modeled on itself. Left as `TODO`.
- Define `FGModuleCat 𝕜` as an enriched category over `MfldCat n 𝕜`. Then _smooth functors_ can be realized as endofunctors on the enriched category. This is the main motivation for this construction.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #41109 [The category of `C^n` manifolds on a fixed model]
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry
new-contributor
t-category-theory
|
210/0 |
Mathlib.lean,Mathlib/Geometry/Manifold/Category/MfldCat/Basic.lean,Mathlib/Geometry/Manifold/ContMDiffMap.lean |
3 |
63 |
['Deicyde', 'chrisflav', 'dagurtomas', 'github-actions', 'idontgetoutmuch', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'peabrainiac'] |
joelriou assignee:joelriou |
1-25850 1 day ago |
1-26728 1 day ago |
60-66961 60 days |
| 43672 |
javgomzar author:javgomzar |
chore(LinearAlgebra/Matrix): add push tags to transpose lemmas |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
6/5 |
Mathlib/LinearAlgebra/Matrix/Defs.lean |
1 |
3 |
['github-actions'] |
nobody |
1-16254 1 day ago |
1-18788 1 day ago |
1-18782 1 day |
| 42424 |
lydia-schiff author:lydia-schiff |
feat(Order/Partition/Finpartition): transport a set partition along a type equivalence |
- Adds `Finpartition.congr` to transport a `Finpartition` along a type equivalence.
- We can use `Finpartition.map` if we have an order-iso, and the equivalence induces one via the new `Finset.congrOrderIso` which is based on `Equiv.finsetCongr`.
- Includes parts, card, refl, and round-trip lemmas.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- `Equiv.finsetCongr` already gives us an equivalence of Finsets, so the new `Finset.congrOrderIso` just adds that the power-set lattice structure is also preserved.
- Includes lemmas showing that the parts are e-images of the old ones, card is preserved, and refl + round-trip for the equivalence.
- The cardinality lemma was the original motivation from some work on Stirling numbers, but I thought that `Finpartition.congr` and `Finset.congrOrderIso` seemed reusable and hopefully useful in their own right, and thought it would make a good first contribution.
- Zulip thread about naming and placement [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60Finpartition.2Econgr.60.20.E2.80.94.20naming.20.26.20placement)
- I used Claude Opus 4.8 to help draft the proofs and explore the API. I have spent several weeks making sure I understand and can justify every line and I've learned a lot which is great.
[](https://gitpod.io/from-referrer/)
|
t-order
LLM-generated
new-contributor
|
61/0 |
Mathlib/Data/Finset/Image.lean,Mathlib/Order/Partition/Finpartition.lean |
2 |
6 |
['github-actions', 'lydia-schiff', 'mathlib-merge-conflicts'] |
nobody |
0-85811 23 hours ago |
1-3868 1 day ago |
27-74824 27 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 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-78982 21 hours ago |
0-79717 22 hours ago |
31-55352 31 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'] |
nobody |
0-64732 17 hours ago |
22-56638 22 days ago |
45-48524 45 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'] |
nobody |
0-64731 17 hours ago |
76-43159 76 days ago |
78-66850 78 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'] |
nobody |
0-64730 17 hours ago |
64-53534 64 days ago |
64-53528 64 days |
| 41728 |
vaca22 author:vaca22 |
feat(GroupTheory): prove uniqueness of ℤᵐ⁰ automorphisms |
Prove that every order-preserving multiplicative automorphism of ℤᵐ⁰ is the identity. This also gives a Unique instance for its automorphism type and a Subsingleton instance for order-preserving multiplicative normalizations from G to ℤᵐ⁰.
The proof transports an automorphism through WithZero.exp and WithZero.log to an additive automorphism of ℤ, then excludes negation by monotonicity.
------------
**AI disclosure**: this PR is primarily LLM-generated (Claude Code).
|
t-group-theory
new-contributor
LLM-generated
|
55/0 |
Mathlib/GroupTheory/ArchimedeanDensely.lean |
1 |
13 |
['github-actions', 'grunweg', 'tb65536', 'vaca22', 'wwylele'] |
nobody |
0-54526 15 hours ago |
6-13626 6 days ago |
20-58162 20 days |
| 43621 |
Whning0513 author:Whning0513 |
feat(Data/List): add basic API for toChunks |
Adds basic API lemmas for `List.toChunks`: flattening recovers the input, chunks are nonempty sublists, and their lengths are bounded by the chunk size.
This addresses the `Data/List/Basic: SP: toChunks` item in #7987.
Tests:
- `lake env lean Mathlib/Data/List/ToChunks.lean`
- `lake build Mathlib.Data.List.ToChunks`
- `lake exe runLinter Mathlib.Data.List.ToChunks`
AI use: OpenAI Codex was used to rebase the branch, run the checks above, and submit this pull request. The code and proofs were written and reviewed by the author. |
t-data
new-contributor
|
119/0 |
Mathlib.lean,Mathlib/Data/List/ToChunks.lean |
2 |
8 |
['copilot-pull-request-reviewer', 'github-actions', 'theebayuser'] |
nobody |
0-50450 14 hours ago |
2-20280 2 days ago |
2-20274 2 days |
| 40050 |
ReemMelamed author:ReemMelamed |
feat(Algebra/Group/GreensRelations): add definitions for Green's relations |
This PR introduces the foundational definitions for Green's relations (L, R, H, D, and J) on semigroups.
This is the first in a series of PRs aimed at formalizing Green's relations for semigroups.
[Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Formalization.20of.20Green.27s.20Relations.20for.20semigroups/with/598557876)
---
- [x] depends on: #40843
|
t-algebra
new-contributor
label:t-algebra$ |
505/0 |
Mathlib.lean,Mathlib/Algebra/Group/GreensRelations/Basic.lean |
2 |
33 |
['ReemMelamed', 'YaelDillies', 'YanYablonovskiy', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues'] |
nobody |
0-28811 8 hours ago |
0-29577 8 hours ago |
20-20721 20 days |
| 43633 |
Jun2028 author:Jun2028 |
feat(SetTheory/Ordinal): classify exponential principal ordinals |
Complete `` TODO: Prove that the exponential principal ordinals are `0`, `1`, `2`, `ω`, or `ε_ x` `` in [Mathlib/SetTheory/Ordinal/Principal.lean](https://github.com/leanprover-community/mathlib4/compare/master...Jun2028:mathlib4:feat/exponential-principal-classification?expand=1#diff-c700a68af59d576bafeeeac5211181f9ce129bdead444df6c9747344817103bd)
By the way, the original TODO was wrong because `1` is not an exponential principal ordinal (it requires $0^0=1<1$ which is false).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-set-theory
new-contributor
|
55/5 |
Mathlib/SetTheory/Ordinal/Principal.lean,Mathlib/SetTheory/Ordinal/Veblen.lean |
2 |
6 |
['github-actions', 'vihdzp'] |
nobody |
0-26845 7 hours ago |
2-12344 2 days ago |
2-12338 2 days |
| 43641 |
katyhr author:katyhr |
feat: definition of Gromov product |
This PR defines the Gromov product which is a prerequisite for defining hyperbolic metric space.
Co-Authored-By: Hang Lu Su <hanglu.su@pm.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-topology
new-contributor
maintainer-merge
|
77/0 |
Mathlib.lean,Mathlib/Topology/MetricSpace/GromovProduct.lean |
2 |
14 |
['Whysoserioushah', 'github-actions', 'grunweg', 'katyhr', 'tb65536', 'vlad902'] |
nobody |
0-21535 5 hours ago |
1-6558 1 day ago |
1-63090 1 day |
| 43425 |
Julian-Kuelshammer author:Julian-Kuelshammer |
feat(Data/Fintype/Defs): add DecidableLE (∀ a, β a) |
This PR grew out of the project to define the Tamari lattice in https://github.com/Julian-Kuelshammer/ExtensionClosedSubcategoriesOfAn/blob/main/ExtensionClosedSubcategoriesOfAn/BracketingFunctions.lean
Prepared with the help of Claude. For this specific instance, I asked what was needed to make defining the Tamari lattice in the project above work. It then suggested an instance just for functions (Fin n -> Fin n). After the discussion it suggested the instance above but with an assumption of Preorder instead of LE, so I changed that. I then found a (hopefully) suitable file to put it in and changed the variable names to the surrouning 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-data
new-contributor
maintainer-merge
|
4/0 |
Mathlib/Data/Fintype/Defs.lean |
1 |
9 |
['Julian-Kuelshammer', 'github-actions', 'leanprover-radar', 'robin-carlier'] |
nobody |
0-20865 5 hours ago |
0-20894 5 hours ago |
7-22465 7 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-20735 5 hours ago |
55-42893 55 days ago |
55-42887 55 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
documentation
maintainer-merge
|
16/13 |
Mathlib/Basic/Rel.lean |
1 |
9 |
['OrfeasLitos', 'github-actions', 'joneugster', 'mathlib-merge-conflicts', 'sankalpsthakur'] |
joneugster assignee:joneugster |
0-16838 4 hours ago |
5-84350 5 days ago |
39-26036 39 days |
| 43673 |
raoxiaojia author:raoxiaojia |
feat(Tactic/Matrix): list-based implementation of matrix, multiplication expansion, and the associated simproc |
This PR adds a list-based implementation of (dense) matrix which can be used to state reflection proofs and certificates. In addition, this adds a multiplication on the representation, and a more efficient expansion construction path than letting kernel directly perform reduction. Also adds a simproc for matrix multiplication which is 3-4x faster than `simp`, the latter of which reduces a matrix multiplication today as well by `@[simp]` lemmas.
---
Note that `ListMatrix.mul` is already kernel reducible, but is susceptible to efficiency issues and eager evaluation of arithmetic expressions, which can be undesirable. The point of MulExpand.lean is to provide a manual construction of the expanded literal and an associated proof term via controlled unfold of the dot product, which is faster to construct (no discovery required by `simp`) and cheaper to check.
The bridge between the list representation and mathlib's `Matrix` is placed in a separate file. As a result the list representation itself requires only minimal mathlib import.
Note that currently Matrix/Reflection.lean (unused within mathlib) also provides a reflection target, but is defined on the `vecCons` construction, which is not very efficient. This work should eventually unify with Matrix/Reflection.lean if the elaboration of `!![]` is changed in the future to lists.
This is separated from https://github.com/raoxiaojia/mathlib4/pull/6 as part of enabling the echelon certificate to be parametric over a custom entry certifier.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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-meta
new-contributor
|
472/18 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Matrix/ListMatrix.lean,Mathlib/Tactic/Matrix/MulExpand.lean,Mathlib/Tactic/Matrix/OfLists.lean,Mathlib/Tactic/Matrix/Parsing.lean,Mathlib/Tactic/NormMatMul.lean,Mathlib/Tactic/NormRank.lean,MathlibTest/NormMatMul.lean |
9 |
3 |
['github-actions', 'raoxiaojia'] |
nobody |
0-13322 3 hours ago |
0-14020 3 hours ago |
1-18191 1 day |
| 42947 |
jeremypparker author:jeremypparker |
feat(Dynamics/ErgodicTheory): krylov-bogolyubov theorem |
The existence of invariant probability measures for continuous maps on compact spaces.
---
I discussed the implementation with ChatGPT but I wrote all the code myself.
[](https://gitpod.io/from-referrer/)
|
t-dynamics
new-contributor
large-import
|
211/0 |
Mathlib.lean,Mathlib/Dynamics/BirkhoffSum/Average.lean,Mathlib/Dynamics/BirkhoffSum/Basic.lean,Mathlib/Dynamics/BirkhoffSum/NormedSpace.lean,Mathlib/Dynamics/Ergodic/EmpiricalMeasure.lean |
5 |
31 |
['github-actions', 'jeremypparker', 'lua-vr', 'mathlib-bors', 'sgouezel'] |
sgouezel assignee:sgouezel |
0-11219 3 hours ago |
0-11258 3 hours ago |
7-80286 7 days |
| 43702 |
theebayuser author:theebayuser |
feat(LinearAlgebra/AffineSpace): add Varignon's theorem |
Hello, this PR introduces Varignon's theorem.
Varignon's theorem states that the midpoints of the sides of a quadrilateral form a parallelogram. More precisely, `midpoint_midpoint_midpoint_rotate` states: the two diagonals of the midpoint quadrilateral have the same midpoint.
This PR was written with AI assistance (Claude Code)
|
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
22/2 |
Mathlib/LinearAlgebra/AffineSpace/Midpoint.lean,docs/1000.yaml |
2 |
7 |
['github-actions', 'theebayuser', 'wwylele'] |
nobody |
0-9828 2 hours ago |
0-55900 15 hours ago |
0-55894 15 hours |
| 42483 |
bocowgill author:bocowgill |
feat(Topology/MetricSpace/HausdorffDistance): characterize joint minimizers via infDist |
This PR adds `Metric.exists_forall_dist_le_iff_forall_infDist_le`, a generic profiling theorem for pseudometric spaces. Assuming the distance from `a` to `U` is attained, it says that `a` can be paired with some `u ∈ U` whose distance is bounded by every pair in `A × U` if and only if
`Metric.infDist a U ≤ Metric.infDist a' U`
for every `a' ∈ A`.
The theorem profiles out the `U` variable and is intended for later minimization arguments, including least-squares and Frisch–Waugh–Lovell (FWL) partialling-out applications.
The projection lemmas originally included here were split into #43645 following review feedback.
---
### LLM disclosure
I used OpenAI Codex substantially for planning, Lean implementation, responding to review feedback, and local validation. I reviewed the statement and proof line by line and can explain them.
For the current revision, I ran a targeted build of `Mathlib.Topology.MetricSpace.HausdorffDistance`, the style and environment linters, signature and axiom checks, a placeholder scan, and `git diff --check`. |
t-analysis
LLM-generated
new-contributor
|
19/0 |
Mathlib/Topology/MetricSpace/HausdorffDistance.lean |
1 |
22 |
['bocowgill', 'github-actions', 'j-loreaux', 'themathqueen', 'wwylele'] |
j-loreaux assignee:j-loreaux |
0-7364 2 hours ago |
1-79942 1 day ago |
32-70673 32 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.
Closes https://github.com/leanprover-community/mathlib4/issues/17722
Co-authored-by: @ocfnash |
LLM-generated
new-contributor
t-algebra
large-import
label:t-algebra$ |
204/3 |
Mathlib.lean,Mathlib/Data/Set/PowersetCard.lean,Mathlib/LinearAlgebra/ExteriorPower/HodgeStar.lean,Mathlib/LinearAlgebra/ExteriorPower/WedgePairing.lean,Mathlib/LinearAlgebra/PerfectPairing/Basic.lean,Mathlib/Order/Hom/PowersetCard.lean |
6 |
30 |
['github-actions', 'kirill-kondrashov', 'mathlib-bors', 'ocfnash', 'wwylele'] |
ocfnash assignee:ocfnash |
0-6071 1 hour ago |
0-23710 6 hours ago |
10-81853 10 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 |
0-3185 53 minutes ago |
29-68830 29 days ago |
41-72559 41 days |
| 43741 |
marcinbugaj author:marcinbugaj |
feat(Data/Fin/Tuple/Sort): add descending sort `Tuple.sortDesc` |
Add `Tuple.sortDesc`, the permutation sorting a tuple `f : Fin n → α` into decreasing order, as the antitone counterpart of `Tuple.sort`. Along with it:
* `Tuple.antitone_sortDesc`: `f ∘ Tuple.sortDesc f` is `Antitone` (mirrors `Tuple.monotone_sort`);
* `Tuple.comp_perm_comp_sortDesc_eq_comp_sortDesc`: the descending sorts of `f` and of any permutation of `f` agree (mirrors `comp_perm_comp_sort_eq_comp_sort`).
Split out of #41898 (majorization), which needs the decreasing rearrangement of a tuple; these are general-purpose additions to the tuple-sorting API and belong next to `Tuple.sort`. |
new-contributor
t-data
|
19/0 |
Mathlib/Data/Fin/Tuple/Sort.lean |
1 |
2 |
['github-actions'] |
nobody |
0-2242 37 minutes ago |
0-3089 51 minutes ago |
0-3083 51 minutes |
| 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
|
267/0 |
Mathlib.lean,Mathlib/Order/Category/PartOrd/CartesianClosed.lean,Mathlib/Order/Category/PartOrd/Colimits.lean,Mathlib/Order/Category/PartOrd/Reflective.lean,Mathlib/Order/Category/Preord/CartesianClosed.lean,Mathlib/Order/Category/Preord/Colimits.lean,Mathlib/Order/Category/Preord/Reflective.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
8 |
7 |
['github-actions', 'intgrah', 'thomaskwaring'] |
nobody |
0-2127 35 minutes ago |
1-70408 1 day ago |
72-20230 72 days |
| 42461 |
Ganton23 author:Ganton23 |
feat(Probability/Quantile): the lower quantile function of a real cdf |
This adds `ProbabilityTheory.lowerQuantile`, the lower quantile function
(the generalized inverse of a cdf-like monotone function on ℝ), with the
order core, the Galois connection under right-continuity, the plug-in
identity, left-continuity in the level, uniqueness, equivariance under
order isomorphisms, and the specialization to `cdf μ` where both standing
side conditions become theorems.
---
This adds the LOWER QUANTILE FUNCTION, that is the generalized inverse of a cdf-like
monotone function on `ℝ`, in a new file `Mathlib/Probability/Quantile.lean` beside
`Mathlib/Probability/CDF.lean`.
### What it adds
`ProbabilityTheory.quantileSet F p = {x | p ≤ F x}` and
`ProbabilityTheory.lowerQuantile F p = sInf (quantileSet F p)`, with:
* the order core: monotonicity in the level, and the two `csInf` bounds;
* attainment `p ≤ F (lowerQuantile F p)` under monotonicity and right continuity;
* the Galois connection `lowerQuantile F p ≤ x ↔ p ≤ F x`, and its strict form;
* the plug-in identity `F (lowerQuantile F p) = p` under continuity;
* left continuity of the quantile in the level;
* uniqueness under strict monotonicity, and existence on an interval via the IVT;
* equivariance under an `OrderIso ℝ ℝ`, in both functional and pushforward form;
* the specialization to `cdf μ` for a probability measure at `0 < p < 1`, where both
standing side conditions become theorems.
### Why
`sInf` of an empty or unbounded-below set is Lean's junk value `0`. A quantile lemma
stated without `Set.Nonempty` and `BddBelow` is therefore either false or accidentally
true of the junk value, and a reader cannot tell which. Every general lemma here carries
both by name, and the cdf section discharges both from the limits of the cdf at `atBot`
and `atTop`. That discharge is what makes the general statements non-vacuous.
Three lemmas record that the continuity hypotheses are load bearing, stated as
`¬ ∀ ...` rather than as existentials. An existential says a bad case exists; the negated
universal says the weakened lemma is FALSE, which is what a reader asking "is this
hypothesis decorative" actually wants. The witness is a monotone step function that is
left continuous at its jump: monotone, bounded, well behaved quantile set, and not right
continuous, which alone breaks attainment, the forward half of the adjunction, and the
plug-in identity.
`not_galoisConnection_lowerQuantile_cdf` is included deliberately as a NEGATIVE result.
The bundled `GaloisConnection` packaging quantifies over all levels, and a cdf has an
unbounded quantile set at level `0` and an empty one at level `2`, so the bundled
conclusion is false for every probability measure. Reaching the cdf case would need the
level indexed by the open unit interval as a subtype. I would rather state that boundary
than let a reader discover it.
### What it depends on
`Mathlib.Probability.CDF` for the cdf and its monotonicity and limits;
`Mathlib.Topology.Order.IntermediateValue`; `Mathlib.Topology.Order.MonotoneContinuity`;
`Mathlib.Order.ConditionallyCompleteLattice.Indexed`. No new axioms: every declaration
reports exactly `propext`, `Classical.choice`, `Quot.sound`.
### Prior art, named because a reviewer will find it
`Mathlib/Order/SemiconjSup.lean` defines `IsOrderRightAdjoint f g := ∀ y, IsLUB
{x | f x ≤ y} (g y)`, built by `isOrderRightAdjoint_csSup` as a supremum over a
SUB-level set. That is the order-dual construction, the UPPER generalized inverse; the
two functions are different and neither definition unfolds to the other. Its file is
about circle homeomorphisms, which is why searching for "quantile" does not find it.
`GaloisConnection` is used rather than reinvented.
There is no existing `quantile` in mathlib: zero case-insensitive hits across the tree.
`median` exists but is the median of a simplex in affine geometry, a different word in a
different subject.
### Generality, stated rather than left to review
Everything is at `F : ℝ → ℝ`. Running mathlib's environment linters locally flagged
`[IsProbabilityMeasure μ]` as unused in nine cdf-facing declarations. Five (the two
side-condition dischargers and the three negative results) are generalized: they now
hold for the cdf of any measure, since the cdf's limit lemmas hold unconditionally.
Four convenience wrappers (`lowerQuantile_cdf_le_iff`, `lowerQuantile_cdf_mono`,
`le_cdf_lowerQuantile`, `continuousWithinAt_lowerQuantile_cdf_Iic`) KEEP the instance
under `@[nolint unusedArguments]`, deliberately: for a non-probability measure,
`cdf μ` is a normalizing construction, so the generalized statements would be
accidentally true of the construction rather than of the object the name suggests,
which is the failure mode the Why section above exists to avoid. If reviewers prefer
the fully general forms, I am happy to drop the instances; the proofs do not use
them. Two declarations (`cdf_map_orderIso`, `lowerQuantile_cdf_map`) consume the
instance and keep it.
The ORDER CORE generalizes to a `ConditionallyCompleteLinearOrder` domain with a
`Preorder` codomain with proof terms UNCHANGED, and I have checked that rather than
assumed it. Two caveats found while checking, which is why I would rather do it as a
follow-up than fold it in here:
* `apply_lt_of_lt_lowerQuantile` needs a LINEAR codomain, since it goes from
`¬ (p ≤ F x)` to `F x < p`.
* `exists_apply_lt_of_bddBelow` is FALSE without `NoMinOrder` on the domain. Over `ℝ` it
is proved by exhibiting `b - 1`; on a domain with a least element, a constant `F` at
level `p` has a quantile set that is everything, is bounded below, and has no point
with `F a < p`.
The TOPOLOGICAL layer does not transcribe: `tendsto_lowerQuantile_nhdsLT` takes the
midpoint `(c + q) / 2`, which uses the field structure, and a general version needs
`DenselyOrdered`. Happy to do the generalization in a follow-up, or in this PR if a
reviewer prefers it landed general the first time.
### Open, and not claimed
The UPPER quantile and the lemmas relating the two; the probability integral transform;
`Measure.map` along a general measurable monotone function rather than an order
isomorphism; and a `GaloisConnection` packaging indexed by the open unit interval that
would reach the cdf case.
### AI disclosure
- Lean definitions and proofs generated with the assistance of AI agents (Utilized Anthropic's Claude, operating through Claude Code). Done over numerous working sessions wherein I, Gabriel Anton, directed, reviewed and authorized each session.
- Every declaration is kernel-checked; Zero sorry, and everyone of the 48 submitted declarations reports exactly [Propext, Classical.choice, Quot.sound] under transitive #print axioms; clean lake build against current master.
-Ran aggressive adversarial review process on each agents work with a separate agent; A hostile-reviewer pass, refutation lemmas proving the hypotheses are load bearing, and a certified negative result for the packaging that does not work. The corrections forced by this process are in the file and history.
- Ran Mathlib's environment linters BEFORE submission; their finding (Unused in nine declarations) was adopted, which produced the generalization-versus-nolint split described in the PR body.
- Commit messages are terse factual summaries; PR body was drafted by agents and reviewed and edited by me, this disclosure is also written by me, Gabriel Anton.
- I will apply the LLM-Generated label (by comment) and I will answer review questions myself.
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
LLM-generated
new-contributor
|
603/0 |
Mathlib.lean,Mathlib/Probability/Quantile.lean |
2 |
3 |
['Ganton23', 'github-actions'] |
nobody |
0-1028 17 minutes ago |
0-1758 29 minutes ago |
1-77069 1 day |
| 43539 |
abhijitaj1997 author:abhijitaj1997 |
feat(CategoryTheory/Monoidal/Cartesian/Endomorphism): add ring and semiring structures |
Given two monoidal object in a nice enough category, this show that the monoidal morphisms between then forms an additive group. This additive group is part of a a larger semiring structure.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-category-theory
large-import
|
204/0 |
Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Endomorphism.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Mon.lean,Mathlib/CategoryTheory/Monoidal/Mon.lean |
4 |
28 |
['abhijitaj1997', 'alreadydone', 'github-actions', 'joelriou', 'robin-carlier'] |
robin-carlier assignee:robin-carlier |
0-374 6 minutes ago |
0-12769 3 hours ago |
2-58658 2 days |
This page collects anonymous visit counts for usage reporting (no cookies, no IP addresses stored). See the Mathlib Initiative privacy policy.