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 |
| 39279 |
jayscambler author:jayscambler |
feat(Cryptography/Sigma): Schnorr sigma protocol and signature scheme |
Adds `Mathlib/Cryptography/Sigma/Schnorr.lean`. New file in a new top-level directory; mathlib currently has no `Mathlib/Cryptography/`, so I've taken `Mathlib/Cryptography/Sigma/` as the natural home for sigma-protocol formalizations.
The file proves the three defining properties of Schnorr's identification scheme as a sigma protocol:
- `Schnorr.correct`: completeness. Honest verifier accepts honest signer's transcript.
- `Schnorr.specialSoundness`: from two accepting transcripts sharing the commitment but using different challenges `c, c'`, the witness `x = (s - s') / (c - c')` is recovered. Needs `q` prime so `c - c'` is invertible in `ZMod q`.
- `Schnorr.hvzkAccepts`: the HVZK simulator `g^s · (y^c)⁻¹` always yields accepting transcripts. This is the structural-correctness half of HVZK only; the distributional indistinguishability statement is a separate result and not in this PR.
On top of the sigma protocol there's `Schnorr.Signature.{keyGen, sign, verify, correct}` wrapping it as a Fiat-Shamir signature scheme; `Schnorr.Signature.correct` is a one-line corollary of `Schnorr.correct`.
Two auxiliary lemmas, `Schnorr.gpow_sub` and `Schnorr.gpow_mul`, bridge `ZMod q` arithmetic and group exponentiation under `Fintype.card G = q`. They're local to this file for now because the surrounding `gpow` API is itself cryptography-specific; if a general `ZMod q`-graded group action framework lands in mathlib later, both lemmas would become instances of it.
There's also a small `example` instantiating everything on `Multiplicative (ZMod q)` for `Fact q.Prime` to show the API typechecks. That instantiation is a toy (DLOG is trivial in that group), but it confirms the abstraction is usable.
**AI disclosure**: this PR was a collaboration between myself, Grey Haven's autocontext and Claude Opus 4.7 (Anthropic). I read each line and built locally on current master. (strawberry has three r's) |
new-contributor
LLM-generated
|
352/0 |
Mathlib.lean,Mathlib/Cryptography/Sigma/Schnorr.lean |
2 |
2 |
['github-actions'] |
nobody |
102-32963 3 months ago |
102-33042 102 days ago |
102-33520 102 days |
| 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 |
97-844 3 months ago |
222-17952 222 days ago |
222-17940 222 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 |
93-845 3 months ago |
179-26700 179 days ago |
181-60974 181 days |
| 39449 |
Paul-Lez author:Paul-Lez |
doc: add library note about scoping simp lemmas with weak keys |
In PR #39262 I noticed that some `simp` lemmas were scoped for a reason that is not immediately obvious, so I figured that adding a library note would be nice in case anyone else runs into this in the future (this pattern is quite common in Mathlib!)
In case it's helpful for review, here are links to a few of the PRs that added this scoping initially:
- #14233
- #15620
- #15631
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
71/4 |
Mathlib.lean,Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/CharP/Two.lean,Mathlib/Algebra/GradedMonoid.lean,Mathlib/Algebra/Ring/BooleanRing.lean,Mathlib/Algebra/Ring/CharZero.lean,Mathlib/Tactic.lean,Mathlib/Tactic/SimpLibraryNote.lean |
8 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
79-85404 2 months ago |
79-85404 79 days ago |
93-6744 93 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 |
77-53230 2 months ago |
77-54063 77 days ago |
77-54423 77 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 |
75-63634 2 months ago |
79-15478 79 days ago |
79-15466 79 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 |
73-10158 2 months ago |
73-11594 73 days ago |
73-12115 73 days |
| 38225 |
kim-em author:kim-em |
ci: block merging PRs with large import increases unless reviewed |
This PR makes the existing `large-import` label into a merge gate. PRs that significantly increase transitive imports (>2% for any modified file) are now blocked from merging until a reviewer adds the `allow-large-import` label.
### Why three labels?
Bors's `block_labels` has no conditional logic — if a label is in the list, merge is blocked unconditionally. We need "blocked unless a reviewer has approved", i.e. `large-import ∧ ¬allow-large-import`. Since bors can't express that, we use a derived label:
| Label | Managed by | Purpose |
|---|---|---|
| `large-import` | `build` job (import analysis) | Factual: this PR increases imports |
| `blocked-by-large-import` | `check-large-import` job | Operational: blocks bors |
| `allow-large-import` | Reviewer | Override: reviewer approves the increase |
Each label is managed by exactly one actor, so there is no label-fighting.
### How it works
1. The existing `build` job adds/removes `large-import` based on import analysis (unchanged).
2. A new `check-large-import` job (in the same workflow) waits for `build` to finish, then:
- If `large-import` is present and `allow-large-import` is absent → adds `blocked-by-large-import`
- Otherwise → removes `blocked-by-large-import`
3. `blocked-by-large-import` is added to `block_labels` in `bors.toml`.
When a reviewer adds `allow-large-import`, the `labeled` event re-triggers the workflow. The heavy `build` job is skipped (guarded by `github.event.action != 'labeled'`), but the lightweight `check-large-import` job runs, sees both labels, and removes `blocked-by-large-import`. Bors can now merge.
### Reviewer workflow
The CI failure message tells the reviewer to consider whether the PR could be improved by splitting files, rearranging material, or creating new intermediate files. If the import increase is reasonable, they add `allow-large-import`.
False positives can be reported on the [mathlib4 Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/large-import.20label).
🤖 Prepared with Claude Code |
CI |
78/2 |
.github/workflows/PR_summary.yml,bors.toml |
2 |
7 |
['SnirBroshi', 'github-actions', 'jcommelin', 'joneugster', 'kim-em'] |
nobody |
73-845 2 months ago |
125-5595 125 days ago |
125-6201 125 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 |
69-74102 2 months ago |
69-77563 69 days ago |
69-77551 69 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'] |
nobody |
69-49726 2 months ago |
69-50599 69 days ago |
70-12320 70 days |
| 40639 |
metakunt author:metakunt |
feat(Combinatorics/MixedGraph): adds mixed graphs and some example API |
This PR is intended to gather some feedback. I'd like to introduce mixed graphs into mathlib as a generalisation of the graph api.
I didn't know whether to change the API of the graphs so I experimented a bit and ported some results as a proof of concept.
Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Mixed.20multigraphs/with/602794133
|
t-combinatorics |
186/0 |
Mathlib.lean,Mathlib/Combinatorics/Mixedgraph/Basic.lean |
2 |
2 |
['github-actions'] |
nobody |
69-32666 2 months ago |
69-33529 69 days ago |
69-34000 69 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 |
67-200 2 months ago |
67-2250 67 days ago |
75-33886 75 days |
| 37183 |
dagurtomas author:dagurtomas |
feat(Tactic/CategoryTheory): map attribute |
Adding `@[map]` to a lemma named `H` of shape `∀ .., f = g`, where `f` and `g` are morphisms
in some category `C`, creates a new lemma named `H_map` of the form
`∀ .. {D} (func : C ⥤ D), F.map f = F.map g` and then applies
`simp only [Functor.map_comp, Functor.map_id]`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
LLM-generated
t-meta
t-category-theory
|
301/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/MapSimp.lean |
5 |
13 |
['adamtopaz', 'dagurtomas', 'github-actions', 'joelriou'] |
nobody |
66-838 2 months ago |
87-68874 87 days ago |
150-32841 150 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 |
63-15955 2 months ago |
63-17678 63 days ago |
63-21693 63 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 |
62-845 2 months ago |
107-31648 107 days ago |
158-30052 158 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 |
57-72415 1 month ago |
61-22241 61 days ago |
61-22314 61 days |
| 39747 |
vihdzp author:vihdzp |
feat: intervals `Ici`/`Ioi` are cofinal/closed under directed suprema |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
67/11 |
Mathlib/Order/Cofinal.lean,Mathlib/Order/DirSupClosed.lean,Mathlib/Order/Interval/Set/Basic.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Topology/Order/ScottTopology.lean |
5 |
16 |
['YaelDillies', 'b-mehta', 'github-actions', 'vihdzp'] |
nobody |
57-39303 1 month ago |
91-35844 91 days ago |
92-13802 92 days |
| 39783 |
SnirBroshi author:SnirBroshi |
feat(Order/Interval/Finset): `Set.ncard` lemmas for `LocallyFiniteOrder` |
Followup to #39414 which untagged `Fintype.card_I??` as `@[simp]`.
Adds `Cardinal.mk`/`Set.encard`/`Set.ncard` lemmas for the 8 interval sets `Set.I??` (= 24 lemmas),
that convert them to `Finset.card` over the corresponding `Finset.I??` from a `LocallyFiniteOrder` instance.
---
`simp`? I think it's a bit strange since the `LocallyFiniteOrder` instance could have crazy definitions for the finset intervals which aren't "simpler", though the instances we currently have are simple.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
115/0 |
Mathlib.lean,Mathlib/Order/Interval/Finset/Card.lean |
2 |
1 |
['github-actions'] |
nobody |
57-39233 1 month ago |
91-31742 91 days ago |
91-32029 91 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 |
57-10143 1 month ago |
72-12753 72 days ago |
72-13027 72 days |
| 41134 |
martinwintermath author:martinwintermath |
feat(Algebra/Order/Nonneg): add `Nonneg` for nonnegative subtype |
Currently the nonnegative subtype is denoted `{x : R // 0 ≤ x}` which has a tendency to be used inconsistently and does not print well. This PR introduces
```lean4
/- The subtype of nonnegative elements. -/
abbrev Nonneg (α : Type*) [Zero α] [LE α] := { x : α // 0 ≤ x }
```
and replaces `{x : R // 0 ≤ x}` by `Nonneg R` throughout 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/)
|
|
114/110 |
Mathlib/Algebra/Order/Archimedean/Basic.lean,Mathlib/Algebra/Order/Module/Defs.lean,Mathlib/Algebra/Order/Nonneg/Basic.lean,Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Algebra/Order/Nonneg/Floor.lean,Mathlib/Algebra/Order/Nonneg/Module.lean,Mathlib/Algebra/Order/Nonneg/Ring.lean,Mathlib/Analysis/Convex/Cone/Basic.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Geometry/Convex/Cone/Dual.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/Topology/Algebra/Field.lean,Mathlib/Topology/Algebra/Order/Module.lean |
17 |
3 |
['SnirBroshi', 'github-actions', 'martinwintermath'] |
nobody |
56-6711 1 month ago |
56-9122 56 days ago |
56-11346 56 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 |
54-83135 1 month ago |
65-16291 65 days ago |
65-16624 65 days |
| 41188 |
Scarlett-le author:Scarlett-le |
feat(Geometry/Euclidean): obtuse and right angle criteria from inner product sign |
This PR adds criteria characterising when an unoriented angle is at least, or
strictly greater than, `π / 2`, in terms of the sign of an inner product or a
comparison of squared distances. They are the obtuse/right-angle counterparts of
the existing equality results `InnerProductGeometry.inner_eq_zero_iff_angle_eq_pi_div_two`
and the if-and-only-if Pythagorean theorem
`EuclideanGeometry.dist_sq_eq_dist_sq_add_dist_sq_iff_angle_eq_pi_div_two`.
### New lemmas
`Mathlib/Analysis/SpecialFunctions/Trigonometric/Inverse.lean`
- `Real.pi_div_two_le_arccos : π / 2 ≤ arccos x ↔ x ≤ 0`
- `Real.pi_div_two_lt_arccos : π / 2 < arccos x ↔ x < 0`
Duals of the existing `Real.arccos_le_pi_div_two` / `Real.arccos_lt_pi_div_two`,
both `@[simp]`.
`Mathlib/Geometry/Euclidean/Angle/Unoriented/Basic.lean`
- `InnerProductGeometry.inner_nonpos_iff_pi_div_two_le_angle`
- `InnerProductGeometry.inner_neg_iff_pi_div_two_lt_angle`
`Mathlib/Geometry/Euclidean/Angle/Unoriented/RightAngle.lean`
- `EuclideanGeometry.dist_sq_add_dist_sq_le_dist_sq_iff_pi_div_two_le_angle` |
|
41/0 |
Mathlib/Analysis/SpecialFunctions/Trigonometric/Inverse.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Basic.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/RightAngle.lean |
3 |
1 |
['github-actions'] |
nobody |
54-54349 1 month ago |
54-56195 54 days ago |
54-56183 54 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 |
54-3376 1 month ago |
54-4565 54 days ago |
54-4553 54 days |
| 38292 |
kim-em author:kim-em |
feat(AlgebraicTopology): universal cover construction |
This PR constructs the universal cover of a path-connected, locally path-connected, semilocally simply connected space `X` as the based-path space modulo endpoint-preserving homotopy, topologised by coinduction from the compact-open based-path space.
Split across five files:
* `Topology/Homotopy/TubeNeighborhood.lean` — class-free machinery: `IsPathHomotopyTrivial`, tube neighborhoods in path space, their openness in the compact-open topology, and the ladder-homotopy pasting argument showing any two paths in a common tube are homotopic.
* `AlgebraicTopology/FundamentalGroupoid/SemilocallySimplyConnected.lean` — `SemilocallySimplyConnectedAt/On/Space`, defined via the classical based condition (trivial `π₁(U, x) → π₁(X, x)`), with the unbased upgrade on locally path-connected spaces, and discreteness of `Path.Homotopic.Quotient`.
* `AlgebraicTopology/FundamentalGroupoid/BasedPath.lean` — the based-path space (with `FunLike`/`ContinuousEval` instances) and the path-component machinery of `endpoint ⁻¹' U`.
* `AlgebraicTopology/FundamentalGroupoid/UniversalCover/Basic.lean` — quotient topology, `proj`, and the sheet decomposition.
* `AlgebraicTopology/FundamentalGroupoid/UniversalCover/Covering.lean` and `Action.lean` — `isCoveringMap`, `pathConnectedSpace`, `simplyConnectedSpace`, the universal lifting property, and the free, properly discontinuous `π₁(X, x₀)`-action making `proj` a quotient covering map.
I want to note this takes a different approach than Hatcher et al, which build the universal cover as the path space, but with a "custom" topology. It is then a theorem (often not proved in textbooks) that with the usual hypotheses this topology coincides with the one coinduced from the compact-open topology. I decided that "the mathlib way" was just to start with the "natural" topology, and not take this shortcut.
🤖 Prepared with Claude Code and Codex.
|
|
2831/35 |
Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/BasedPath.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/FundamentalGroup.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SemilocallySimplyConnected.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/UniversalCover/Action.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/UniversalCover/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/UniversalCover/Covering.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Homotopy/Path.lean,Mathlib/Topology/Homotopy/TubeNeighborhood.lean,Mathlib/Topology/Path.lean,Mathlib/Topology/Subpath.lean,Mathlib/Topology/UnitInterval.lean |
14 |
50 |
['github-actions', 'kim-em', 'mathlib-merge-conflicts'] |
nobody |
53-79587 1 month ago |
53-80952 53 days ago |
53-80940 53 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 |
53-35305 1 month ago |
53-35851 53 days ago |
57-38293 57 days |
| 38432 |
SnirBroshi author:SnirBroshi |
feat(Logic/Relation): `Map r f g ≤ s ↔ r ≤ s.bicompl f g` |
and the dual `s ≤ Relation.Map r f g ↔ s.bicompl f g ≤ r` which requires `f` and `g` to be bijective.
Adds `Galois{Connection/Insertion/Coinsertion}` for the dual.
The theorems are specialized to `onFun` instead of `bicompl` for when `f = g`.
A `GaloisConnection` for the iff in the title requires `f`/`g` to be bijective, but then we can get an `OrderIso` which is stronger (see #38499).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic |
126/28 |
Mathlib/Logic/Relation.lean,Mathlib/Order/GaloisConnection/Basic.lean |
2 |
5 |
['SnirBroshi', 'github-actions', 'plp127'] |
nobody |
53-32391 1 month ago |
53-35433 53 days ago |
121-53071 121 days |
| 40193 |
BoltonBailey author:BoltonBailey |
chore(1000.yaml): add entries |
This PR adds data on a number of previously missing entries to 1000.yaml that were found during the course of Project Numina's preparation of LeanTriathlon.
These include:
- `comment`s with references to formalized statements of theorems (mostly from the formal-conjectures repo) in cases where they exist, (it seems that, while we can add unproven statements and statements from other repos, we can't really include unproven statements from other repos using the system as it currently exists)
- `comment`s about related definitions to certain theorems in mathlib.
- `url` references to a few complete formalizations in a variety of other repositories.
- `decl` for the preexisting `prime_ideal_of_disjoint_filter_ideal` theorem in Mathlib, which as far as I can tell is just a more general version of the Boolean Prime Ideal theorem.
AI was used in large scale scans to identify these missing entries, but I have done my best to check manually that the statements are correct.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
17/2 |
docs/1000.yaml |
1 |
9 |
['BoltonBailey', 'github-actions', 'mathlib-merge-conflicts', 'wwylele'] |
nobody |
52-81001 1 month ago |
52-81502 52 days ago |
80-7593 80 days |
| 41297 |
plp127 author:plp127 |
feat: cardinality of `Ultrafilter` |
We prove there are `2 ^ 2 ^ #α` ultrafilters on an infinite type `α`. For completeness, we also provide the cardinality lemma when `α` is finite.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order
t-set-theory
|
142/0 |
Mathlib.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Ultrafilter/Basic.lean,Mathlib/Order/Filter/Ultrafilter/Cardinality.lean |
4 |
1 |
['github-actions'] |
nobody |
52-19807 1 month ago |
52-40865 52 days ago |
52-40853 52 days |
| 41241 |
intgrah author:intgrah |
feat(Order/Category): cartesian closed and distributive structure on PartOrd and Preord |
Give `PartOrd` and `Preord` `CartesianMonoidalCategory`, `MonoidalClosed`, and `IsCartesianDistributive` instances.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
|
272/0 |
Mathlib.lean,Mathlib/Order/Category/PartOrd/CartesianClosed.lean,Mathlib/Order/Category/PartOrd/Distributive.lean,Mathlib/Order/Category/Preord/CartesianClosed.lean,Mathlib/Order/Category/Preord/Distributive.lean |
5 |
5 |
['github-actions', 'intgrah'] |
nobody |
52-18174 1 month ago |
53-42752 53 days ago |
53-42740 53 days |
| 38587 |
dagurtomas author:dagurtomas |
feat(Tactic/CategoryTheory): concrete category boilerplate |
Adds `mk_concrete_category`, a command for generating the initial boilerplate for concrete categories whose morphisms are given by a bundled function type.
The command creates the wrapper `Hom` type, named category and concrete category instances, `ofHom`, `Hom.hom`, and the basic dsimp lemmas.
It handles parameterized categories such as `ModuleCat`, and has a paired additive/multiplicative form for generating both structures at once (e.g. `MonCat`/`AddMonCat`).
Includes test categories checking the generated declarations.
[](https://gitpod.io/from-referrer/)
|
LLM-generated
t-meta
t-category-theory
|
905/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/MkConcreteCategory.lean,MathlibTest/CategoryTheory/MkConcreteCategory.lean |
4 |
8 |
['dagurtomas', 'eric-wieser', 'github-actions'] |
nobody |
52-798 1 month ago |
108-76792 108 days ago |
108-77541 108 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 |
51-61755 1 month ago |
53-19584 53 days ago |
53-20123 53 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 |
51-34449 1 month ago |
51-35813 51 days ago |
51-35801 51 days |
| 41305 |
martinwintermath author:martinwintermath |
feat(Geometry/Convex/ConvexSpace): consistency adjustments for convexity on module and affine space |
This PR makes a few consistency adjustments to improve the use of `ConvexSpace` with modules and affine spaces.
- make `IsModuleConvexSpace.ofModule` into an instance
- deprecate `isModuleConvexSpace_self` since now derived from `IsModuleConvexSpace.ofModule`
- rename `ConvexSpace.ofAddTorsor := AddTorsor.toConvexSpace`
- add class `IsAffineConvexSpace` and instance `IsAffineConvexSpace.ofAddTorsor`
- add instance deriving `IsAffineConvexSpace R V V` from `IsModuleConvexSpace R V`
With this PR, to use the standard convexity on an affine space we do no longer need the (usually too agressiv)
```lean4
attribute [local instance] AddTorsor.toConvexSpace
```
but the more general
```lean4
variable [ConvexSpace R P] [IsAffineConvexSpace R V P]
```
which now works analogously to convexity on modules. See the fixed instance `IsConvexDist` for metric spaces.
Zulip: [#PR reviews > Convexity refactor](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/Convexity.20refactor/with/607934406)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
49/16 |
Mathlib/Analysis/Convex/MetricSpace.lean,Mathlib/Geometry/Convex/ConvexSpace/AffineSpace.lean,Mathlib/Geometry/Convex/ConvexSpace/Module.lean |
3 |
1 |
['github-actions'] |
nobody |
51-29768 1 month ago |
52-8579 52 days ago |
52-12971 52 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 |
50-85463 1 month ago |
51-1318 51 days ago |
51-1306 51 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 |
133/0 |
Mathlib.lean,Mathlib/Topology/Sheaves/KSheaf.lean |
2 |
9 |
['github-actions', 'joelriou', 'mathlib-dependent-issues', 'ymonbru'] |
nobody |
50-61962 1 month ago |
50-61962 50 days ago |
50-72685 50 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 |
50-57031 1 month ago |
50-57620 50 days ago |
50-57608 50 days |
| 41111 |
erdkocak author:erdkocak |
feat(ModelTheory): add cardinal-generated substructure API |
This is the first PR in a sequence splitting #40561.
It adds a `CardinalLTGenerated` predicate for substructures, basic closure and map lemmas, and the finitely generated specialization.
Co-authored-by: Yağız Kaan Aydoğdu <y.kaan.aydogdu@gmail.com>
Co-authored-by: Yusuf Demir <yusufdemir12610@gmail.com>
Advised-by: Ayhan Günaydın <ayhan.gunaydin@bogazici.edu.tr>
Advised-by: Metin Ersin Arıcan <metin.arican@bogazici.edu.tr>
Please note that we utilized agentic AI tools (Claude Opus, ChatGPT Codex) during the development of this PR. Most of the proofs of the major theorems are direct translations from human-language source material (see the diff in `references.bib`) into Lean proofs using the mentioned AI tools. However, all design and formalization decisions were made by us. |
t-logic
new-contributor
LLM-generated
|
51/0 |
Mathlib/ModelTheory/FinitelyGenerated.lean,Mathlib/ModelTheory/Substructures.lean |
2 |
9 |
['NoahW314', 'erdkocak', 'felixpernegger', 'github-actions'] |
nobody |
50-56176 1 month ago |
50-56983 50 days ago |
56-54660 56 days |
| 39864 |
8e7 author:8e7 |
feat(Combinatorics/SimpleGraph/Acyclic): helly property on subtrees |
This PR adds several lemmas regarding connected subsets of vertices in trees (subtrees). The main result is the Helly property for subtrees: For a finite set of subtrees, if any pair of subtrees intersect, then there is a common vertex in all subtrees.
This lemma is part of an effort to formalize tree decompositions (see #38334), and will be used in a future PR to prove `G.cliqueNum - 1 <= G.treeWidth`.
AI Usage: The proofs were developed with the help of Claude Code. I vouch for all the code written and understand the content fully.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
LLM-generated
|
114/0 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean |
2 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
49-77197 1 month ago |
49-77752 49 days ago |
68-5513 68 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 |
48-15809 1 month ago |
48-17476 48 days ago |
48-18911 48 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 |
47-63152 1 month ago |
49-4245 49 days ago |
49-4233 49 days |
| 40303 |
MichaelStollBayreuth author:MichaelStollBayreuth |
feat(AlgebraicGeometry/EllipticCurve/Affine): more on `xRep` |
This PR adds explicit formulas for `xRep` of a sum of two (affine) points on a Weierstrass curve.
This will be needed on the way to the Mordell-Weil Theorem for elliptic curves.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
116/0 |
Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean |
2 |
17 |
['MichaelStollBayreuth', 'Multramate', 'github-actions'] |
Multramate and mattrobball assignee:Multramate assignee:mattrobball |
47-46160 1 month ago |
57-20325 57 days ago |
78-18959 78 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 |
47-16514 1 month ago |
47-18404 47 days ago |
47-18392 47 days |
| 41218 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Star): the star graph is the only triangle-free graph with a universal vertex |
- `starGraph r |>.CliqueFree 3`
- `G.IsUniversal v → G.CliqueFree 3 → G = starGraph v`
- `G.IsUniversal v → (G.IsAcyclic ↔ G.CliqueFree 3)`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
29/4 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Star.lean |
2 |
3 |
['github-actions', 'vlad902'] |
nobody |
46-74819 1 month ago |
53-33851 53 days ago |
54-3144 54 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 |
46-43415 1 month ago |
51-61760 51 days ago |
51-61790 51 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 |
46-33667 1 month ago |
46-33667 46 days ago |
62-75932 62 days |
| 41399 |
vlad902 author:vlad902 |
feat(MvPolynomial): ideal generated by variables is prime over a domain |
---
AI: Used Claude to help search for lemmas and golf, no AI code made it into the final PR.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
38/5 |
Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/RingTheory/MvPolynomial/Ideal.lean |
2 |
1 |
['github-actions'] |
nobody |
45-58850 1 month ago |
48-58744 48 days ago |
48-60143 48 days |
| 36815 |
EtienneC30 author:EtienneC30 |
feat: a measurable space structure on the type of continuous maps |
Endow the type `C(X, Y)` of continuous maps from `X` to `Y` with the Borel sigma-algebra coming from the compact-open topology and show that, under some assumptions on `X` and `Y`, this is equal to the restriction of the product sigma-algebra over `X → Y`.
Provide a measurable equivalence between `{f : X → Y // Continuous f}` and `C(X, Y)`.
Co-authored-by: @RemyDegenne
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
brownian
t-measure-probability
|
256/0 |
Mathlib.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/ContinuousMap.lean,Mathlib/Topology/Bases.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/Separation/Regular.lean |
6 |
27 |
['ADedecker', 'EtienneC30', 'felixpernegger', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
45-54874 1 month ago |
110-60088 110 days ago |
150-55426 150 days |
| 41135 |
martinwintermath author:martinwintermath |
feat(Algebra/Order/Nonneg): generalize Nonneg/Field.lean to `DivisionSemiring` |
Generalizes the content of Nonneg/Field.lean from `Semifield` to `DivisionSemiring`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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/5 |
Mathlib/Algebra/Order/Nonneg/Field.lean |
1 |
5 |
['github-actions', 'leanprover-radar', 'themathqueen'] |
nobody |
45-29349 1 month ago |
56-8067 56 days ago |
56-8055 56 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 |
45-27998 1 month ago |
45-30441 45 days ago |
45-38206 45 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 |
45-24794 1 month ago |
45-25527 45 days ago |
45-25515 45 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 |
44-45097 1 month ago |
44-45965 44 days ago |
46-46062 46 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 |
42-80180 1 month ago |
42-80749 42 days ago |
42-80737 42 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 |
1 |
['github-actions'] |
nobody |
42-69952 1 month ago |
42-70604 42 days ago |
42-70592 42 days |
| 41613 |
WenrongZou author:WenrongZou |
feat(ModularForm): add eisensteinSeries G_k^v |
This PR add the Eisenstein series $G_k^{\bar{v}}$, and prove it as a sum of Eisenstein series $E_k^{\bar{v}}$.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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 |
179/0 |
Mathlib/Data/ZMod/Basic.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/Basic.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/Defs.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/IsBoundedAtImInfty.lean |
4 |
2 |
['github-actions', 'mathlib-bors'] |
nobody |
42-60400 1 month ago |
42-60400 42 days ago |
42-63609 42 days |
| 40692 |
pechersky author:pechersky |
feat(GroupTheory/Finite): torsion free and FG WithOne M is when M is |
Couldn't find a better place for these
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
- [ ] depends on #40690 |
t-group-theory |
62/3 |
Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Nat/Hom.lean,Mathlib/Algebra/Group/WithOne/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Finite.lean |
4 |
2 |
['github-actions'] |
nobody |
41-20386 1 month ago |
41-23869 41 days ago |
41-28543 41 days |
| 41636 |
adomani author:adomani |
chore: add missing `to_additive` docstrings in Algebra/Group actions and homs |
Adds the missing additive doc-strings (multiplicative side has a hand-written doc-string, additive side did not) across 7 file(s) in **Algebra/Group actions and homs**.
The additive doc-strings are simple-minded translations of the multiplicative ones, with referenced lemma names replaced by their `to_additive` counterparts. These gaps were found by an environment linter that pairs each declaration with its `to_additive` counterpart and checks that both or neither is documented.
🤖 Generated with [Claude Code](https://claude.com/claude-code) |
LLM-generated
t-algebra
label:t-algebra$ |
60/21 |
Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/Faithful.lean,Mathlib/Algebra/Group/Action/Hom.lean,Mathlib/Algebra/Group/Action/Units.lean,Mathlib/Algebra/Group/Equiv/Defs.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/Group/Units/Hom.lean |
7 |
14 |
['JovanGerb', 'adomani', 'artie2000', 'github-actions'] |
nobody |
41-11343 1 month ago |
41-50588 41 days ago |
42-50442 42 days |
| 41713 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Finite): the `Fintype` instance for `incidenceSet` doesn't need `DecidableEq` |
Now it only requires `Fintype (G.neighborSet v)`.
This caused `incidenceFinset` and theorems about it to complain that `DecidableEq` is unused, so I changed `incidenceFinset` to require `Fintype (G.incidenceSet v)` and fixed the theorems. Theorems that require a finite `neighborSet` can avoid this.
---
The theorem below it also doesn't need `DecidableEq` anymore.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
15/10 |
Mathlib/Combinatorics/SimpleGraph/Finite.lean |
1 |
1 |
['github-actions'] |
nobody |
40-81356 1 month ago |
40-81930 40 days ago |
40-82453 40 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 |
40-76807 1 month ago |
40-77375 40 days ago |
41-81653 41 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 |
40-64151 1 month ago |
45-64878 45 days ago |
47-83325 47 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 |
40-62720 1 month ago |
40-63326 40 days ago |
40-63314 40 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
|
205/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 |
40-48439 1 month ago |
51-41332 51 days ago |
51-50399 51 days |
| 41709 |
metakunt author:metakunt |
feat(Data/Multiset): change definition of Multiset.Pairwise |
Currently the definition of Multiset.Pairwise seems not right to me. For my project I need to get a decidable instance for a Finset.Pairwise, but the current definition doesn't seem correct and it can't even give me a decidable instance of Pairwise. |
t-data
large-import
|
71/60 |
Mathlib/Data/Finsupp/BigOperators.lean,Mathlib/Data/Fintype/List.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Multiset/Pairwise.lean,Mathlib/Data/Multiset/Replicate.lean,Mathlib/Data/Multiset/ZeroCons.lean,Mathlib/Logic/Relation.lean |
8 |
13 |
['SnirBroshi', 'github-actions', 'metakunt'] |
nobody |
40-40765 1 month ago |
40-40765 40 days ago |
40-40764 40 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'] |
nobody |
40-37222 1 month ago |
40-37798 40 days ago |
40-37786 40 days |
| 41524 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Trails): in a preconnected Eulerian graph there exists an Eulerian circuit from any vertex |
This lets us take a circuit at a specific vertex, much like [`IsHamiltonian.exists_isHamiltonianCycle`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Combinatorics/SimpleGraph/Hamiltonian.html#SimpleGraph.IsHamiltonian.exists_isHamiltonianCycle) in Hamiltonian graphs.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
23/1 |
Mathlib/Combinatorics/SimpleGraph/Trails.lean |
1 |
4 |
['SnirBroshi', 'github-actions', 'vlad902'] |
nobody |
40-1019 1 month ago |
45-73427 45 days ago |
45-73415 45 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 |
39-31555 1 month ago |
39-34155 39 days ago |
39-34159 39 days |
| 41403 |
YaelDillies author:YaelDillies |
chore(Algebra/SkewMonoidAlgebra): deprecate `sum` |
One should just use `Finsupp.sum` instead.
---
- [x] depends on: #41365
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
125/154 |
Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean,Mathlib/Algebra/SkewMonoidAlgebra/Lift.lean,Mathlib/Algebra/SkewMonoidAlgebra/Support.lean,Mathlib/Algebra/SkewPolynomial/Basic.lean |
4 |
15 |
['YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-dependent-issues'] |
nobody |
39-22601 1 month ago |
46-47864 46 days ago |
46-51454 46 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 |
39-17074 1 month ago |
39-17651 39 days ago |
39-17639 39 days |
| 38815 |
dagurtomas author:dagurtomas |
feat(Tactic/CategoryTheory): extend `@[to_app]` to natural transformations |
This extends the `@[to_app]` attribute so it also generates componentwise lemmas from equalities of natural transformations between functors, while preserving the existing bicategory behavior. It also ensures generated component lemmas remain usable by dsimp when they are definitionally true. |
t-category-theory
LLM-generated
t-meta
|
148/22 |
Mathlib/Tactic/CategoryTheory/ToApp.lean,Mathlib/Util/AddRelatedDecl.lean,MathlibTest/CategoryTheory/ToApp.lean |
3 |
1 |
['github-actions'] |
nobody |
39-845 1 month ago |
114-26345 114 days ago |
114-26387 114 days |
| 37680 |
IvanRenison author:IvanRenison |
feat(Combinatorics/SimpleGraph/Clique): add lemmas about isomorphisms and cliques |
---
Idea from this Zulip thread: [#**graph theory>Second Order Monadic Logic for Graph** ](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Second.20Order.20Monadic.20Logic.20for.20Graph/with/583013775)
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #37649
- [x] depends on: #37640
- [x] depends on: #37676
- [x] depends on: #37697
- [x] depends on: #37700
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
86/0 |
Mathlib/Combinatorics/SimpleGraph/Clique.lean |
1 |
6 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
39-843 1 month ago |
77-41420 77 days ago |
77-41940 77 days |
| 39505 |
dannyhe652 author:dannyhe652 |
feat(SimpleGraph): add Vizing's theorem for edge coloring |
Hi! I'm a high school student interested in formulization of mathematics in Lean. Recently, I have worked on a project to formulize Vizing Theorem with Daniel Raggi from Cambridge University with AI assistance. In particular, we first drafted an outline for the proof, and built the proof using Claude Opus 4.5 and 4.6. The proof is optimized using Aristotle and finally reviewed by ourselves. We rewrote some parts of the code and some comments. The code now builds cleanly and we wish this code to be reviewed by Lean Community. I am aware that there are previous attempts, some being successful, on formulizing Vizing Theorem, including this one by Arohee https://github.com/aroheebhoja/vizing. However, I believe that no PR have been made. Our proof is not based on his proof, but it could be helpful for the community to review that project as well. I sincerely thank everyone who has time to verify and review our code. A summary of the project is as follows. Please contact me if there are any questions or problems.
## Summary
This PR completes the proof of **Vizing's theorem** for edge coloring in simple graphs, proving that the chromatic index of any graph is either Δ (the maximum degree) or Δ + 1.
## Changes
### New files
- **`Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeColoring.lean`** — Core definitions
- `edgeColoring`: Type for line graph colorings
- `edgeColorable`: Graph is edge-colorable with n colors
- `chromaticIndex`: Chromatic index as ℕ
- **`Mathlib/Combinatorics/SimpleGraph/Coloring/KempeChain.lean`** — Kempe Chain
- Coloring observables: `incidentEdges`, `incidentColors`, `missingColors`
- Kempe subgraph structure with bounded degree
- `swapKempe`: Recolor edges in a connected component via color-swapping
- **`Mathlib/Combinatorics/SimpleGraph/Coloring/VizingFan.lean`** — Vizing Fan Rotation
- `IsFan`: Vizing fan structure with special color properties
- Fan maximality and dichotomy on terminal vertices
- `rotate_termA`: Extend coloring when a free color exists at both endpoints
- `vizingAdjacencyLemma`: Main adjacency lemma for both cases
- **`Mathlib/Combinatorics/SimpleGraph/Coloring/VizingTheorem.lean`** — Main theorems
- `edge_eq_of_color_eq`: Proper edge colorings assign different colors to distinct edges sharing a vertex
- `maxDegree_le_chromaticIndex`: χ'(G) ≥ Δ(G)
- `chromaticIndex_bot`: Empty graph has chromatic index 0
- `vizingUpperBound_aux`: Inductive proof of upper bound on number of edge
- `vizingTheorem`: χ'(G) ∈ {Δ(G), Δ(G) + 1}
### Modified files
- `Mathlib.lean` — Added imports for the four new coloring modules
## Technical Approach
**Lower bound** (χ'(G) ≥ Δ):
- Edges incident to a max-degree vertex form a clique in the line graph
- Clique number lower-bounds chromatic number
**Upper bound** (χ'(G) ≤ Δ + 1):
- Induction on the number of edges
- Base case: empty graph colored with 0 colors
- Inductive step:
- If a free color exists at both endpoints of an edge, then extend directly
- Otherwise:
- Build a maximal fan from one endpoint
- Apply dichotomy: either extend via Term-A (free color at both endpoints) or Term-B (Kempe swap)
- Term-B uses a three-vertex connectivity argument to derive a contradiction, forcing the fan to extend
## Key Lemmas
- `incidentEdges`, `incidentColors`, `missingColors`: Coloring observables at vertices
- `kempeSubgraph`: Restricted subgraph of edges with two specific colors
- `swapKempe`: Recolor via Kempe chain swapping
- `IsFan.singleton`: Trivial fan always valid
- `IsFan.length_le_card`: Fan length is bounded by vertex count
- `IsFan.dichotomy`: Maximal fan satisfies Term-A or Term-B
- `IsFan.rotate_termA`: Term-A case extends the coloring inductively
- `vizingAdjacencyLemma`: Handles both cases for extending one edge
- `vizingUpperBound_aux`: Framework for full inductive proof
- `edge_eq_of_color_eq`: Distinctness of edges with same color
## Testing
All four modules compile with no `sorry` nor errors or warnings.
## References
* V. G. Vizing, *On an estimate of the chromatic class of a p-graph*,
Diskret. Analiz. 3 (1964), 25–30.
## 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
|
1913/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeColoring.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/KempeChain.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VizingFan.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VizingTheorem.lean |
5 |
4 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
39-841 1 month ago |
65-62502 65 days ago |
86-38343 86 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 |
38-84966 1 month ago |
38-85487 38 days ago |
46-68436 46 days |
| 41447 |
SnirBroshi author:SnirBroshi |
chore(Combinatorics/SimpleGraph/Trails): golf and cleanup |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
45/77 |
Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean |
2 |
1 |
['github-actions'] |
nobody |
38-77208 1 month ago |
47-32658 47 days ago |
47-32646 47 days |
| 41623 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Trails): a walk is Eulerian iff it is a trail of length `G.edgeSet.encard` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
large-import
|
42/7 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean |
2 |
1 |
['github-actions'] |
nobody |
38-77002 1 month ago |
43-28536 43 days ago |
43-28524 43 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 |
38-39276 1 month ago |
63-36284 63 days ago |
200-40020 200 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 |
38-33179 1 month ago |
38-38582 38 days ago |
38-38570 38 days |
| 41732 |
vaca22 author:vaca22 |
feat(RingTheory/ClassGroup): add mulEquiv_mk0 |
Add a simp lemma describing how the class-group equivalence induced by a ring equivalence acts on the class of a nonzero ideal.
The image is the class of the ideal mapped along the ring equivalence. The proof compares the corresponding fractional ideals through the existing class-group equivalence and localization membership API.
**AI disclosure**: this PR is primarily LLM-generated (Claude Code).
|
t-ring-theory
new-contributor
LLM-generated
|
43/0 |
Mathlib/RingTheory/ClassGroup/Basic.lean |
1 |
3 |
['github-actions', 'vaca22'] |
nobody |
38-28267 1 month ago |
40-43541 40 days ago |
40-43529 40 days |
| 41830 |
Jun2M author:Jun2M |
feat(Data/PFun): add lemmas for ran, restrict, map, image and preimage |
Add missing simp / API lemmas for partial functions, and strengthen `preimage_inter`
from a subset inclusion to an equality. Also tag a few `Part` uniqueness lemmas
for `grind`.
- `Part`: `grind` attributes on `get_mem`, `mem_unique`, `mem_right_unique`
- `ran`: `ran_coe`, `ran_eq_empty_iff_dom_eq_empty`
- `restrict`: `dom_restrict`, `restrict_restrict`, `ran_restrict`, `preimage_restrict`
- `map`: `dom_map`, `mem_map`, `ran_map`, `image_map`, `preimage_map`
- `image` / `preimage`: `image_subset_ran`, `preimage_empty`,
`disjoint_preimage_of_disjoint`, plus `simp`/`gcongr` attributes
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
86/3 |
Mathlib/Data/PFun.lean,Mathlib/Data/Part.lean |
2 |
2 |
['github-actions'] |
nobody |
38-17397 1 month ago |
38-22083 38 days ago |
38-22071 38 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 |
38-15778 1 month ago |
38-15833 38 days ago |
38-15822 38 days |
| 41729 |
vaca22 author:vaca22 |
feat(RingTheory/DedekindDomain): add divisor group core |
Add the formal divisor group of a Dedekind domain and bundle the existing factorization API as an additive equivalence between nonzero fractional ideals and divisors.
Divisors are finitely supported integer-valued functions on height-one primes. divisor records FractionalIdeal.count, ofDivisor reconstructs a fractional ideal from prime powers, and divisorEquiv proves these operations are inverse and send ideal multiplication to divisor addition.
------------
This is the core of the earlier larger proposal. Principal divisors and weighted degrees are deliberately left for later pull requests.
**AI disclosure**: this PR is primarily LLM-generated (Claude Code).
|
t-ring-theory
new-contributor
LLM-generated
|
100/0 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Divisor.lean |
2 |
4 |
['github-actions', 'grunweg', 'vaca22'] |
nobody |
38-11714 1 month ago |
38-11714 38 days ago |
40-8905 40 days |
| 41863 |
scholzhannah author:scholzhannah |
chore(Order/Filter/Extr): rename various lemmas |
Per the mathlib naming conventions
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
95/61 |
Mathlib/Analysis/Calculus/LocalExtr/LineDeriv.lean,Mathlib/Analysis/Complex/AbsMax.lean,Mathlib/Order/Filter/Extr.lean,Mathlib/Topology/Order/LocalExtr.lean,Mathlib/Topology/Order/Rolle.lean |
5 |
2 |
['github-actions'] |
nobody |
37-31209 1 month ago |
37-31256 37 days ago |
37-31252 37 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 |
6 |
['alreadydone', 'github-actions', 'plp127'] |
nobody |
37-19001 1 month ago |
37-19001 37 days ago |
40-42810 40 days |
| 40624 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Finite): `Set.ncard` of `neighborSet` |
Since #39414 the simpNF of the cardinality of `neighborSet` uses `Set.ncard` rather than `Fintype.card`, therefore we import `Set.ncard` into `SimpleGraph/Finite.lean` and show `(G.neighborSet v).ncard = G.degree v`.
Also includes some other results that benefit from the import/lemma:
- `(commonNeighbors ⊤ u v).encard = ENat.card V - 2`
- `(G.map f).degree (f v) = G.degree v` for an injective `f`
- `G'.degree (f v) = G.degree v` for `f : G ↪g G'`, given `G'.neighborSet (f v) ⊆ Set.range f`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
large-import
|
44/7 |
Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/IncMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
3 |
1 |
['github-actions'] |
nobody |
37-6094 1 month ago |
69-52398 69 days ago |
69-52386 69 days |
| 41611 |
SnirBroshi author:SnirBroshi |
chore(Data/Seq/Computation): golf using `grind` |
---
- `LiftRel.refl`: ? to 12ms
- `LiftRel.symm`: 10ms to 16ms
- `LiftRel.trans`: 13ms to 23ms
- `LiftRel.imp`: 11ms to 19ms
- `terminates_of_liftRel`: 14ms to 14ms
- `rel_of_liftRel`: 11ms to 15ms
- `liftRel_of_mem`: ? to 22ms
- `liftRel_def`: 20ms to 60ms
- `liftRel_bind`: 40ms to 55ms
- `liftRel_pure_left`: 15ms to 33ms
- `liftRel_think_left`: ? to 40ms
- `liftRel_congr`: ? to 35ms
- `LiftRelAux.ret_left`: 18ms to 18ms
(the question marks mean that `trace.profiler` doesn't output anything, maybe they're below 1ms?)
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
28/85 |
Mathlib/Data/Seq/Computation.lean |
1 |
5 |
['SnirBroshi', 'github-actions', 'grunweg', 'leanprover-radar'] |
nobody |
37-3608 1 month ago |
37-5159 37 days ago |
37-41751 37 days |
| 41649 |
xroblot author:xroblot |
feat(FieldTheory/IntermediateField): adjoining a shifted or scaled generator |
Add two lemmas about simple intermediate field extensions:
* `IntermediateField.adjoin_simple_add_algebraMap`: `F⟮x + algebraMap F E y⟯ = F⟮x⟯` for `y` in the base field `F`.
* `IntermediateField.adjoin_simple_mul_algebraMap`: `F⟮x * algebraMap F E y⟯ = F⟮x⟯` for `y` a nonzero element of `F`.
Translating the generator by a base-field element, or scaling it by a nonzero base-field element, leaves the simple extension unchanged.
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude. |
t-algebra label:t-algebra$ |
21/0 |
Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
36-81661 1 month ago |
42-44806 42 days ago |
42-44794 42 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 |
36-80831 1 month ago |
43-43932 43 days ago |
51-60902 51 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 |
36-38448 1 month ago |
36-38993 36 days ago |
36-41957 36 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 |
36-33617 1 month ago |
36-33673 36 days ago |
36-33661 36 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 |
36-33616 1 month ago |
36-33643 36 days ago |
36-33631 36 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 |
36-33120 1 month ago |
36-33120 36 days ago |
36-33108 36 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 |
36-31348 1 month ago |
36-32677 36 days ago |
47-63127 47 days |
| 41829 |
felixpernegger author:felixpernegger |
perf: explicitly specify free universes in `ModuleCat` |
Like #40964, but for `ModuleCat`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
197/193 |
Mathlib/Algebra/Category/AlgCat/Symmetric.lean,Mathlib/Algebra/Category/CoalgCat/Basic.lean,Mathlib/Algebra/Category/CoalgCat/ComonEquivalence.lean,Mathlib/Algebra/Category/CoalgCat/Monoidal.lean,Mathlib/Algebra/Category/FGModuleCat/Basic.lean,Mathlib/Algebra/Category/Grp/ZModuleEquivalence.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Differentials/Basic.lean,Mathlib/Algebra/Category/ModuleCat/FilteredColimits.lean,Mathlib/Algebra/Category/ModuleCat/Images.lean,Mathlib/Algebra/Category/ModuleCat/Kernels.lean,Mathlib/Algebra/Category/ModuleCat/Limits.lean,Mathlib/Algebra/Category/ModuleCat/Localization.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Adjunction.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Closed.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/ColimitFunctor.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/Algebra/Category/ModuleCat/Subobject.lean,Mathlib/Algebra/Homology/ShortComplex/ModuleCat.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/CategoryTheory/Abelian/Ext.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/ModuleEmbedding/GabrielPopescu.lean,Mathlib/CategoryTheory/Limits/ConcreteCategory/WithAlgebraicStructures.lean,Mathlib/CategoryTheory/Linear/Yoneda.lean,Mathlib/Condensed/Discrete/Module.lean,Mathlib/Condensed/Light/Explicit.lean,Mathlib/Condensed/Light/Small.lean,Mathlib/LinearAlgebra/QuadraticForm/QuadraticModuleCat.lean,Mathlib/LinearAlgebra/QuadraticForm/QuadraticModuleCat/Monoidal.lean,Mathlib/LinearAlgebra/QuadraticForm/QuadraticModuleCat/Symmetric.lean,Mathlib/RepresentationTheory/Coinvariants.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/Basic.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/Functoriality.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/LongExactSequence.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/Basic.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/Functoriality.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/LongExactSequence.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/LowDegree.lean,Mathlib/RepresentationTheory/Homological/Resolution.lean,Mathlib/RepresentationTheory/Homological/TateCohomology/Basic.lean,Mathlib/RepresentationTheory/Invariants.lean,Mathlib/RepresentationTheory/Rep/Basic.lean,Mathlib/RepresentationTheory/Rep/Iso.lean,Mathlib/RingTheory/Depth/Rees.lean,Mathlib/RingTheory/Flat/CategoryTheory.lean,Mathlib/RingTheory/Regular/Category.lean |
51 |
10 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-bors'] |
nobody |
36-22235 1 month ago |
38-15951 38 days ago |
38-16908 38 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 |
35-76158 1 month ago |
35-76715 35 days ago |
44-49910 44 days |
| 40941 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add stabilizers of vectors in representations |
Add Representation.stabilizer: the subgroup fixing a vector in a representation.
Provide basic lemmas for zero vectors, scalar multiples, sums, intertwining maps, and conjugations, as a first step toward smooth representations. Make representation-theoretic arguments use this specialized API instead of repeatedly unfolding the fixed-vector condition or routing through the more general MulAction stabilizer API. |
t-algebra
new-contributor
label:t-algebra$ |
68/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Stabilizer.lean |
2 |
70 |
['JX-Mo', 'Whysoserioushah', 'github-actions', 'tb65536'] |
nobody |
35-74694 1 month ago |
37-34212 37 days ago |
58-47245 58 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 |
35-72598 1 month ago |
35-81448 35 days ago |
35-82777 35 days |
| 41892 |
Ljon4ik4 author:Ljon4ik4 |
feat: mapOfCompatibleSMul is the same map independently of S |
The `mapOfCompatibleSMul : M ⊗[A] N →ₗ[S] M ⊗[R] N` is the same map independently of `S`. This PR adds two lemmas asserting that (one for the underlying AddHom, one for the kernels).
I am not quite sure whether the second one is in the optimal shape: It was the shape useful to me, but maybe there is some better way to phrase it or it should be omitted completely (since it follows from the first one...).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
10/1 |
Mathlib/LinearAlgebra/TensorProduct/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
35-41570 1 month ago |
36-39770 36 days ago |
36-39758 36 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'] |
nobody |
35-28903 1 month ago |
35-29442 35 days ago |
54-23835 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 |
35-1602 1 month ago |
35-15345 35 days ago |
35-15333 35 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 |
34-74383 1 month ago |
34-78469 34 days ago |
34-78457 34 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 |
34-59155 1 month ago |
44-82829 44 days ago |
44-82817 44 days |
| 41860 |
tb65536 author:tb65536 |
feat(GroupTheory/Index): formula for index of centralizer of an element |
This PR proves the formula for the index of the centralizer of an element.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-group-theory
label:t-algebra$ |
23/1 |
Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/Index.lean |
2 |
3 |
['github-actions', 'plp127', 'tb65536'] |
nobody |
33-65428 1 month ago |
37-38134 37 days ago |
37-38123 37 days |
| 41988 |
vlad902 author:vlad902 |
feat(FreeGroup): characterize commutative/cyclic free groups |
Characterize cyclic/commutative free groups as being those on ≤ 1 generators. I generalize and move around some instances along the way to avoid new imports.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-group-theory |
64/23 |
Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/FreeGroup/Reduce.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic/Basic.lean,Mathlib/Logic/Unique.lean |
7 |
3 |
['github-actions', 'vlad902'] |
nobody |
32-62815 1 month ago |
32-66405 32 days ago |
32-66548 32 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 |
32-846 1 month ago |
53-54310 53 days ago |
85-17394 85 days |
| 42024 |
NoneMore author:NoneMore |
feat(Data/Set/Card): characterize finite lower bounds on encard |
A set has the cardinality at least `n` if and only if it has a sequence of length `n` with distinct elements.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
AI disclosure: The proof was structurally simplified following the `/lean4:golf` workflow from Lean 4 Skills.
[](https://gitpod.io/from-referrer/)
|
t-data |
16/0 |
Mathlib/Data/Set/Card.lean |
1 |
1 |
['github-actions'] |
nobody |
31-51578 1 month ago |
31-53565 31 days ago |
31-53553 31 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'] |
nobody |
30-66778 30 days ago |
30-68507 30 days ago |
31-10789 31 days |
| 41544 |
YaelDillies author:YaelDillies |
refactor(Algebra/Polynomial): make `coeff` return a `Finsupp` |
This matches `AddMonoidAlgebra`.
Change made by myself, build fixed by Claude Opus, with the fixes reviewed by myself again.
Assisted-by: Claude Opus 4.8
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
29/23 |
Counterexamples/MapFloor.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/Degree.lean,Mathlib/Data/Nat/Choose/Lucas.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/RingTheory/IsAdjoinRoot.lean,Mathlib/RingTheory/Polynomial/Eisenstein/IsIntegral.lean,Mathlib/RingTheory/Polynomial/ScaleRoots.lean,Mathlib/RingTheory/Polynomial/UniversalFactorizationRing.lean,Mathlib/RingTheory/Polynomial/Vieta.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/Tactic/ComputeDegree.lean |
12 |
3 |
['SnirBroshi', 'YaelDillies', 'github-actions'] |
nobody |
30-58416 30 days ago |
40-62595 40 days ago |
40-64418 40 days |
| 39808 |
chenson2018 author:chenson2018 |
chore(Data): refactor proofs where `grind?` fails |
These are sources of technical debt as now reported in the [weekly linting report](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Weekly.20linting.20log/with/544658968). The idea is that a successful `grind` proof can fail to report the theorems it used via `grind?`, which means that if these proofs break across toolchains that it becomes significantly harder to repair.
Most of these are fixed by squeezing the call to `grind` and unsetting `linter.tacticAnalysis.verifyGrindOnly` so they no longer appear in the weekly report. Unfortunately, this can't be on by default for performance reasons, but I highly encourage using this linter when adding any `grind` proofs.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data
tech debt
|
69/41 |
Mathlib/Data/Bool/Basic.lean,Mathlib/Data/Bool/Set.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/Fin/Tuple/NatAntidiagonal.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Finset/Range.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Count.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/List/Induction.lean,Mathlib/Data/List/ReduceOption.lean,Mathlib/Data/List/Sigma.lean,Mathlib/Data/List/Sort.lean,Mathlib/Data/List/TakeDrop.lean,Mathlib/Data/List/Triplewise.lean,Mathlib/Data/Option/Basic.lean,Mathlib/Data/Set/Card.lean,Mathlib/Data/Set/Disjoint.lean,Mathlib/Data/Set/Function.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Sum/Order.lean |
24 |
4 |
['Vierkantor', 'chenson2018', 'github-actions'] |
nobody |
30-57958 30 days ago |
90-72587 90 days ago |
90-72575 90 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 |
30-47961 30 days ago |
30-85931 30 days ago |
30-85919 30 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 |
30-47942 30 days ago |
30-85931 30 days ago |
30-85919 30 days |
| 41457 |
NoahW314 author:NoahW314 |
feat(Algebra/Group/Units/Basic): deduplicate lemmas by generalizing to `IsDedekindFiniteMonoid` |
Generalize a group of lemmas to `IsDedekindFiniteMonoid` which previously had versions for `CommMonoid`, `LeftCancelMonoid`, `RightCancelMonoid`, `CancelMonoid`, and `Ordinal`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
tech debt
label:t-algebra$ |
30/86 |
Mathlib/Algebra/AffineMonoid/Irreducible.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Horn.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Exponential.lean,scripts/nolints_prime_decls.txt |
7 |
4 |
['NoahW314', 'Vierkantor', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
30-43730 30 days ago |
30-43730 30 days ago |
46-84287 46 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 |
29-37756 29 days ago |
29-38540 29 days ago |
29-46999 29 days |
| 41525 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add Smooth.Basic for smooth representations |
This PR introduces basic setup for smooth representations of a topological group. Hopefully it will serve as preliminary content for those who are interested in formalizing representation theory for p-adic reductive groups in the future. We introduce the following in the file:
1. Define smoothness for representations of a topological group. It is a property for a representation to be smooth: the stabilizer of any vector is open.
2. Prove basic closure properties: subrepresentations, quotient representations, tensor products, direct sums of smooth representations are smooth.
3. Construct smoothHom and contragredient: they are obtained by cutting out smooth vectors from the naive hom and dual.
- [ ] depends on #40941
- [ ] depends on #41081 |
new-contributor
t-algebra
label:t-algebra$ |
345/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Smooth/Basic.lean,Mathlib/RepresentationTheory/Stabilizer.lean,Mathlib/RepresentationTheory/Subrepresentation.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
5 |
4 |
['JX-Mo', 'felixpernegger', 'github-actions'] |
nobody |
29-28165 29 days ago |
37-34014 37 days ago |
45-56128 45 days |
| 41081 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add Subrepresentation.toRepresentation_apply and Subrepresentation.quotient |
Add a lemma for `Subrepresentation` recording the inherited group action. Help avoid unfolding `Subrepresentation.toRepresentation` when analyzing the action.
Add the `quotient` representation associated to a `Subrepresentation`. It wraps up `Representation.quotient` and `Representation.Subrepresentation` and then we also record the inherited group action.
|
t-algebra
new-contributor
label:t-algebra$ |
26/0 |
Mathlib/RepresentationTheory/Subrepresentation.lean |
1 |
17 |
['JX-Mo', 'Whysoserioushah', 'github-actions'] |
nobody |
29-26748 29 days ago |
42-66973 42 days ago |
58-36530 58 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 |
1 |
['github-actions'] |
nobody |
29-11870 29 days ago |
29-14845 29 days ago |
29-14833 29 days |
| 42117 |
plp127 author:plp127 |
feat: locally compact left-uniform group is complete |
Prove that a locally compact left-uniform group is complete. We already have the theorem for right-uniform groups.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology |
28/4 |
Mathlib/Topology/Algebra/IsUniformGroup/Basic.lean |
1 |
7 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'plp127'] |
nobody |
28-4294 28 days ago |
28-21657 28 days ago |
28-21645 28 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 |
27-68798 27 days ago |
27-69650 27 days ago |
27-69638 27 days |
| 42080 |
dkunert author:dkunert |
feat(Algebra/Order/Floor): add fract-absorption lemmas for sums and d… |
Add the four one-sided absorption lemmas for `Int.fract`
* `Int.fract_fract_add : fract (fract a + b) = fract (a + b)`
* `Int.fract_add_fract : fract (a + fract b) = fract (a + b)`
* `Int.fract_fract_sub : fract (fract a - b) = fract (a - b)`
* `Int.fract_sub_fract : fract (a - fract b) = fract (a - b)`
all tagged `@[simp]`, together with the two-sided combinations `Int.fract_fract_add_fract` and `Int.fract_fract_sub_fract` as derived corollaries (not `@[simp]`, since their LHS is already simplified by the one-sided lemmas).
Mathlib currently has the existence form (`Int.fract_add`), the inequalities (`Int.fract_add_le`, `Int.fract_add_fract_le`), and absorption equalities only for integer casts (the `Int.fract_add_intCast` family); the `fract`-absorbing equalities themselves were missing (closest relatives: `Int.fract_fract`, `Int.fract_eq_fract`). With the new `@[simp]` set, goals like `fract (fract x + fract y) = fract (x + y)` now close by `simp` — they did not before.
The one-sided factoring of the add lemmas was suggested by Eric Wieser on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Int.2Efract.20of.20a.20sum.2Fdifference.20reduced.20mod.201); the two-sided add corollary is the lemma his two suggestions "combine to give". The sub analogues and the `@[simp]` tagging follow the same pattern. Naming follows the file's `fract_add_intCast`/`fract_intCast_add` convention.
I used the Anthropic LLMs Opus 4.8 and Fable 5 via Claude Code and made the central design decisions. The LLMs produced all the lemmas and proofs. The four lemmas and the two corollaries are fully proved and break nothing in Mathlib. They conform to the style and simpNF conventions. I take responsibility for this contribution.
--- |
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
22/0 |
Mathlib/Algebra/Order/Floor/Ring.lean |
1 |
3 |
['dkunert', 'github-actions'] |
nobody |
27-63634 27 days ago |
29-63687 29 days ago |
29-63675 29 days |
| 42132 |
mcdoll author:mcdoll |
feat(Algebra/Module): use `IsApply` for `LieHom` |
No obstacles in this one.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
60/59 |
Mathlib/Algebra/Lie/Basic.lean |
1 |
5 |
['github-actions', 'grunweg', 'leanprover-radar', 'mcdoll'] |
nobody |
27-45992 27 days ago |
27-49120 27 days ago |
27-49108 27 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 |
27-40197 27 days ago |
27-41079 27 days ago |
27-41067 27 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 |
27-4491 27 days ago |
27-4491 27 days ago |
27-4479 27 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 |
26-82680 26 days ago |
27-46213 27 days ago |
27-46201 27 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 |
26-78698 26 days ago |
27-28780 27 days ago |
27-28791 27 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 |
26-63687 26 days ago |
38-23565 38 days ago |
38-24595 38 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 |
26-43521 26 days ago |
26-45693 26 days ago |
26-45681 26 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 |
26-38020 26 days ago |
75-32778 75 days ago |
75-32766 75 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 |
26-37922 26 days ago |
29-75959 29 days ago |
29-75947 29 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 |
26-2241 26 days ago |
26-2873 26 days ago |
41-49751 41 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 |
25-75479 25 days ago |
26-39550 26 days ago |
26-39538 26 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 |
25-60391 25 days ago |
25-60957 25 days ago |
25-60945 25 days |
| 42231 |
mcdoll author:mcdoll |
doc(Analysis/SpecialFunctions): mention junk value for poles of Gaussian hypergeometric function |
The Gaussian hypergeometric function has a pole for `c = -k`, this is currently not mentioned at all in the file.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis |
6/2 |
Mathlib/Analysis/SpecialFunctions/OrdinaryHypergeometric.lean |
1 |
1 |
['github-actions'] |
nobody |
25-49827 25 days ago |
25-50408 25 days ago |
25-50396 25 days |
| 36275 |
smmercuri author:smmercuri |
feat: norm for the finite adele ring of a number field |
---
- [x] depends on: #35820
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
151/3 |
Mathlib.lean,Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/FiniteAdeleRing.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean |
6 |
5 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
25-28895 25 days ago |
31-42813 31 days ago |
87-61387 87 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 |
25-25532 25 days ago |
25-32562 25 days ago |
25-32550 25 days |
| 41916 |
peabrainiac author:peabrainiac |
feat(Topology): add `Homeomorph.Set.iUnion` |
Disjoint unions of families of sets are canonically isomorphic to disjoint unions of the corresponding subtypes, provided each set in the family can be separated from the others with an open neighbourhood.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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 equivalence underlying this homeomorphism is already in mathlib as `Set.unionEqSigmaOfDisjoint`. I think that should be renamed to `Equiv.Set.iUnion` for several reasons, but doing so would touch 5 different files, so it's probably cleaner to do that in a separate PR.
[](https://gitpod.io/from-referrer/)
|
t-topology |
35/0 |
Mathlib/Topology/Homeomorph/Lemmas.lean |
1 |
7 |
['felixpernegger', 'github-actions'] |
nobody |
25-4914 25 days ago |
35-77343 35 days ago |
35-77331 35 days |
| 41619 |
JovanGerb author:JovanGerb |
fix(Order/Notation): unify at correct transparency in sup/inf delaborators |
This PR fixes the `sup`/`inf` delaborators to use the correct transparency when unifying instances.
I discovered this problem when using `#click_suggestions`. It has the funny property of delaborating at the reducible transparency level instead of default (which usually doesn't affect delaboration, but in this case does)
Note: we may delay this PR until the next Lean version, since it splits this transparency level. The one we will then need is the implicit transparency.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
4/4 |
Mathlib/Order/Notation.lean |
1 |
1 |
['github-actions'] |
nobody |
24-84474 24 days ago |
43-40035 43 days ago |
43-40023 43 days |
| 41918 |
CoolRmal author:CoolRmal |
feat(Topology/Order): separability is hereditary for linearly ordered topological spaces |
In this PR we prove that
1. `isTopologicalBasis_isOpen_ordConnected`: in a linearly ordered topological space, every point of an open set `U` has an open `Set.OrdConnected` neighbourhood contained in `U`.
2. `countable_setOf_isolated_subtype`: in a separable linearly ordered topological space, the points of a subset `s` that are isolated in the subspace `s` form a countable set.
3. A subset of a separable linearly ordered topological space is separable in the subspace topology. This is proved as an instance.
The material was developed for showing the measurability of the pathwise variation of a continuous stochastic process in https://github.com/RemyDegenne/brownian-motion/pull/494. Created with the help of Claude Code, carefully reviewed and golfed by myself.
|
t-topology |
153/0 |
Mathlib.lean,Mathlib/Topology/Closure.lean,Mathlib/Topology/Order/Separable.lean |
3 |
2 |
['CoolRmal', 'felixpernegger', 'github-actions'] |
nobody |
24-78785 24 days ago |
24-80550 24 days ago |
35-75006 35 days |
| 42223 |
cameronfreer author:cameronfreer |
feat(Computability/Reduce): the halting problem is many-one complete |
`Mathlib/Computability/Halting.lean` proves that the halting problem is recursively enumerable (`ComputablePred.halting_problem_re`) and not computable (`ComputablePred.halting_problem`), but not that it is complete: there is no `REPred R → R ≤₀ K`, and neither `Halting.lean` nor `RE.lean` mentions `≤₀`.
This PR adds three results:
```lean
theorem REPred.manyOneReducible_halting_problem {R : ℕ → Prop} (h : REPred R) (n : ℕ) :
R ≤₀ fun c : Code => (Code.eval c n).Dom
theorem halting_problem_manyOneEquiv_halting_problem₂ (n : ℕ) :
ManyOneEquiv (fun c : Code => (Code.eval c n).Dom)
(fun p : Code × ℕ => (Code.eval p.1 p.2).Dom)
theorem REPred.manyOneReducible_halting_problem₂ {R : ℕ → Prop} (h : REPred R) :
R ≤₀ fun p : Code × ℕ => (Code.eval p.1 p.2).Dom
```
(I've stated the results in `Reduce.lean` rather than alongside the other halting-problem results because `≤₀` is defined here, and `Reduce` imports `Halting` rather than the other way around.)
🤖 These proofs were written with the assistance of Claude Opus 5 high and reviewed by GPT Sol 5.6 xhigh.
|
t-computability
new-contributor
LLM-generated
|
41/0 |
Mathlib/Computability/Reduce.lean |
1 |
3 |
['cameronfreer', 'github-actions'] |
nobody |
24-37080 24 days ago |
25-64888 25 days ago |
25-64876 25 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 |
24-37054 24 days ago |
25-63826 25 days ago |
25-67022 25 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 |
24-37054 24 days ago |
26-14457 26 days ago |
26-15269 26 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 |
24-37047 24 days ago |
26-56972 26 days ago |
26-56960 26 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]
-->
Riccardo, feel free to push reasonable changes directly. I am AFK for two weeks.
[](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 |
23-65464 23 days ago |
23-65464 23 days ago |
23-65504 23 days |
| 41696 |
vaca22 author:vaca22 |
feat(RingTheory): generalize relNorm_eq_pow_of_isMaximal to separable fraction field extensions |
This PR relaxes the hypothesis of Ideal.relNorm_eq_pow_of_isMaximal and its supporting Ring.NormalClosure instances.
Originally the theorem required the fraction ring of base Dedekind domain R to be a perfect field. Now we only require the fraction field extension to be separable.
The perfect field condition excludes function fields with imperfect constant fields, which is an important case we want to support. The core mathematical insight is that the normal closure of a separable field extension stays separable, so we can construct the Galois structure without a perfect base.
This change is fully backwards compatible: any existing code relying on the old perfect field assumption still compiles, since perfect fields automatically give separable extensions. Only two files are modified: NormalClosure.lean and RelNorm.lean, with small diff and no extra imports.
AI disclosure: I used AI tools to assist with initial code drafting and full CI validation. All mathematical reasoning and proof logic I worked through independently, and I can explain every adjustment in review. My original PR text relied too heavily on AI output, I’ve fully rewritten this description manually. |
new-contributor
t-ring-theory
LLM-generated
|
23/3 |
Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/NormalClosure.lean |
3 |
15 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'vaca22', 'xroblot'] |
nobody |
23-61993 23 days ago |
32-25024 32 days ago |
37-33922 37 days |
| 41991 |
dahlem author:dahlem |
fix(Analysis/Matrix): anchor the elementwise matrix norm's topology to instTopologicalSpaceMatrix |
With `open scoped Matrix.Norms.Elementwise`,
```lean
noncomputable example {m n : Type*} [Fintype m] [Fintype n] :
Norm (Matrix m n ℝ →L[ℝ] Matrix m n ℝ) := inferInstance
```
fails to synthesize, even though the norm-induced topology on `Matrix m n ℝ` is definitionally equal to the ambient `instTopologicalSpaceMatrix` (`rfl` proves the equality).
What goes wrong: the `→L[ℝ]` type is elaborated with the *direct* instance `instTopologicalSpaceMatrix`, while `ContinuousLinearMap.hasOpNorm`'s conclusion carries topologies that are *projections* of its `SeminormedAddCommGroup` arguments. During resolution, pending synthesis does find `Matrix.seminormedAddCommGroup`, but the projected topology then has to unify with `instTopologicalSpaceMatrix`, and the projection chain through `fast_instance% Pi.seminormedAddCommGroup` does not reduce to the same term. (Types like `ℝ` or `EuclideanSpace` don't hit this because they have no direct `TopologicalSpace` instance competing with the projection path — matrices do.)
**Fix**: anchor the topology field of `Matrix.seminormedAddCommGroup` / `Matrix.normedAddCommGroup` to `instTopologicalSpaceMatrix` via `PseudoMetricSpace.replaceTopology` / `MetricSpace.replaceTopology` with `rfl` proofs — the standard forgetful-inheritance pattern; the Frobenius family in the same file already achieves this through `PiLp.seminormedAddCommGroupToPi`. Anchoring to a freshly-elaborated `inferInstanceAs <| TopologicalSpace (m → n → α)` is *not* sufficient — the anchor must be the same instance term that appears in elaborated goal types, which is why this also adds `public import Mathlib.Topology.Instances.Matrix` (no cycle; that file only imports `LinearAlgebra.Matrix.*` and `Topology.Algebra.*`).
`norm`, `dist`, and the uniformity are untouched — only the packaging of the topology field changes, in the direction of the canonical instance. The fix works at Lean's default `maxSynthPendingDepth`. It also unblocks smul-continuity resolution in Fréchet-derivative developments over matrix codomains (`HasFDerivAt.const_smul` sites), where the goal's topology argument is the same non-reducing projection.
Motivation: hit in a downstream project (~4300 build jobs of matrix-valued Fréchet calculus) where ten files currently need local high-priority compat instances to work around this. A downstream repair cannot be shipped safely: boosting a repaired `SeminormedAddCommGroup`'s priority steals `‖·‖` resolution from files mixing norm scopes (e.g. `Matrix.Norms.L2Operator` sections of a Davis–Kahan development silently re-resolve to the elementwise norm). The fix has to live in the instance definitions.
Validation: full `lake build Mathlib` passes with the change (8666 jobs), plus new regression tests in `MathlibTest/MatrixNormTopology.lean` (both `rfl` agreements, the `Norm` synthesis above, `‖f‖` usage, `ContinuousConstSMul` unification).
Open questions for reviewers:
- Should the `linftyOp*` family get the same anchor for uniformity of design?
- Is `letI I := fast_instance% …; { I with … }` the preferred spelling here?
- Is the added import acceptable, or should the anchored instances move to a file that already sees `Topology.Instances.Matrix`?
Disclosure: this PR was prepared with AI assistance (Claude); the diagnosis and fix were validated by the full mathlib build and the included regression tests.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-analysis
new-contributor
LLM-generated
|
60/4 |
Mathlib/Analysis/Matrix/Normed.lean,MathlibTest/MatrixNormTopology.lean |
2 |
2 |
['github-actions'] |
nobody |
23-42683 23 days ago |
33-20167 33 days ago |
33-20155 33 days |
| 42307 |
mcdoll author:mcdoll |
feat(Analysis): define Bessel potential spaces |
This PR defines Bessel potential or Fourier theoretic Sobolev spaces.
Material taken from github.com/mcdoll/DirichletProblem
---
As a side note: some of the theorems in `Distribution.Sobolev` will have to be reworked (and maybe the file has to be renamed).
In the future, the facts about `TemperedDistribution.MemSobolev` will be deduced from facts about `BesselPotentialSpace`, the reason being that the existence quantifier makes it impossible to track the `Lp` function, which makes it really hard to prove continuity statements.
This is more related to the properties of interesting operations such as the Sobolev embedding theorem and the trace theorem and I don't think that deducing `MemSobolev.add` from the bundled version saves any lines.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis |
289/0 |
Mathlib.lean,Mathlib/Analysis/FunctionalSpaces/BesselPotentialSpace.lean |
2 |
2 |
['github-actions'] |
nobody |
23-40536 23 days ago |
23-41180 23 days ago |
23-41168 23 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 |
23-17719 23 days ago |
23-19494 23 days ago |
23-20692 23 days |
| 41869 |
FawadHa1der author:FawadHa1der |
perf(FieldTheory/RatFunc/Valuation): explicit proof instead of aesop |
A little longer explicit proof but may be bench will show it could be worth it. |
new-contributor
t-algebra
will-close-soon
label:t-algebra$ |
8/2 |
Mathlib/FieldTheory/RatFunc/Valuation.lean |
1 |
8 |
['FawadHa1der', 'github-actions', 'grunweg', 'leanprover-radar'] |
nobody |
23-14685 23 days ago |
23-14685 23 days ago |
23-17568 23 days |
| 40728 |
Formalistic03 author:Formalistic03 |
feat(Combinatorics/SimpleGraph/Hasse): more properties of Hasse graphs of linear orders |
- two forms of an intermediate value theorem for linear orders
- the Hasse graph of a linear order is acyclic
- a path graph is locally finite
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
large-import
|
99/24 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/CycleGraph.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Data/Fintype/Defs.lean |
4 |
23 |
['Formalistic03', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
23-12641 23 days ago |
23-15741 23 days ago |
62-2660 62 days |
| 41378 |
tb65536 author:tb65536 |
chore(RingTheory/QuasiFinite/Basic): extract instance from ramification proof |
This PR extracts an instance from the proof of `Ideal.ramificationIdx_pos`. This is a prerequisite for #41377.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
t-algebra
label:t-algebra$ |
13/7 |
Mathlib/RingTheory/QuasiFinite/Basic.lean,Mathlib/RingTheory/RamificationInertia/Ramification.lean |
2 |
1 |
['github-actions'] |
nobody |
23-9273 23 days ago |
49-85468 49 days ago |
49-85457 49 days |
| 42093 |
DrDMT-VR author:DrDMT-VR |
feat(Topology/Algebra/Ring): topological closure of a two-sided ideal |
Defines `TwoSidedIdeal.closure`, the topological closure of a two-sided ideal in a
topological ring, together with its basic API. This mirrors the existing one-sided
`Ideal.closure` (`Mathlib/Topology/Algebra/Ring/Ideal.lean`), but is stated in the
generality of non-unital non-associative topological rings (`IsTopologicalRing` over
`NonUnitalNonAssocRing`), where one-sided ideals are unavailable.
New declarations (namespace `TwoSidedIdeal`): `closure`, `coe_closure`,
`mem_closure_iff`, `le_closure`, `closure_mono`, `closure_minimal`, `isClosed_closure`,
`closure_eq_of_isClosed`, `closure_closure`, `closure_top`, and `closure_ne_top` (in a
unital ring whose units are open, e.g. a Banach algebra via `Units.isOpen`, the closure of
a proper two-sided ideal is proper).
Mathlib has no topological-closure API for `TwoSidedIdeal`. Closed two-sided ideals are
the basic objects of C*-algebra ideal theory, and `closure_ne_top` is the standard first
step toward "maximal two-sided ideals are closed".
------
- should the definition be called `topologicalClosure` instead? (The current name matches `Ideal.closure`.)
- Claude was utilized throughout the project. It helped with coding, syntax and running repetitive testing.
|
t-topology
new-contributor
LLM-generated
|
114/0 |
Mathlib.lean,Mathlib/Topology/Algebra/Ring/TwoSidedIdeal.lean |
2 |
5 |
['FractalDevTeam', 'github-actions', 'grunweg'] |
nobody |
23-7430 23 days ago |
23-29660 23 days ago |
29-6673 29 days |
| 42317 |
plp127 author:plp127 |
chore(Topology/Separation): generalize theorems on `IndiscreteTopology` |
Generalize some theorems on `IndiscreteTopology` from `EMetricSpace` to `T0Space`. Also move `subsingleton_iff_discrete_and_indiscrete` to an earlier file because it has an easier proof.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
27/16 |
Mathlib/Topology/EMetricSpace/Basic.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/Connected.lean |
3 |
13 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'plp127'] |
nobody |
22-80592 22 days ago |
23-1208 23 days ago |
23-1196 23 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 |
3 |
['github-actions'] |
nobody |
22-62471 22 days ago |
23-6534 23 days ago |
23-7191 23 days |
| 41073 |
vlad902 author:vlad902 |
feat(RingTheory): characterizing lemma for rings of infinite Krull dimension |
Show that the Krull dimension of a ring R is infinite if and only if it has ideals of unbounded height.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
17/0 |
Mathlib/RingTheory/Ideal/Height.lean |
1 |
1 |
['github-actions'] |
nobody |
22-54108 22 days ago |
58-48170 58 days ago |
58-49086 58 days |
| 41962 |
juanjomadrigal author:juanjomadrigal |
feat(Counterexamples): the space ω₁ |
Introduce the `ω₁` ordinal space that, when given the order topology, may be used to build some nice counterexamples in general topology, namely
- A subspace of a paracompact space need not be paracompact
- The product of two normal spaces need not be normal
- A subspace of a normal space need not be normal
- A regular space need not be normal
This PR introduces the basic definitions and order-theoretic properties, in order to have a good set of tools to work with.
---
Subsequent commits / PRs would roughly cover:
- Topology definitions in that space
- Compactness (and non-compactness) properties
- Countability properties
- Non-metrizability
- Each of the properties above
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
152/0 |
Counterexamples.lean,Counterexamples/Omega1Space.lean |
2 |
67 |
['FrankieNC', 'felixpernegger', 'github-actions', 'grunweg', 'j-loreaux', 'juanjomadrigal', 'plp127', 'vihdzp'] |
nobody |
22-53091 22 days ago |
22-53091 22 days ago |
30-77254 30 days |
| 38214 |
emlis42 author:emlis42 |
feat(Algebra/ContinuedFractions): add Euler's continued fraction |
This PR formalizes Euler continued fractions by providing `euler` which construct one by giving head term and coefficients with some basic property.
We also introduce a transformation `GenContFract.toEuler` that maps a generalized continued fraction `g : GenContFract K` to an equivalent Euler continued fraction. |
new-contributor
t-algebra
maintainer-merge
label:t-algebra$ |
364/0 |
Mathlib.lean,Mathlib/Algebra/ContinuedFractions/Euler.lean |
2 |
74 |
['YaelDillies', 'emlis42', 'github-actions', 'mathlib-bors', 'wwylele'] |
nobody |
22-24590 22 days ago |
22-25149 22 days ago |
109-80030 109 days |
| 41388 |
emlis42 author:emlis42 |
feat(Data/Set): add mono of right inv |
This PR adds some theorems about monotonicity of right inverse of some map.
This is mainly for discoverability and includes a strict version of `monotoneOn_of_rightInvOn_of_mapsTo` i.e `strictMonoOn_of_rightInvOn_of_mapsTo`.
Discussed here: [Lemmas about `StrictMono`/`Monotone` maps with right inverse](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Lemmas.20about.20.60StrictMono.60.2F.60Monotone.60.20maps.20with.20right.20inverse) |
t-data |
36/3 |
Mathlib/Data/Set/Monotone.lean |
1 |
3 |
['emlis42', 'felixpernegger', 'github-actions', 'themathqueen'] |
nobody |
22-20574 22 days ago |
49-26131 49 days ago |
49-26119 49 days |
| 42345 |
TomOleDiem author:TomOleDiem |
feat(Analysis/Normed/Algebra): characterize continuous one-parameter subgroups |
This PR proves that every continuous one-parameter subgroup of the unit group of a real Banach algebra has a unique exponential generator.
The theorem applies to any function-like type from `Multiplicative ℝ` to `Eˣ` carrying `MonoidHomClass` and `ContinuousMapClass` instances.
The proof first derives differentiability from an invertible local average. It then identifies the subgroup with the exponential of its derivative at zero and proves uniqueness by differentiation at zero.
The new module builds successfully and passes `lint-style`.
Substantial AI assistance was used to develop and review this formalization. |
t-analysis
new-contributor
LLM-generated
|
248/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Algebra/OneParameterSubgroup.lean |
2 |
3 |
['TomOleDiem', 'github-actions'] |
nobody |
22-20370 22 days ago |
22-20370 22 days ago |
22-20358 22 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 |
22-6718 22 days ago |
27-41307 27 days ago |
27-66023 27 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 |
22-2417 22 days ago |
22-3113 22 days ago |
22-3101 22 days |
| 34910 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Acyclic): a graph is a tree iff it's acyclic and has exactly `n - 1` edges |
---
This was my white whale for quite some time. Hooray!
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #34907
- [x] depends on: #34909
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
70/3 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Order/RelIso/Basic.lean |
3 |
24 |
['Rida-Hamadani', 'SnirBroshi', 'amellendijk', 'github-actions', 'jt0202', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
22-841 22 days ago |
43-17879 43 days ago |
68-53028 68 days |
| 42370 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Maps): more `map`/`comap` API |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
120/12 |
Mathlib/Combinatorics/SimpleGraph/Maps.lean |
1 |
1 |
['github-actions'] |
nobody |
21-38294 21 days ago |
21-39156 21 days ago |
21-39248 21 days |
| 42394 |
SnirBroshi author:SnirBroshi |
fix(Algebra/GroupWithZero/Associated): de-`abbrev` `Associates` |
`Associates` is an `abbrev` for `Quotient _`, but there are many `instance`s defined on it.
Some of them create diamonds with general `Quotient` instances: `Inhabited`, `Unique`, and most notably `Preorder`.
While `Associates` has a `Preorder` instance that uses the divisibility relation, any monoid with a `Preorder` will have its ordering lifted to the `Quotient`. So currently `Associates ℕ` has two different `LE` orders defined on it that disagree on `2 ≤ 3`.
This changes `Associates` to a `def` tagged with `@[implicit_reducible]`.
---
The `nonZeroDivisors` proof is now a bit awkward, since the `Equiv` works for `Quotient`s but `simp` refuses to evaluate the `Equiv` because `Associate` elements are multiplied but `Quotient` doesn't have that multiplication. Though `rw` works thanks to `@[implicit_reducible]`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
tech debt
|
26/11 |
Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/GroupWithZero/NonZeroDivisors.lean,Mathlib/RingTheory/Ideal/IsPrincipal.lean |
3 |
1 |
['github-actions'] |
nobody |
20-73335 20 days ago |
20-75872 20 days ago |
20-78137 20 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 |
20-67862 20 days ago |
27-46024 27 days ago |
27-46012 27 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 |
383/0 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/BaseChange.lean |
2 |
7 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
nobody |
20-51348 20 days ago |
20-51866 20 days ago |
20-70209 20 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 |
20-47701 20 days ago |
37-23989 37 days ago |
37-23977 37 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 |
20-41825 20 days ago |
36-57546 36 days ago |
49-54023 49 days |
| 41632 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Trails): the support of an Eulerian trail equals the support of 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 |
32/0 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean |
3 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
20-36580 20 days ago |
20-37146 20 days ago |
42-43124 42 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 |
20-35657 20 days ago |
31-70217 31 days ago |
31-72779 31 days |
| 39905 |
plp127 author:plp127 |
chore(Order/CompleteBooleanAlgebra): dualize `symmDiff` theorems |
Dualize some `symmDiff` theorems, and also generalize them from `CompleteBooleanAlgebra` to `Order.Coframe`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
76/39 |
Mathlib/Order/CompleteBooleanAlgebra.lean |
1 |
4 |
['JovanGerb', 'github-actions', 'plp127', 'vihdzp'] |
nobody |
20-29441 20 days ago |
88-86208 88 days ago |
88-86196 88 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 |
20-27975 20 days ago |
20-41221 20 days ago |
20-41209 20 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 |
20-25906 20 days ago |
20-26514 20 days ago |
32-69685 32 days |
| 42411 |
SnirBroshi author:SnirBroshi |
feat(ModEq): `IsEquiv` instance |
`IsEquiv` for `Nat.ModEq`/`Int.ModEq`/`SModEq`
---
The deleted instances are synthesizable from the new ones.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
12/15 |
Mathlib/Data/Int/ModEq.lean,Mathlib/Data/Nat/ModEq.lean,Mathlib/LinearAlgebra/SModEq/Basic.lean |
3 |
1 |
['github-actions'] |
nobody |
20-17662 20 days ago |
20-19730 20 days ago |
20-19718 20 days |
| 27707 |
amellendijk author:amellendijk |
feat(NumberTheory/SelbergSieve): define Selberg's weights and prove basic results |
This PR continues the work from #23635.
Original PR: https://github.com/leanprover-community/mathlib4/pull/23635
- [x] depends on: #27702 |
t-number-theory
t-analysis
|
140/0 |
Mathlib/NumberTheory/Divisors.lean,Mathlib/NumberTheory/SelbergSieve.lean |
2 |
29 |
['MichaelStollBayreuth', 'amellendijk', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] |
urkud assignee:urkud |
20-1748 20 days ago |
45-49552 45 days ago |
49-7867 49 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'] |
jjdishere assignee:jjdishere |
20-1748 20 days ago |
42-78351 42 days ago |
107-43289 107 days |
| 42413 |
SnirBroshi author:SnirBroshi |
feat(Order/Cover): `CovBy` is asymmetric and `WCovBy` is antisymmetric |
---
The deleted instances are synthesizable from the new ones.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
10/5 |
Mathlib/Order/Cover.lean |
1 |
1 |
['github-actions'] |
nobody |
20-232 20 days ago |
20-17945 20 days ago |
20-17933 20 days |
| 42350 |
sankalpsthakur author:sankalpsthakur |
feat(Computability): characterize halted TM1 configurations |
Adds `Turing.TM1.step_none_iff`, characterizing exactly when a single TM1 step returns `none`: iff the configuration's current label is already `none`. Tagged `@[simp]`.
Motivated by #35366.
### Validation
Built locally: `lake build Mathlib.Computability.TuringMachine.PostTuringMachine` — succeeds (688 jobs, cache-backed).
Closes #35366
### 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-computability
new-contributor
LLM-generated
|
5/0 |
Mathlib/Computability/TuringMachine/PostTuringMachine.lean |
1 |
2 |
['github-actions'] |
nobody |
19-82945 19 days ago |
19-83536 19 days ago |
20-81101 20 days |
| 42352 |
sankalpsthakur author:sankalpsthakur |
feat(RingTheory): coprimality of a sum and difference |
Adds `Int.isCoprime_add_sub`: if `m, n` are coprime and `m + n` is odd (equivalently, `m, n` have opposite parity), then `m + n` and `m - n` are coprime.
Motivated by #37366.
### Validation
Built locally: `lake build Mathlib.RingTheory.Int.Basic` — succeeds.
Closes #37366
### 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
|
9/0 |
Mathlib/RingTheory/Int/Basic.lean |
1 |
4 |
['SnirBroshi', 'github-actions', 'sankalpsthakur'] |
nobody |
19-82716 19 days ago |
22-6492 22 days ago |
22-6480 22 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 |
19-77514 19 days ago |
21-700 21 days ago |
21-688 21 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 |
19-28996 19 days ago |
19-30201 19 days ago |
38-12190 38 days |
| 42446 |
ipezygj author:ipezygj |
feat(Algebra/Order/Ring/Pow): bernoulli's inequality for a subtracted term |
Adds `one_sub_mul_le_pow`, the mirror of `one_add_mul_le_pow`:
```lean
lemma one_sub_mul_le_pow (H : a ≤ 2) (n : ℕ) : 1 - n * a ≤ (1 - a) ^ n
```
`Mathlib/Algebra/Order/Ring/Pow.lean` already carries Bernoulli in the `1 + a` form
and one reformulation of it (`one_add_mul_sub_le_pow`); this is the `1 - a` form,
which is the shape that comes up when bounding a product of complements — for
example showing that `1 - (1 - p) ^ n ≤ n * p`, the comparison between the Šidák and
Bonferroni corrections in statistics, which follows immediately by `linarith`.
The hypothesis `a ≤ 2` is exactly what `one_add_mul_le_pow`'s `-2 ≤ -a` becomes, and
it is load-bearing rather than decorative: the inequality fails for `a > 2` (checked
numerically over a grid before writing the proof).
Proof is two lines and reduces directly to the existing lemma.
This is my first contribution to mathlib, so please do point out anything that does
not match the library's conventions.
---
[Blueprint] not applicable.
|
t-algebra
new-contributor
label:t-algebra$ |
6/0 |
Mathlib/Algebra/Order/Ring/Pow.lean |
1 |
3 |
['github-actions'] |
nobody |
19-26584 19 days ago |
19-29584 19 days ago |
19-29572 19 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 |
19-4602 19 days ago |
19-29646 19 days ago |
22-5191 22 days |
| 32058 |
Thmoas-Guan author:Thmoas-Guan |
feat(Algebra): Baer criterion for injective dimension |
In this PR, we added the cateory version of Baer criterion stating that `M` is injective iff `Ext^1(R/I, M)` vanish for all ideal `I`. By dimension shifting, we also have `M` has injective dimension not exceeding `n` iff `Ext^{n + 1}(R/I, M)` vanish for all ideal `I`.
---
<!-- 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: #36980
- [x] depends on: #39305
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-category-theory
label:t-algebra$ |
172/0 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/EnoughProjectives.lean |
3 |
86 |
['Thmoas-Guan', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'mathlib4-merge-conflict-bot'] |
mattrobball assignee:mattrobball |
19-1748 19 days ago |
65-43602 65 days ago |
151-35305 151 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$ |
66/35 |
Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/ContinuedFractions/ContinuantsRecurrence.lean,Mathlib/Algebra/ContinuedFractions/Determinant.lean,Mathlib/Algebra/ContinuedFractions/Translations.lean |
4 |
4 |
['emlis42', 'github-actions', 'grunweg'] |
kim-em assignee:kim-em |
19-1746 19 days ago |
104-29628 104 days ago |
104-29616 104 days |
| 40735 |
tb65536 author:tb65536 |
feat(NumberTheory/NumberField/AdeleRing): define the idele class group |
This PR defines the idele class group and the maps from the completions at finite places. This will be used to define 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-number-theory
t-algebra
label:t-algebra$ |
82/5 |
Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/InfiniteAdeleRing.lean,Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean,Mathlib/Topology/Algebra/RestrictedProduct/Basic.lean |
4 |
5 |
['github-actions', 'mathlib-merge-conflicts', 'smmercuri'] |
alreadydone assignee:alreadydone |
19-1744 19 days ago |
25-10492 25 days ago |
67-1462 67 days |
| 41717 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Walk): more `transfer` API |
---
The Hamiltonian lemmas don't really need `Finite`; I'll fix this after #41435 (in whichever merges second).
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
tech debt
|
54/23 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Maps.lean |
4 |
1 |
['github-actions'] |
JovanGerb assignee:JovanGerb |
19-1740 19 days ago |
40-74202 40 days ago |
40-74293 40 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
|
60/1 |
Mathlib/Data/List/PeriodicityLemma.lean |
1 |
8 |
['SnirBroshi', 'github-actions', 'theebayuser'] |
nobody |
19-1440 19 days ago |
36-65407 36 days ago |
36-65395 36 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
|
44/3 |
Mathlib/Data/List/Infix.lean |
1 |
3 |
['github-actions', 'theebayuser'] |
nobody |
18-85563 18 days ago |
35-78622 35 days ago |
35-78610 35 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
t-combinatorics
new-contributor
|
64/0 |
Mathlib/Data/Finset/Image.lean,Mathlib/Order/Partition/Finpartition.lean |
2 |
4 |
['github-actions', 'lydia-schiff'] |
nobody |
18-82708 18 days ago |
18-85517 18 days ago |
19-4501 19 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'] |
ocfnash assignee:ocfnash |
18-80477 18 days ago |
18-83029 18 days ago |
70-50394 70 days |
| 42466 |
xroblot author:xroblot |
feat(LinearAlgebra): unimodular elements and completion to a basis |
Add a new file `Mathlib/LinearAlgebra/Unimodular.lean` about unimodular
elements of a module (those on which some linear functional takes the value
`1`).
Main results:
* `Module.Basis.span_repr_eq_top_iff`: `v` is unimodular iff its coordinates in
a basis generate the unit ideal;
* `Module.Free.exists_basis_apply_zero_eq`: a unimodular vector of a rank-two
free module completes to a basis;
* `Module.Basis.span_repr_one_eq_top` / `Module.Free.exists_linearMap_apply_one_eq_one`:
`1` is unimodular in a nonzero free algebra.
Some of the mathematics and proofs in this file were developed with the help of Claude 🤖.
|
t-algebra label:t-algebra$ |
134/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Unimodular.lean,docs/references.bib |
3 |
1 |
['github-actions'] |
nobody |
18-74292 18 days ago |
18-74858 18 days ago |
18-74994 18 days |
| 42467 |
yuanyi-350 author:yuanyi-350 |
feat(Topology/Homotopy): show covering maps are surjective on path components |
|
t-topology |
12/0 |
Mathlib/Topology/Homotopy/Lifting.lean |
1 |
1 |
['github-actions'] |
nobody |
18-69883 18 days ago |
18-70500 18 days ago |
18-70488 18 days |
| 41816 |
tb65536 author:tb65536 |
feat(GroupTheory/PGroup): add exponent characterization |
This PR adds the exponent characterization of p-groups, and uses it to golf the existing proof of `isPGroup_iff_card_dvd_pow`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-group-theory
large-import
|
41/40 |
Mathlib/GroupTheory/Exponent.lean,Mathlib/GroupTheory/PGroup.lean |
2 |
3 |
['SnirBroshi', 'github-actions', 'tb65536'] |
nobody |
18-61665 18 days ago |
18-61668 18 days ago |
18-62839 18 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 |
18-24712 18 days ago |
18-25330 18 days ago |
60-45013 60 days |
| 40473 |
karlesmarin author:karlesmarin |
feat(LinearAlgebra/Matrix): the Cauchy-Binet formula |
Adds the Cauchy–Binet formula. For `A : Matrix m n R` and `B : Matrix n m R` over a commutative ring, `det (A * B)` is the sum, over the `Fintype.card m`-element subsets `S` of `n`, of the product of the two maximal minors selected by `S`.
Main results:
* `Matrix.det_mul_eq_sum_det_submatrix_mul_prod` — the Leibniz-type expansion of `det (A * B)` over all index functions `g : m → n`.
* `Matrix.det_mul_cauchyBinet` — the Cauchy–Binet formula.
The proof expands over all `g : m → n`, discards the non-injective ones, and groups the rest by image.
|
|
212/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Matrix/Determinant/CauchyBinet.lean |
2 |
7 |
['github-actions', 'karlesmarin', 'mathlib-merge-conflicts', 'wwylele', 'yuanyi-350'] |
nobody |
18-12423 18 days ago |
18-13021 18 days ago |
63-16803 63 days |
| 38009 |
CBirkbeck author:CBirkbeck |
feat(RingTheory/Valuation): define the valuation spectrum and its topology |
## Summary
Define the valuation spectrum `Spv A` of a commutative ring and equip it with the topology generated by basic open sets, following Wedhorn's *Adic Spaces*. Also define the pullback (`comap`) of a `ValuativeRel` along a ring homomorphism. This is preparation for later defining adic spaces.
Note the code was generated by claude code, but I have cleaned up and pre-reviewed the work.
|
t-ring-theory
LLM-generated
|
400/0 |
Mathlib.lean,Mathlib/RingTheory/Valuation/ValuationSpectrum.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Comap.lean |
3 |
73 |
['CBirkbeck', 'adamtopaz', 'chrisflav', 'dagurtomas', 'faenuccio', 'github-actions', 'jjdishere', 'riccardobrasca', 'sfingali'] |
jjdishere assignee:jjdishere |
18-1728 18 days ago |
41-61572 41 days ago |
126-35271 126 days |
| 39588 |
jvanwinden author:jvanwinden |
feat(MeasureTheory/Measure/ProbabilityMeasure): add toProbabilityMeasure and basic API |
Introduces `Measure.toProbabilityMeasure`, which converts a `Measure` into a `ProbabilityMeasure` in the presence of the typeclass assumption `[IsProbabilityMeasure]`. Some basic API is added for the interaction between `toProbabilityMeasure` and the coercion from `ProbabilityMeasure` to `Measure`. The main convenience is that the new method allows for dot notation on `Measure`.
This PR arose from the following situation: I needed to prove equality of two `Measure` objects, and I wanted to do this by using uniqueness of limits. But the topology of weak convergence is only defined on `ProbabilityMeasure` and not on `Measure`. With the new lemma `toProbabilityMeasure_inj`, an equality of measures can easily be rewritten into an equality of the corresponding probability measures, after which `tendsto_nhds_unique` can be applied.
Aside from this, `toProbabilityMeasure` has the potential to simplify theorem statements about `Measure` objects which use the topology of weak convergence either in the assumptions or the conclusion. For example, now one can simply write `Tendsto μ.toProbabilityMeasure f (nhds μ_lim.toProbabilityMeasure)` when appropriate `[IsProbabilityMeasure]` assumptions are present.
This PR is intended as a starting point for a discussion. I only added some basic API, but perhaps more lemmas should be added (which ones?). Also, a similar definition could be made for `FiniteMeasure`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
20/2 |
Mathlib/MeasureTheory/Measure/ProbabilityMeasure.lean |
1 |
2 |
['EtienneC30', 'github-actions'] |
RemyDegenne assignee:RemyDegenne |
18-1727 18 days ago |
96-21825 96 days ago |
96-21813 96 days |
| 41644 |
adomani author:adomani |
chore: add missing `to_additive` docstrings in Algebra (BigOperators, Order, ...) |
Adds the missing additive doc-strings (multiplicative side has a hand-written doc-string, additive side did not) across 16 file(s) in **Algebra (BigOperators, Order, ...)**.
The additive doc-strings are simple-minded translations of the multiplicative ones, with referenced lemma names replaced by their `to_additive` counterparts. These gaps were found by an environment linter that pairs each declaration with its `to_additive` counterpart and checks that both or neither is documented.
🤖 Generated with [Claude Code](https://claude.com/claude-code) |
LLM-generated |
68/40 |
Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean,Mathlib/Algebra/BigOperators/Group/Finset/Sigma.lean,Mathlib/Algebra/FreeMonoid/Basic.lean,Mathlib/Algebra/Module/PUnit.lean,Mathlib/Algebra/MonoidAlgebra/Module.lean,Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Algebra/Order/Group/Finset.lean,Mathlib/Algebra/Order/Group/Unbundled/Basic.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Pow.lean,Mathlib/Algebra/Regular/Basic.lean,Mathlib/Algebra/Torsor/Basic.lean,Mathlib/Order/Filter/AtTopBot/Monoid.lean |
16 |
1 |
['github-actions'] |
nobody |
17-74285 17 days ago |
41-50002 41 days ago |
41-49990 41 days |
| 42475 |
kebekus author:kebekus |
feat: establish the Poisson-Jensen formula |
Establish the classic Poisson-Jensen formula of complex analysis, which generalizes the Jensen formula.
This material is used in [Project VD](https://github.com/kebekus/ProjectVD), formalizing Value Distribution Theory for meromorphic functions on the complex plane. Claude Code was used to create this PR.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis
LLM-generated
|
160/10 |
Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Complex/Poisson.lean |
2 |
1 |
['github-actions'] |
nobody |
17-70334 17 days ago |
17-70920 17 days ago |
18-47364 18 days |
| 42485 |
vlad902 author:vlad902 |
feat(LocalRing): add `IsLocalRing` instance for `MulOpposite` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
6/0 |
Mathlib/RingTheory/LocalRing/Basic.lean |
1 |
3 |
['eric-wieser', 'github-actions', 'vlad902'] |
nobody |
17-64370 17 days ago |
17-72518 17 days ago |
17-72506 17 days |
| 40496 |
thefundamentaltheor3m author:thefundamentaltheor3m |
feat(LinearAlgebra/AffineSpace/Simplex): the surface of a simplex |
I wrote the definition myself, and got Claude to generate some of the boilerplate code (which I then reviewed and had it clean up).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
LLM-generated
new-contributor
label:t-algebra$ |
97/5 |
Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean |
1 |
8 |
['github-actions', 'grunweg', 'mathlib-bors', 'mathlib-merge-conflicts', 'thefundamentaltheor3m', 'wwylele'] |
nobody |
17-47201 17 days ago |
17-48635 17 days ago |
30-78043 30 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 |
17-43646 17 days ago |
17-43646 17 days ago |
17-43634 17 days |
| 41347 |
mkaratarakis author:mkaratarakis |
feat(Tactic/Polynomial): poly_dvd_cert, certificate-based polynomial divisibility |
The `poly_dvd_cert` tactic: prove `p ∣ q` for `Polynomial K` polyrith-style - search the quotient uncertified in compiled `MetaM` (pseudo-division, so the certified identity is division-free), then verify with `ring` and cancel the leading-coefficient unit. Works over any field with concrete or symbolic coefficients, for monic divisors over any commutative ring, and for unit leading coefficients.
|
t-meta
LLM-generated
|
290/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ComputablePolynomial/DvdCert.lean,MathlibTest/ComputablePolynomial/PolyDvdCert.lean |
4 |
5 |
['JovanGerb', 'github-actions', 'mkaratarakis'] |
kim-em assignee:kim-em |
17-19834 17 days ago |
17-53387 17 days ago |
49-4254 49 days |
| 42499 |
attilavjda author:attilavjda |
doc(Data/ENat,ENNReal): fix swapped docstring on mul_iInf_of_ne |
Fixed left from right multiplication and "see-also" to point at mul_iInf
[Aristotle helped](https://github.com/attilavjda/formal-contributions/blob/main/mul_iInf_of_ne/PR3.lean) with finding the error, generating and verifying a solution by tests, and made a guide to 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/)
|
t-data
new-contributor
|
5/5 |
Mathlib/Data/ENNReal/Inv.lean,Mathlib/Data/ENat/Lattice.lean |
2 |
3 |
['github-actions'] |
nobody |
17-19338 17 days ago |
17-38899 17 days ago |
17-38887 17 days |
| 41902 |
Ljon4ik4 author:Ljon4ik4 |
feat: sum of derivations lemmas |
This PR adds Lemmas showing that derivations are well-behaved with sums.
In order to prove one of them an additive map version of `coe : Derivation R A M → A →ₗ[R] M` is also added.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
17/0 |
Mathlib/RingTheory/Derivation/Basic.lean |
1 |
8 |
['Ljon4ik4', 'github-actions', 'mathlib-bors', 'wwylele'] |
nobody |
17-10238 17 days ago |
36-22265 36 days ago |
36-22259 36 days |
| 42357 |
SynBurz author:SynBurz |
feat: the Krull dimension of the product of finitely many rings is equal to the maximum of Krull dimensions of the factors |
Add `ringKrullDim_pi_eq_iSup_ringKrullDim`. Also add useful defs: `LTSeries.sigmaEquiv`, `PrimeSpectrum.sigmaToPiOrderIso`, and lemmas `PrimeSpectrum.sigmaToPiOrderIso_apply`, Pi.not_comap_evalRingHom_le_comap_of_neq`, `LTSeries.sigma_fst_eq_fst`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor |
93/0 |
Mathlib/Order/RelSeries.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean |
3 |
5 |
['SynBurz', 'github-actions', 'wwylele'] |
nobody |
17-10028 17 days ago |
22-660 22 days ago |
22-1051 22 days |
| 39709 |
justus-springer author:justus-springer |
feat(RingTheory/): `MvPolynomial` is standard smooth |
Add the trivial submersive presentation for `MvPolynomial` and show that `MvPolynomial` is standard smooth over its base ring. This will be used to show that affine space is smooth in #39710.
- [x] depends on: #39708
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
47/0 |
Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/Extension/Presentation/Submersive.lean,Mathlib/RingTheory/Smooth/StandardSmooth.lean |
3 |
4 |
['faenuccio', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
alreadydone assignee:alreadydone |
17-1745 17 days ago |
64-32781 64 days ago |
89-25224 89 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'] |
TwoFX assignee:TwoFX |
17-1745 17 days ago |
51-37026 51 days ago |
89-5571 89 days |
| 40983 |
khwilson author:khwilson |
feat: lemmas to support F-space open mapping theorem |
In order to generalize the Banach open mapping theorem to a generic F-space, we need several leamms about balanced and absorbent sets in more arbitrary spaces. In particular, we need some key lemmas such as:
- A closed absorbent set in a Baire space with countably generated cobounded filter has nonempty interior
- A topological vector space has a basis of neighborhoods about 0 consisting of balanced sets
AI Disclosure: Generated by Claude Code with specific prompts from me and edits 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-topology
LLM-generated
|
118/11 |
Mathlib.lean,Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/BalancedCoreHull.lean,Mathlib/Analysis/LocallyConvex/Basic.lean,Mathlib/Topology/Algebra/Group/Pointwise.lean,Mathlib/Topology/Baire/Absorbent.lean,Mathlib/Topology/Bornology/Absorbs.lean,Mathlib/Topology/MetricSpace/Bounded.lean |
8 |
10 |
['felixpernegger', 'github-actions', 'khwilson', 'mcdoll', 'scholzhannah'] |
mcdoll assignee:mcdoll |
16-69584 16 days ago |
18-16816 18 days ago |
58-7785 58 days |
| 42517 |
khwilson author:khwilson |
refactor(Analysis/LocallyConvex): state hulls via ClosureOperator |
Restate `balancedHull` and the neighborhood bases of the origin in terms of the `ClosureOperator` API, and add the general lemmas that make this possible:
* `ClosureOperator.closure_binop_le`: a closure operator is sub-`f` for any monotone binary operation `f` whose closed elements are stable under `f`; `balancedHull_add_subset` and `absConvexHull_add_subset` are instances.
* `Filter.HasBasis.and_isClosed`: combine a basis of `p`-sets with a basis of `c`-closed sets when `c` preserves `p`.
* `Topology.closureOperator`: topological closure, bundled.
* `Balanced.sUnion`, and `Balanced.closure` generalized to `SeminormedRing`.
`balancedCore` keeps its definition as a union of balanced subsets, but its API is now derived from the hull side; `balancedCoreAux` is removed in favour of lemmas stated directly about `⋂ (r : 𝕜) (_ : 1 ≤ ‖r‖), r • s`. The new `nhds_basis_open_balanced` joins `nhds_basis_closed_balanced`, `nhds_hasBasis_absConvex_open` and `nhds_hasBasis_absConvex_closed`, all four proved through `and_isClosed`.
AI Disclosure: Much of the refactoring work across files was performed by Claude Opus 5 after being given examples I wrote.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
170/126 |
Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/BalancedCoreHull.lean,Mathlib/Analysis/LocallyConvex/Basic.lean,Mathlib/Order/Closure.lean,Mathlib/Order/Filter/Bases/Basic.lean,Mathlib/Topology/Closure.lean |
6 |
2 |
['github-actions', 'khwilson'] |
nobody |
16-67134 16 days ago |
16-69719 16 days ago |
16-69707 16 days |
| 42520 |
mo271 author:mo271 |
refactor(Data/Finset/Sups): rename `powerset_union/inter` |
... to `powerset_sups/infs`
Rename `Finset.powerset_union` to `Finset.powerset_sups` and `Finset.powerset_inter` to `Finset.powerset_infs` to reflect that they compute pointwise operations `⊻` and `⊼`.
Add deprecation aliases.
A follow-up (#42521) will add `Finset.powerset_inter` back (with a different meaning).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
13/8 |
Mathlib/Data/Finset/Sups.lean |
1 |
2 |
['github-actions'] |
nobody |
16-60778 16 days ago |
16-63358 16 days ago |
16-63346 16 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 |
16-54989 16 days ago |
17-17650 17 days ago |
17-17638 17 days |
| 41051 |
tb65536 author:tb65536 |
feat(FieldTheory/PolynomialGaloisGroup): add equivariant bijection between root sets |
Currently the bijection `rootsEquivRoots` between root sets of a polynomial that splits is not equivariant with respect to the action of the Galois group. This PR demotes the existing `rootsEquivRoots` to an auxilliary def `rootsEquivRootsAux` and adds an equivariant `rootsEquivRoots` in its place.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-ring-theory
label:t-algebra$ |
32/18 |
Mathlib/FieldTheory/PolynomialGaloisGroup.lean |
1 |
3 |
['github-actions', 'mathlib-merge-conflicts', 'tb65536'] |
nobody |
16-52247 16 days ago |
16-52824 16 days ago |
58-65124 58 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 |
16-46284 16 days ago |
16-53763 16 days ago |
16-56301 16 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 |
16-28758 16 days ago |
16-31178 16 days ago |
16-32924 16 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 |
16-27379 16 days ago |
16-30800 16 days ago |
16-33860 16 days |
| 42552 |
SnirBroshi author:SnirBroshi |
chore(Data/List/Chain): use `IsTrans` instead of `Trans R R R` |
---
This is the common spelling, and there are instances between them.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data
easy
|
2/2 |
Mathlib/Data/List/Chain.lean |
1 |
1 |
['github-actions'] |
nobody |
16-9515 16 days ago |
16-12356 16 days ago |
16-12344 16 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'] |
kex-y assignee:kex-y |
16-1745 16 days ago |
17-84966 17 days ago |
17-84954 17 days |
| 42566 |
tb65536 author:tb65536 |
feat(Analysis/Normed/Ring/WithAbs): add `AbsoluteValue.under` |
This PR adds `AbsoluteValue.under`. This is in preparation for general ramification theory of absolute values.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
t-algebra
t-number-theory
t-analysis
label:t-algebra$ |
24/8 |
Mathlib/Analysis/Normed/Ring/WithAbs.lean,Mathlib/NumberTheory/NumberField/Completion/Ramification.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean |
3 |
1 |
['github-actions'] |
nobody |
15-60819 15 days ago |
15-60876 15 days ago |
15-60880 15 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 |
15-43430 15 days ago |
22-1163 22 days ago |
51-82628 51 days |
| 42573 |
martinwintermath author:martinwintermath |
feat(LinearAlgebra/Dual): add inf/iInf lemmas for `dualCoannihilator` for finite dimensional subspaces |
Add
* `dualCoannihilator_inf_eq` proving `(W ⊓ W').dualCoannihilator = W.dualCoannihilator ⊔ W'.dualCoannihilator`
* `dualCoannihilator_iInf_eq` proving `(⨅ i, W i).dualCoannihilator = ⨆ i, (W i).dualCoannihilator`
These lemmas are counterparts to the existing [`Submodule.dualCoannihilator_sup_eq`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/LinearAlgebra/Dual/Defs.html#Submodule.dualCoannihilator_sup_eq) and [`Subspace.dualAnnihilator_inf_eq`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/LinearAlgebra/Dual/Lemmas.html#Subspace.dualAnnihilator_inf_eq) and their indexed version. In contrast to those, the new lemmas need to assume `FiniteDimensional` for all subspaces.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
16/0 |
Mathlib/LinearAlgebra/Dual/Lemmas.lean |
1 |
1 |
['github-actions'] |
nobody |
15-34233 15 days ago |
15-35512 15 days ago |
15-36714 15 days |
| 42518 |
theebayuser author:theebayuser |
feat(Geometry/Euclidean): add the British flag theorem |
Adds the British flag theorem to `Mathlib/Geometry/Euclidean/`
The rectangle is expressed as a parallelogram, the diagonals `a c` and
`b d` share a midpoint with a right angle at a.
Main results
* `EuclideanGeometry.dist_sq_add_dist_sq_eq_dist_sq_add_dist_sq_of_angle_eq_pi_div_two` —
the British flag theorem.
* `EuclideanGeometry.dist_sq_add_dist_sq_eq_dist_sq_add_dist_sq_iff_angle_eq_pi_div_two` —
the if-and-only-if form: among parallelograms the identity characterises rectangles. It needs
no nondegeneracy hypotheses, thanks to the `angle 0 v = π / 2` convention.
* `EuclideanGeometry.dist_sq_add_dist_sq_eq_dist_sq_add_dist_sq_add_two_mul_dist_mul_dist_mul_cos_angle`
— a generalisation to arbitrary parallelograms with a law-of-cosines correction term.
* `InnerProductGeometry.norm_sq_add_norm_sub_add_sq_eq_norm_sub_sq_add_norm_sub_sq_add_two_inner`
and its `…_iff_inner_eq_zero` corollary — the underlying inner-product identity, in the vector
layer.
AI disclosure
This contribution was developed with assistance from Claude Code.
|
t-euclidean-geometry
new-contributor
LLM-generated
|
112/0 |
Mathlib.lean,Mathlib/Geometry/Euclidean/BritishFlag.lean,docs/1000.yaml |
3 |
5 |
['github-actions', 'theebayuser', 'wwylele'] |
jsm28 assignee:jsm28 |
15-32800 15 days ago |
16-67803 16 days ago |
16-67791 16 days |
| 34487 |
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 the usefulness of 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`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
large-import
label:t-algebra$ |
85/16 |
Mathlib/Geometry/Convex/Cone/Dual.lean,Mathlib/LinearAlgebra/Dual/Lemmas.lean,Mathlib/LinearAlgebra/PerfectPairing/Basic.lean,Mathlib/LinearAlgebra/SesquilinearForm/Basic.lean |
4 |
4 |
['github-actions', 'martinwintermath', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
joelriou assignee:joelriou |
15-32669 15 days ago |
15-33999 15 days ago |
29-23899 29 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 |
15-24417 15 days ago |
15-27672 15 days ago |
15-30961 15 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 |
15-22316 15 days ago |
21-30214 21 days ago |
21-34196 21 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 |
15-15608 15 days ago |
23-6429 23 days ago |
23-6963 23 days |
| 31092 |
FlAmmmmING author:FlAmmmmING |
feat(Algebra/Group/ForwardDiff.lean): Add theorem `sum_shift_eq_fwdDiff_iter`. |
---
<!-- 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-algebra
new-contributor
label:t-algebra$ |
17/1 |
Mathlib/Algebra/Group/ForwardDiff.lean |
1 |
24 |
['BeibeiX0', 'FlAmmmmING', 'Ruben-VandeVelde', 'dagurtomas', 'github-actions', 'jcommelin', 'mathlib-bors', 'mathlib4-merge-conflict-bot'] |
eric-wieser assignee:eric-wieser |
15-1748 15 days ago |
60-72731 60 days ago |
115-8374 115 days |
| 37934 |
Thmoas-Guan author:Thmoas-Guan |
feat(FieldTheory): definition of transcendental separable field extension |
In this PR, we introduce the concept of separably generated field extension and transcendental separable field extension.
Further properties will be in #37838
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
102/0 |
Mathlib.lean,Mathlib/FieldTheory/TranscendentalSeparable.lean |
2 |
14 |
['Thmoas-Guan', 'github-actions', 'robin-carlier'] |
eric-wieser assignee:eric-wieser |
15-1746 15 days ago |
105-38261 105 days ago |
113-56426 113 days |
| 38194 |
ryanncode author:ryanncode |
feat(LinearAlgebra/BilinearForm): add indefinite metrics |
Add the `IndefiniteMetric` structure to support vector spaces equipped with a non-degenerate, symmetric, indefinite bilinear form.
Provide the algebraic foundation for indefinite inner product spaces by formalizing the metric via `LinearMap.BilinForm` and extracting its associated quadratic form without enforcing the `IsPosSemidef` typeclass.
Previously, mathlib required strictly positive-definite metrics to instantiate inner product spaces (`InnerProductSpace`), which prevented the formalization of indefinite geometries without causing typeclass inference failures. Bridge this gap by isolating the symmetric bilinear form from topological and positivity constraints, allowing the library to handle generalized indefinite metric spaces safely.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
47/0 |
Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/IndefiniteMetric.lean |
2 |
5 |
['dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'ryanncode'] |
kim-em assignee:kim-em |
15-1745 15 days ago |
92-45073 92 days ago |
108-14830 108 days |
| 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 |
11/31 |
Mathlib/Data/Real/Basic.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean |
2 |
18 |
['JovanGerb', 'Vierkantor', 'eric-wieser', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
eric-wieser assignee:eric-wieser |
15-1744 15 days ago |
67-604 67 days ago |
126-85651 126 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 |
28/24 |
Mathlib/Combinatorics/SimpleGraph/Copy.lean |
1 |
26 |
['FordUniver', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'mitchell-horner'] |
b-mehta assignee:b-mehta |
15-1743 15 days ago |
37-33871 37 days ago |
91-54155 91 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
|
227/0 |
Mathlib.lean,Mathlib/RingTheory/MvPolynomial/DeterminantalIdeal.lean |
2 |
3 |
['WangJiabai', 'github-actions'] |
mattrobball assignee:mattrobball |
15-1742 15 days ago |
79-30331 79 days ago |
79-30319 79 days |
| 41198 |
Raph-DG author:Raph-DG |
feat(AlgebraicGeometry): degree of a zero-cycle |
In this PR, we define the degree of a zero-cycle as in https://stacks.math.columbia.edu/tag/0AZ0
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry
large-import
|
107/2 |
Mathlib/AlgebraicGeometry/AlgebraicCycle/Basic.lean,Mathlib/AlgebraicGeometry/ResidueField.lean,Mathlib/Topology/LocallyFinsupp.lean |
3 |
13 |
['Raph-DG', 'github-actions', 'joelriou'] |
kim-em assignee:kim-em |
15-1740 15 days ago |
47-61796 47 days ago |
50-46065 50 days |
| 40782 |
tb65536 author:tb65536 |
feat(Combinatorics/SimpleGraph/Coloring/EdgeLabeling): add predicates for monochromatic subsets |
This PR adds predicates for monochromatic subsets, in preparation for Ramsey theory.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
143/0 |
Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeLabeling.lean |
1 |
26 |
['SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'tb65536'] |
nobody |
15-845 15 days ago |
50-14542 50 days ago |
62-59770 62 days |
| 41703 |
plp127 author:plp127 |
perf(Condensed/Light): speedup kernel typechecking of `InternalProjectivityProof.cocone` |
Speedup kernel typechecking of `InternalProjectivityProof.cocone` in `Mathlib/Condensed/Light/Sequence.lean`. `Functor.map_comp` for `lightProfiniteToLightCondSet` holds by `rfl`, but rewriting backwards with `Functor.map_comp` explicitly in `simp` makes the subsequent `rfl` faster in the kernel because it doesn't need to unfold as much. See [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/kernelbarfing.20in.20mathlib/near/609873490).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-condensed |
2/2 |
Mathlib/Condensed/Light/Sequence.lean |
1 |
5 |
['github-actions', 'grunweg', 'leanprover-radar', 'plp127'] |
nobody |
15-844 15 days ago |
41-29514 41 days ago |
41-29502 41 days |
| 40410 |
seewoo5 author:seewoo5 |
feat(DihedralGroup): center of $D_n$ for even $n\ne 2$ |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
For even $n \ne 2$, center of $D_n$ is generated by the rotation `r (n/2)`. This is a companion of `center_eq_bot_of_odd_ne_one` proved in #33971. Initial code & further golfing is done by Claude Opus 4.5.
[](https://gitpod.io/from-referrer/)
|
t-algebra
LLM-generated
t-group-theory
label:t-algebra$ |
41/0 |
Mathlib/GroupTheory/SpecificGroups/Dihedral.lean |
1 |
11 |
['SnirBroshi', 'github-actions', 'plp127', 'seewoo5'] |
nobody |
15-839 15 days ago |
74-70747 74 days ago |
75-46352 75 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'] |
nobody |
15-838 15 days ago |
52-33565 52 days ago |
52-33828 52 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'] |
TwoFX assignee:TwoFX |
14-84980 14 days ago |
40-3865 40 days ago |
76-14637 76 days |
| 42583 |
attilavjda author:attilavjda |
chore(Analysis/Calculus/FDeriv/Prod): deprecate differentiable*_finCons' as duplicates |
The four primed differentiable*_finCons' lemmas are definitionally the unprimed ones (@…' = @… := rfl). Replaced by deprecated aliases, and repointed four in-file uses.
Aristotle found this duplication.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis
new-contributor
|
12/28 |
Mathlib/Analysis/Calculus/FDeriv/Prod.lean |
1 |
5 |
['Rob23oba', 'attilavjda', 'github-actions'] |
nobody |
14-66933 14 days ago |
15-11510 15 days ago |
15-11498 15 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 |
14-56961 14 days ago |
14-57593 14 days ago |
66-66046 66 days |
| 37954 |
jdhart81 author:jdhart81 |
feat(Data/ENNReal/Inv): add ENNReal.div_mul_div_cancel |
Proves a / b * (b / c) = a / c for b ≠ 0, b ≠ ∞ in ENNReal. Proof via mul_div_assoc and existing div_mul_cancel.
AI Disclosure: This PR was developed with assistance from an LLM (Claude, Anthropic) for proof exploration and text drafting. The proof was compiled and verified locally by the contributor, who understands the mathematical content. This lemma is extracted from a larger formalization of information-theoretic bounds (Zenodo DOI: 10.5281/zenodo.19317983).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
8/0 |
Mathlib/Data/ENNReal/Inv.lean,Mathlib/Data/EReal/Inv.lean |
2 |
12 |
['felixpernegger', 'github-actions', 'jdhart81'] |
nobody |
14-56942 14 days ago |
27-18921 27 days ago |
27-18984 27 days |
| 42421 |
SnirBroshi author:SnirBroshi |
feat(Order/CompactlyGenerated/Basic): the supremum of compact elements is compact and other basics |
- `⊥` is compact
- `⊔` of compacts is compact
- `WellFoundedGT` implies that every element is compact
- Generalize `IsCompactlyGenerated` to use `IsLUB`, like `IsCompactElement` & `IsAtomistic`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
84/34 |
Mathlib/Algebra/Lie/Submodule.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/CompactlyGenerated/Intervals.lean |
5 |
1 |
['github-actions'] |
nobody |
14-31756 14 days ago |
19-39632 19 days ago |
19-42575 19 days |
| 39110 |
SnirBroshi author:SnirBroshi |
chore(Data/Set): reduce defeq abuse of `Set α = α → Prop` |
These are among the first places that would fail if `Set α` wasn't defeq to `α → Prop`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
35/20 |
Mathlib/Data/Set/Basic.lean,Mathlib/Data/Set/Defs.lean,Mathlib/Data/Set/Insert.lean,Mathlib/Data/Set/Prod.lean,Mathlib/Order/BooleanAlgebra/Set.lean |
5 |
27 |
['SnirBroshi', 'Vierkantor', 'github-actions', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts', 'themathqueen', 'urkud', 'vihdzp'] |
eric-wieser assignee:eric-wieser |
14-1743 14 days ago |
37-22208 37 days ago |
105-48207 105 days |
| 39722 |
kg583 author:kg583 |
feat(Combinatorics): link `Nat.Partition` to `YoungDiagram` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
AI disclosure: Claude was used to source some proof sketches.
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
large-import
|
111/4 |
Mathlib.lean,Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Combinatorics/Enumerative/Partition/YoungDiagram.lean,Mathlib/Combinatorics/Young/YoungDiagram.lean |
4 |
48 |
['NoahW314', 'YaelDillies', 'github-actions', 'kg583', 'wwylele'] |
b-mehta assignee:b-mehta |
14-1741 14 days ago |
48-17428 48 days ago |
83-12333 83 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 |
13-64800 13 days ago |
13-67958 13 days ago |
42-41122 42 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'] |
riccardobrasca assignee:riccardobrasca |
13-51322 13 days ago |
13-51322 13 days ago |
82-29143 82 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 |
13-30565 13 days ago |
13-31496 13 days ago |
13-32255 13 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 |
13-29218 13 days ago |
13-31594 13 days ago |
13-31582 13 days |
| 42614 |
williamjblair author:williamjblair |
chore(Algebra/Group/Action/Pointwise/Set): generalize smul_mem_smul_set_iff to IsLeftCancelSMul |
The lemma only needs `a • ·` to be injective, which is what `IsLeftCancelSMul` says. Moving it into that section covers the previous `[Group α] [MulAction α β]` case through the existing instance, and also covers `[Mul α] [IsLeftCancelMul α]` acting on itself.
---
[](https://gitpod.io/from-referrer/) |
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
5/4 |
Mathlib/Algebra/Group/Action/Pointwise/Set/Basic.lean |
1 |
3 |
['github-actions', 'williamjblair'] |
nobody |
13-29000 13 days ago |
13-31819 13 days ago |
13-31807 13 days |
| 41052 |
hawkrobe author:hawkrobe |
refactor(RingTheory/HopfAlgebra): relocate `ofSurjective` |
---
Cleanup after #39790, moves `HopfAlgebra.ofSurjective` to `HopfAlgebra/Convolution.lean` and extracts the convolution functoriality.
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
|
93/52 |
Mathlib/RingTheory/Bialgebra/Convolution.lean,Mathlib/RingTheory/Coalgebra/Convolution.lean,Mathlib/RingTheory/HopfAlgebra/Convolution.lean,Mathlib/RingTheory/HopfAlgebra/Quotient.lean |
4 |
11 |
['eric-wieser', 'github-actions', 'hawkrobe'] |
nobody |
13-19132 13 days ago |
13-19748 13 days ago |
58-37758 58 days |
| 39287 |
xgenereux author:xgenereux |
feat(Localization/AtPrime/Basic): upgrade `equivQuotMaximalIdeal` to an AlgEquiv |
The definition [IsLocalization.AtPrime.equivQuotMaximalIdealPow](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Localization/AtPrime/Basic.html#IsLocalization.AtPrime.equivQuotMaximalIdealPow) was added in #36783.
The case with `n = 1` is still important and interesting. I have upgraded it to an AlgEquiv using `equivQuotMaximalIdealPow`.
This did break a few small things, because we need to bridge back to a `RingEquiv` in some places. I took the liberty to add some missing `apply` lemmas to ease fixing these proofs.
Disclaimer: I used Claude to suggest the first shot and refined it from there.
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 |
47/63 |
Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/Localization/AtPrime/Extension.lean,Mathlib/RingTheory/Trace/Quotient.lean |
3 |
5 |
['github-actions', 'mathlib-merge-conflicts', 'wwylele', 'xgenereux'] |
mattrobball assignee:mattrobball |
13-11143 13 days ago |
13-12090 13 days ago |
76-48364 76 days |
| 38855 |
SnirBroshi author:SnirBroshi |
feat(Order/ConditionallyCompleteLattice/Indexed): `≤` version of `ciSup_or'` for `ConditionallyCompleteLattice` |
Deprime `ciSup_or'` because there's no `ciSup_or`, and add a `≤` version (and dual) for `ConditionallyCompleteLattice`.
Only `≤` because equality does not hold when `p ≠ q` without `sSup ∅ = ⊥`.
---
`ciSup_or'` can't have a dual because there's no dual to `ConditionallyCompleteLinearOrderBot`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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/1 |
Mathlib/Order/ConditionallyCompleteLattice/Indexed.lean |
1 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
bryangingechen assignee:bryangingechen |
13-9737 13 days ago |
13-12199 13 days ago |
102-305 102 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 |
13-8963 13 days ago |
13-12484 13 days ago |
13-12472 13 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'] |
chrisflav assignee:chrisflav |
13-1788 13 days ago |
13-1788 13 days ago |
40-36307 40 days |
| 38018 |
matthewjasper author:matthewjasper |
feat(Algebra): expand Subalgebra.restrictScalars API |
Add an instance for the original algebra structure, the implied scalar tower instances, and the algebra equivalence with the original subalgebra. Use this to remove some `set_option backward.isDefEq.respectTransparency`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
tech debt
|
61/15 |
Mathlib/Algebra/Algebra/Subalgebra/Tower.lean,Mathlib/RingTheory/AlgebraicIndependent/TranscendenceBasis.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean |
4 |
17 |
['eric-wieser', 'github-actions', 'kbuzzard', 'leanprover-radar', 'mariainesdff', 'mathlib-merge-conflicts', 'matthewjasper'] |
joneugster assignee:joneugster |
13-1748 13 days ago |
40-9172 40 days ago |
114-61438 114 days |
| 39219 |
WenrongZou author:WenrongZou |
feat(FieldTheory/Finite): add variant theorems for `expand_card` |
Add `MvPolynomial, MvPowerSeries, PowerSeries` version of `FiniteField.expand_card`, which is only for polynomial.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
37/3 |
Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/FiniteField.lean,Mathlib/RingTheory/MvPolynomial/Expand.lean,Mathlib/RingTheory/MvPowerSeries/Expand.lean,Mathlib/RingTheory/PowerSeries/Expand.lean |
5 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
joneugster assignee:joneugster |
13-1746 13 days ago |
35-53469 35 days ago |
99-57238 99 days |
| 41903 |
felixpernegger author:felixpernegger |
chore: simplify proofs with `grind` |
These all come from the [weekly linting log](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Weekly.20linting.20log) "Info messages count".
Note that that counter has two false positives which arise due to "all_goals". These are not included here obviously, but all others are (can undo some if they seriously hurt performance).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt |
10/40 |
Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/AlgebraicTopology/SimplexCategory/ToMkOne.lean,Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Convex/MetricSpace.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/Combinatorics/Hypergraph/Basic.lean,Mathlib/Data/List/Defs.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean,Mathlib/MeasureTheory/MeasurableSpace/Defs.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/MeasureTheory/SetSemiring.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/Order/CountableSupClosed.lean,Mathlib/Probability/Moments/SubGaussian.lean,Mathlib/Probability/Process/LocalProperty.lean,Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean,Mathlib/Topology/Order/Basic.lean |
18 |
11 |
['Vierkantor', 'felixpernegger', 'github-actions', 'leanprover-radar', 'vlad902'] |
JovanGerb assignee:JovanGerb |
13-1744 13 days ago |
36-21098 36 days ago |
36-21105 36 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 |
13-1449 13 days ago |
13-1503 13 days ago |
13-2535 13 days |
| 42630 |
will1491 author:will1491 |
feat(Analysis/Complex): define Wirtinger derivatives |
Define the Wirtinger derivatives `Complex.wirtingerDeriv` and `Complex.wirtingerDerivBar` from `fderiv ℝ`, and prove: the Cauchy-Riemann characterization of complex differentiability (pointwise and on open sets), agreement of `wirtingerDeriv` with `deriv` for holomorphic functions, additivity, Leibniz product rules, conjugation identities, both Wirtinger chain rules, and the Wirtinger decomposition of a real-linear map `ℂ →L[ℝ] ℂ`.
Extracted from https://github.com/will1491/RiemannDynamics, where it underlies the Beltrami-equation and Cauchy/Beurling-transform theory used in the proof of the measurable Riemann mapping theorem.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis
new-contributor
|
253/0 |
Mathlib.lean,Mathlib/Analysis/Complex/Wirtinger.lean |
2 |
2 |
['github-actions'] |
nobody |
12-81511 12 days ago |
12-82106 12 days ago |
12-82094 12 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).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
146/0 |
Mathlib.lean,Mathlib/Topology/EMetricSpace/PathLength.lean,Mathlib/Topology/Path.lean |
3 |
72 |
['CoolRmal', 'Zeta-Wu', 'felixpernegger', 'github-actions', 'pelicanhere', 'scholzhannah'] |
scholzhannah assignee:scholzhannah |
12-67423 12 days ago |
25-80585 25 days ago |
27-49767 27 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 |
12-60961 12 days ago |
13-57778 13 days ago |
13-57766 13 days |
| 41100 |
tb65536 author:tb65536 |
refactor(RingTheory/Localization/AtPrime/Basic): replace `IsLiesOverAlgebra` with `IsScalarTower` |
As @erdOne pointed out on #38465, the recently added `IsLiesOverAlgebra` is equivalent to assuming `IsScalarTower`. So I've deprecated `IsLiesOverAlgebra` and switched everything over to `IsScalarTower`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
t-algebra
label:t-algebra$ |
74/58 |
Mathlib/RingTheory/Flat/Localization.lean,Mathlib/RingTheory/LocalRing/ResidueField/Fiber.lean,Mathlib/RingTheory/LocalRing/ResidueField/Ideal.lean,Mathlib/RingTheory/LocalRing/ResidueField/Instances.lean,Mathlib/RingTheory/LocalRing/ResidueField/Polynomial.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/QuasiFinite/Basic.lean,Mathlib/RingTheory/QuasiFinite/Weakly.lean,Mathlib/RingTheory/RamificationInertia/Inertia.lean,Mathlib/RingTheory/RamificationInertia/Ramification.lean,Mathlib/RingTheory/Unramified/LocalRing.lean,Mathlib/RingTheory/Unramified/LocalStructure.lean,Mathlib/RingTheory/Unramified/Locus.lean |
13 |
9 |
['chrisflav', 'github-actions', 'mathlib-merge-conflicts', 'tb65536'] |
nobody |
12-57477 12 days ago |
12-58507 12 days ago |
57-25472 57 days |
| 41808 |
JX-Mo author:JX-Mo |
feat(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, despite the refactored code being longer).
This also has very direct downstream benefit in smooth representation theory: `ind` packages both induction and coinvariant in a single functor and these API lemmas will serve both of Hecke modules and Jacquet modules. |
t-algebra
new-contributor
label:t-algebra$ |
102/59 |
Mathlib/RepresentationTheory/FiniteIndex.lean,Mathlib/RepresentationTheory/Induced.lean |
2 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
12-48282 12 days ago |
12-48866 12 days ago |
38-37813 38 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 |
12-38154 12 days ago |
36-740 36 days ago |
36-1249 36 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 |
12-37521 12 days ago |
12-39071 12 days ago |
12-39059 12 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 |
12-28915 12 days ago |
12-29615 12 days ago |
24-57013 24 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 |
12-27957 12 days ago |
36-13124 36 days ago |
36-13112 36 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 |
12-27741 12 days ago |
12-31049 12 days ago |
12-33455 12 days |
| 41098 |
vlad902 author:vlad902 |
feat(RingTheory): krull dimension of a polynomial ring in an infinite number of variables |
Add a simp lemma that `dim(R[X_1, ...]) = ∞` and also derive an ENat-valued lemma that `dim(R[X_s]) = dim(R) + card(X_s)`. Note that I keep the original lemma for finite index sets as @[simp] since this is likely to be the more common case in practice.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
32/1 |
Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/KrullDimension/NonZeroDivisors.lean,Mathlib/RingTheory/KrullDimension/Polynomial.lean |
4 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
12-26600 12 days ago |
12-29880 12 days ago |
46-80788 46 days |
| 40023 |
chenson2018 author:chenson2018 |
chore(AlgebraicTopology): refactor proofs where `grind?` fails |
These are sources of technical debt as now reported in the [weekly linting report](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Weekly.20linting.20log/with/544658968). The idea is that a successful grind proof can fail to report the theorems it used via grind?, which means that if these proofs break across toolchains that it becomes significantly harder to repair.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology
will-close-soon
|
11/5 |
Mathlib/AlgebraicTopology/SimplexCategory/DeltaZeroIter.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplices.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplicesSubcomplex.lean |
4 |
4 |
['chenson2018', 'github-actions', 'grunweg', 'joelriou'] |
nobody |
12-21865 12 days ago |
86-31603 86 days ago |
86-31591 86 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
easy
|
10/0 |
Mathlib/Order/UpperLower/Closure.lean |
1 |
5 |
['AntoineduFresne', 'SnirBroshi', 'github-actions', 'tdwag123'] |
nobody |
12-14995 12 days ago |
12-17489 12 days ago |
14-54634 14 days |
| 42633 |
SnirBroshi author:SnirBroshi |
feat(Order/OrderIsoNat): every chain is finite when `<` and `>` are well-founded |
Also generalizes `IsChain.linearOrder` from `PartialOrder` to `Preorder`.
This requires changing the chain hypothesis from `≤` to `<`, but in a `PartialOrder` you could use [`IsChain.lt_of_le`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/Preorder/Chain.html#IsChain.lt_of_le) to go back (do `h.lt_of_le.linearOrder` instead of `h.linearOrder`).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
19/8 |
Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/Preorder/Chain.lean,Mathlib/SetTheory/Cardinal/EventuallyConst.lean |
3 |
1 |
['github-actions'] |
nobody |
12-11951 12 days ago |
12-15524 12 days ago |
12-19521 12 days |
| 42200 |
tb65536 author:tb65536 |
feat(GroupTheory/Finiteness): add general `IsMulFG` |
This PR adds a general `IsMulFG` predicate that generalizes all four existing definitions `Monoid.FG`, `Submonoid.FG`, `Group.FG` and `Subgroup.FG`. Ultimately the plan will be to deprecate all four existing definitions in favor of `IsMulFG`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-group-theory
label:t-algebra$ |
178/0 |
Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Data/Set/Finite/Basic.lean,Mathlib/GroupTheory/Finiteness.lean |
3 |
13 |
['eric-wieser', 'github-actions', 'tb65536', 'vihdzp', 'vlad902'] |
nobody |
12-8558 12 days ago |
12-12203 12 days ago |
25-84425 25 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 |
12-6392 12 days ago |
12-13549 12 days ago |
12-13537 12 days |
| 41438 |
SnirBroshi author:SnirBroshi |
doc(Matrix): mention bundled forms in docstrings |
Followup to https://github.com/leanprover-community/mathlib4/pull/39123#issuecomment-4798925362
---
As in `Matrix.map`s docstring, the convention is "This is available in bundled forms as" and then listing bundled versions in asterisk bullet-points.
If there's only one item I went with "This is available in a bundled form as X".
For `Matrix.entry{AddHom/AddMonoidHom/LinearMap}` none of them is the "main" definition, so I added "see also" for each of them listing the other two.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
88/15 |
Mathlib/Data/Matrix/Basic.lean,Mathlib/Data/Matrix/Composition.lean,Mathlib/Data/Matrix/Diagonal.lean,Mathlib/Data/Matrix/Mul.lean,Mathlib/LinearAlgebra/Matrix/ConjTranspose.lean,Mathlib/LinearAlgebra/Matrix/Defs.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean,Mathlib/LinearAlgebra/Matrix/Permutation.lean |
8 |
16 |
['SnirBroshi', 'eric-wieser', 'github-actions', 'mathlib-splicebot', 'themathqueen'] |
nobody |
12-1963 12 days ago |
12-1963 12 days ago |
47-39526 47 days |
| 36323 |
SproutSeeds author:SproutSeeds |
feat(Inversion): discontinuity and center/global fderiv formulas |
Part of #5939
Adds the discontinuity-at-center lemma for inversion and derives the center/global `fderiv` formulas from it. Rebased the inversion follow up onto current master after #36313 merged, removing the duplicated `Basic.lean` history and leaving only the intended `Calculus.lean` changes.
The incremental scope above #36313 is limited to `Mathlib/Geometry/Euclidean/Inversion/Calculus.lean`.
## Verification
- `lake build Mathlib.Geometry.Euclidean.Inversion.Calculus`
- `lake exe lint-style Mathlib.Geometry.Euclidean.Inversion.Calculus`
- `git diff --check`
Tools used: Codex 5.3 extra high
---
Happy to adjust naming, placement, or proof style based on maintainer preference.
|
t-euclidean-geometry
new-contributor
LLM-generated
|
22/0 |
Mathlib/Geometry/Euclidean/Inversion/Calculus.lean |
1 |
4 |
['SproutSeeds', 'github-actions', 'mathlib-merge-conflicts'] |
jsm28 assignee:jsm28 |
12-1748 12 days ago |
12-80866 12 days ago |
12-80854 12 days |
| 37745 |
AntoineChambert-Loir author:AntoineChambert-Loir |
feat(RingTheory/AugmentationIdeal): base change for augmentation ideals |
Base change for augmentation ideals
Co-authored with: @mariainesdff
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #37744
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
t-algebra
large-import
label:t-algebra$ |
441/1 |
Mathlib.lean,Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Module/Submodule/Range.lean,Mathlib/LinearAlgebra/Projection.lean,Mathlib/LinearAlgebra/Span/Defs.lean,Mathlib/LinearAlgebra/TensorProduct/Projection.lean,Mathlib/LinearAlgebra/TensorProduct/RightExactness.lean,Mathlib/LinearAlgebra/TensorProduct/Submodule.lean,Mathlib/Order/Disjoint.lean,Mathlib/RingTheory/Ideal/IsAugmentation.lean,Mathlib/RingTheory/TensorProduct/Basic.lean |
12 |
18 |
['AntoineChambert-Loir', 'dagurtomas', 'github-actions', 'mathlib-dependent-issues'] |
joneugster assignee:joneugster |
12-1747 12 days ago |
100-51325 100 days ago |
101-25289 101 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'] |
joneugster assignee:joneugster |
12-1745 12 days ago |
93-55705 93 days ago |
93-56293 93 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
|
330/3 |
Mathlib/CategoryTheory/Bicategory/Extension.lean,Mathlib/CategoryTheory/Bicategory/Kan/IsKan.lean |
2 |
3 |
['FernandoChu', 'github-actions', 'grunweg'] |
robin-carlier assignee:robin-carlier |
12-1743 12 days ago |
46-59188 46 days ago |
46-59176 46 days |
| 42588 |
sharky564 author:sharky564 |
fix(Tactic/Linarith): attribute `linarith?` suggestions to the correct hypotheses |
`runLinarith` returned indices into the post-preprocessing fact list, but `linarithUsedHyps` applies them to the pre-preprocessing hypothesis list, so `linarith?` could suggest the wrong hypotheses or fail outright. Fixed this by tagging each fact with the indices of the original hypotheses it was derived from (`TaggedProof`), threaded through all preprocessors.
---
This addresses the issue raised in #41471.
AI disclosure:
I did have AI assistance (Claude Opus/Fable) with this, but this was for me to learn more Lean syntax not typically seen in writing proofs. The diagnosis and idea for the solution was mine, and debugging and documentation was with AI assistance.
I am also aware this tool was initially written with Codex.
[](https://gitpod.io/from-referrer/)
|
t-meta |
367/144 |
Mathlib/Tactic/Linarith/Datatypes.lean,Mathlib/Tactic/Linarith/Frontend.lean,Mathlib/Tactic/Linarith/NNRealPreprocessor.lean,Mathlib/Tactic/Linarith/Preprocessing.lean,MathlibTest/Tactic/Linarith/Basic.lean,MathlibTest/Tactic/Linarith/NNReal.lean |
6 |
4 |
['github-actions', 'kbuzzard', 'leanprover-radar'] |
thorimur assignee:thorimur |
12-1739 12 days ago |
14-72178 14 days ago |
14-72166 14 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 |
8 |
['YijunYuan', 'github-actions', 'pechersky'] |
nobody |
12-841 12 days ago |
33-63685 33 days ago |
34-37849 34 days |
| 42553 |
FrankieNC author:FrankieNC |
refactor(Topology/Compactness): deduce `nhdsSet_prod_eq_biSup` from the `inf` version |
Answer the TODO above `IsCompact.nhdsSet_inf_eq_biSup`: prove `IsCompact.mem_nhdsSet_inf_of_forall` directly by compact induction and deduce the product version from it, instead of the other way around. The deduction endows `Y` with the indiscrete topology, so that `𝓝ˢ K ×ˢ l` becomes `𝓝ˢ (K ×ˢ {y₀}) ⊓ comap Prod.snd l` with `K ×ˢ {y₀}` compact.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
45/38 |
Mathlib/Topology/Compactness/Compact.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
CoolRmal assignee:CoolRmal |
11-85699 11 days ago |
15-17525 15 days ago |
16-10152 16 days |
| 42244 |
marcelolynch author:marcelolynch |
perf(LinearAlgebra/TensorProduct/Tower): remove unused P' instance binders |
The Semiring section of this file declares `[Module B P']`, `[IsScalarTower R B P']`, and `[SMulCommClass A B P']`. The three declarations that use `P'` (`map_comp`, `rTensor_comp`, `congr_trans`) need only the `R`/`A`-side instances. No other declaration mentions `P'`. The unused binders are candidates in every `IsScalarTower` and `SMulCommClass` search in the section.
This PR removes the three unused instance binders. No signature changes: a full dump of the module's constant types is identical before and after. Standalone elaboration of the file goes from 5.47 s to 5.15 s (medians of 6 interleaved runs, −6 %).
Same mechanism as #42214 and #42238.
🤖 Generated with [Claude Code](https://claude.com/claude-code) |
t-algebra label:t-algebra$ |
2/2 |
Mathlib/LinearAlgebra/TensorProduct/Tower.lean |
1 |
3 |
['github-actions', 'leanprover-radar', 'marcelolynch'] |
nobody |
11-77015 11 days ago |
11-77035 11 days ago |
11-77023 11 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 |
11-62538 11 days ago |
11-64396 11 days ago |
11-65887 11 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 |
11-60861 11 days ago |
11-62589 11 days ago |
11-65610 11 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 |
11-57432 11 days ago |
11-74039 11 days ago |
11-76065 11 days |
| 42505 |
attilavjda author:attilavjda |
chore(Algebra/Tropical/Basic): deduplicate five pairs of lemmas |
`On a LinearOrder`, `⊓`/`⊔` are `min`/`max`, so `trop_inf`, `untrop_sup`, `inf_eq_add`, and `trop_sup_def` are the same statements as `trop_min`, `untrop_max`, `min_eq_add`, and `trop_max_def`, respectively (three duplicated `simp` lemmas). Likewise, `injective_trop`/`injective_untrop` duplicate `trop_injective`/`untrop_injective`. The removed lemmas become deprecated aliases.
[I used Aristotle AI](https://github.com/attilavjda/formal-contributions/blob/main/tropical_dedup_lemmas/RequestProject/TropicalDedup.lean) it helped find the duplicates, and generated the solutions, verified the equivalences, and helped in understanding the proofs, and meaning of the refactor.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
LLM-generated
label:t-algebra$ |
8/17 |
Mathlib/Algebra/Tropical/Basic.lean |
1 |
2 |
['github-actions', 'wwylele'] |
nobody |
11-54258 11 days ago |
17-19933 17 days ago |
17-23793 17 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 |
11-54092 11 days ago |
11-55429 11 days ago |
11-55417 11 days |
| 42647 |
martinwintermath author:martinwintermath |
feat(Geometry/Convex): add polytopes |
This PR adds
* the predicate `IsPolytope` for a subset of a `ConvexSpace`.
* the bundled object `Polytope`
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 |
200/0 |
Mathlib.lean,Mathlib/Geometry/Convex/Polytope/Basic.lean,Mathlib/Geometry/Convex/Polytope/Lattice.lean |
3 |
9 |
['Parcly-Taxel', 'github-actions', 'martinwintermath', 'vihdzp'] |
nobody |
11-53282 11 days ago |
12-30194 12 days ago |
12-30483 12 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 |
11-53208 11 days ago |
11-54295 11 days ago |
11-54283 11 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 |
11-52167 11 days ago |
64-84238 64 days ago |
66-27656 66 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 |
11-51898 11 days ago |
11-56247 11 days ago |
11-57798 11 days |
| 42594 |
harahu author:harahu |
chore(Algebra): tidy markdown headers |
This PR ensures files in `Mathlib/Algebra` have one and only one H1 header, in accordance with the style guide. It also fixes other minor formatting issues related to headers in the touched files.
The new headers that this PR introduces were authored by Claude Opus 5.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
31/17 |
Mathlib/Algebra/Algebra/Subalgebra/IsSimpleOrder.lean,Mathlib/Algebra/AlgebraicCard.lean,Mathlib/Algebra/Category/Grp/FiniteGrp.lean,Mathlib/Algebra/Category/Grp/ZModuleEquivalence.lean,Mathlib/Algebra/Category/ModuleCat/Adjunctions.lean,Mathlib/Algebra/CharP/Frobenius.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Map.lean,Mathlib/Algebra/Lie/Prod.lean,Mathlib/Algebra/Module/SpanRankOperations.lean,Mathlib/Algebra/Module/StablyFree/FreeOfInvertible.lean,Mathlib/Algebra/Module/Submodule/Equiv.lean,Mathlib/Algebra/MvPolynomial/Counit.lean,Mathlib/Algebra/MvPolynomial/Expand.lean,Mathlib/Algebra/MvPolynomial/Funext.lean,Mathlib/Algebra/Order/Archimedean/Hom.lean,Mathlib/Algebra/Order/Interval/Set/Group.lean,Mathlib/Algebra/Order/Monoid/ToMulBot.lean |
17 |
1 |
['github-actions'] |
nobody |
11-51552 11 days ago |
14-18145 14 days ago |
14-18133 14 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 |
11-50563 11 days ago |
11-56265 11 days ago |
11-58745 11 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 |
11-48401 11 days ago |
18-59730 18 days ago |
18-59718 18 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'] |
CoolRmal assignee:CoolRmal |
11-48231 11 days ago |
17-24478 17 days ago |
17-24466 17 days |
| 42176 |
yuanyi-350 author:yuanyi-350 |
feat(RingTheory/AlgebraicIndependent): upgrade polynomial equivalence |
|
t-ring-theory |
13/26 |
Mathlib/RingTheory/AlgebraicIndependent/Basic.lean,Mathlib/RingTheory/AlgebraicIndependent/Transcendental.lean |
2 |
1 |
['github-actions'] |
nobody |
11-47957 11 days ago |
26-60103 26 days ago |
26-60091 26 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 |
442/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 |
11-47747 11 days ago |
11-47798 11 days ago |
11-47986 11 days |
| 41705 |
kbuzzard author:kbuzzard |
perf: speed up kernel typechecking of some of mathlib's slowest declarations |
This PR changes some of the proofs in mathlib which were slowest to typecheck in the kernel. Typically there is some kind of defeq abuse going on in master, which the elaborator is quick to accept but which the kernel doesn't like, typically resulting in the unfolding of a large amount of stuff. Hopefully all the changes are uncontroversial. The problematic declarations were located with an LLM and changes were also initially written by an LLM but some fixes were complex, and I removed most of these from his PR because they were fiddling with parts of the codebase I didn't know well. I have now gone through everything manually, tidied up, and tested that indeed this is making mathlib quicker in every case.
The added declaration `strictMono_valueGroupEquiv` in `Mathlib/RingTheory/DedekindDomain/AdicValuation.lean` is to tidy up one of the slow proofs. |
LLM-generated |
21/11 |
Mathlib/Algebra/Category/ModuleCat/Sheaf/PushforwardContinuous.lean,Mathlib/Analysis/InnerProductSpace/Adjoint.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/Etale/Field.lean |
4 |
9 |
['github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-merge-conflicts', 'metakunt'] |
nobody |
11-44776 11 days ago |
26-39709 26 days ago |
26-39975 26 days |
| 41938 |
rosborn author:rosborn |
chore(Linter/DirectoryDependency): move forbidden directories into a JSON file |
Co-authored-by: Michael Rothgang <rothgang@math.uni-bonn.de>
---
This PR adopts the work from #26088 and #26406.
The JSON file was generated programmatically from the previous hard-coded array and verified to produce an identical relation, with one deliberate exception: the entry ``(`MathlibTest.Header, `Mathlib.Deprecated)`` was dropped.
If this looks good, I can continue work on `allowedImportDirs` and `overrideAllowedImportDirs`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
|
t-linter
maintainer-merge
|
408/318 |
Mathlib/Tactic/Linter/DirectoryDependency.lean,scripts/README.md,scripts/forbiddenDirs.json |
3 |
15 |
['github-actions', 'grunweg', 'joneugster', 'mathlib-merge-conflicts', 'rosborn'] |
grunweg and joneugster assignee:joneugster assignee:grunweg |
11-44552 11 days ago |
11-47732 11 days ago |
29-49704 29 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 |
11-44355 11 days ago |
74-31262 74 days ago |
74-31343 74 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 |
11-43396 11 days ago |
21-21609 21 days ago |
21-21597 21 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
|
168/0 |
Mathlib.lean,Mathlib/Analysis/ODE/Peano.lean |
2 |
2 |
['github-actions'] |
nobody |
11-42888 11 days ago |
11-43447 11 days ago |
27-37654 27 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 |
11-38706 11 days ago |
11-40590 11 days ago |
58-65044 58 days |
| 36412 |
Timeroot author:Timeroot |
refactor(Topology/Perfect): Change PerfectSpace to be a synonym for NeBot |
Refactor PerfectSpace to be, equivalently, just `forall (x : α) : Filter.NeBot (𝓝[≠] x)`.
See [#mathlib4 > Changing PerfectSpace](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Changing.20PerfectSpace/with/575568102) for discussion
This is unmodified output from @Aristotle-Harmonic !
[](https://gitpod.io/from-referrer/)
Co-authored-by: Aristotle (Harmonic) <aristotle-harmonic@harmonic.fun>
|
t-topology
LLM-generated
|
56/52 |
Mathlib/Analysis/Normed/Field/Basic.lean,Mathlib/Analysis/Normed/Module/RCLike/Real.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Algebra/Module/PerfectSpace.lean,Mathlib/Topology/Compactification/OnePoint/Basic.lean,Mathlib/Topology/Perfect.lean,Mathlib/Topology/Separation/Connected.lean |
7 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
11-32757 11 days ago |
11-37123 11 days ago |
11-39668 11 days |
| 39524 |
FordUniver author:FordUniver |
feat(MeasureTheory/Integral/CurveIntegral): integrability and FTC along a line segment |
Specialises curve integration to the line segment between two points: smoothness of the segment as a `C¹` curve, sufficient conditions for a continuous one-form to be integrable along a segment, and a fundamental-theorem-of-calculus identity for the segment integral of a Fréchet derivative. Adds a new `Segment` section to `AffineMap.lean` that includes some previously existing results.
---
Used by a [planned descent-lemma PR for Lipschitz-smooth functions](https://github.com/FordUniver/mathlib4/blob/5ebc6dae88deb11410d21c0a2628f53c092bb536/Mathlib/Analysis/Calculus/LipschitzSmooth/FDeriv.lean#L133), which needs an FTC along an affine line to integrate a directional derivative over a segment. Three points to highlight:
1. I thought about renaming `curveIntegrable_segment` to `curveIntegrable_segment_iff` for consistency with the file's other `_iff`-suffixed biconditionals, but the new `_const` takes a different name slot, so the rename would be an unnecessary public API break.
2. `Path.segment_contDiffOn` is really a fact about `Path.segment` rather than about curve integration, so it would more naturally live in `Convex/PathConnected.lean`. Unfortunately that target is blocked by a build cycle (`Calculus.AddTorsor.AffineMap` already transitively imports `Convex.PathConnected` via `Convex.Topology`/`Convex.StdSimplex`), so it sits with its consumer here.
3. The new `Continuous{,On}.curveIntegrable_segment` lemmas are the obvious `@[fun_prop]` candidates, but `CurveIntegrable` isn't a registered `fun_prop` concept yet; that registration is a small design call (identity/constant/composition choices, plus tagging the file's pre-existing producers) worth its own focused review and is deferred to a follow-up. `Path.segment_contDiffOn` carries the tag since `ContDiffOn` is already registered.
- [x] depends on: #39206
Diff for the changes *just* in this PR over its predecessor: [link](https://github.com/FordUniver/mathlib4/compare/feat/lineMap-contDiff...feat/curveIntegral-segment-FTC) |
t-measure-probability |
51/13 |
Mathlib/MeasureTheory/Integral/CurveIntegral/Basic.lean |
1 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
RemyDegenne assignee:RemyDegenne |
11-26977 11 days ago |
11-26977 11 days ago |
52-59429 52 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 |
11-23540 11 days ago |
11-24157 11 days ago |
14-27837 14 days |
| 36218 |
Brian-Nugent author:Brian-Nugent |
feat(CategoryTheory): Add exact sequences for Sheaf Cohomology |
In this PR, I add the long exact sequence for sheaf cohomology as well as prove that it is functorial. Since sheaf cohomology is defined in terms of `Ext`, this is done using the covariant sequence for `Ext`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #34742
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
238/1 |
Mathlib.lean,Mathlib/Algebra/Homology/SpectralObject/Page.lean,Mathlib/CategoryTheory/ComposableArrows/Basic.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/ExactSequences.lean |
4 |
42 |
['Brian-Nugent', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
robin-carlier assignee:robin-carlier |
11-23121 11 days ago |
16-33987 16 days ago |
65-45605 65 days |
| 42085 |
felixpernegger author:felixpernegger |
chore: remove redundant `backward.inferInstanceAs.wrap.data` exception |
"Redundant" in the sense that `lake build` succeeds without it, so ought to be removable; especially since the exceptions are counted as strong tech debt.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
tech debt
easy
label:t-algebra$ |
0/1 |
Mathlib/Algebra/Category/MonCat/Limits.lean |
1 |
4 |
['felixpernegger', 'github-actions', 'leanprover-radar'] |
nobody |
11-14657 11 days ago |
29-38380 29 days ago |
29-38368 29 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/)
|
|
141/66 |
Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Order/Partition/Finpartition.lean |
2 |
3 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
11-14391 11 days ago |
11-15042 11 days ago |
11-23769 11 days |
| 42690 |
gasparattila author:gasparattila |
feat: lemmas about `edist` on `ℝ≥0∞` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology |
66/10 |
Mathlib/Topology/EMetricSpace/Weak.lean |
1 |
6 |
['felixpernegger', 'gasparattila', 'github-actions'] |
nobody |
11-13785 11 days ago |
11-14358 11 days ago |
11-30824 11 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 |
11-10563 11 days ago |
11-11726 11 days ago |
11-11714 11 days |
| 42667 |
gasparattila author:gasparattila |
chore: make `Set.inclusion` semireducible |
It is currently an abbrev, which confuses `fun_prop` due to dependent types in lemmas like `Topology.IsEmbedding.inclusion`. After this change, `fun_prop` will be able to prove goals like `IsEmbedding f → IsEmbedding (Set.inclusion h ∘ f)`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
18/15 |
Mathlib/Algebra/Algebra/Subalgebra/Directed.lean,Mathlib/Combinatorics/Compactness.lean,Mathlib/Data/Set/Inclusion.lean,Mathlib/Data/Set/UnionLift.lean,Mathlib/Logic/Equiv/Set.lean,Mathlib/ModelTheory/Fraisse.lean,Mathlib/ModelTheory/PartialEquiv.lean,Mathlib/ModelTheory/Substructures.lean,Mathlib/Order/CountableDenseLinearOrder.lean,Mathlib/Topology/Category/TopCat/Opens.lean,Mathlib/Topology/Covering/Basic.lean,Mathlib/Topology/UniformSpace/UniformEmbedding.lean |
12 |
3 |
['gasparattila', 'github-actions', 'plp127'] |
nobody |
11-10356 11 days ago |
11-19577 11 days ago |
11-57482 11 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 |
11-8715 11 days ago |
38-2328 38 days ago |
38-2316 38 days |
| 42091 |
felixpernegger author:felixpernegger |
chore(RingTheory): fix `backward.inferInstanceAs.wrap.data` exception |
I am not sure why this works, but specifying the proof (rather def?) `Ideal.Quotient.algebraQuotientMapQuotient` resolves the necessity of the exception.
The `unfold ResidueField` is not necessarily needed. Also, `infer_instance` etc, does not work even after unfolding.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
tech debt
|
2/2 |
Mathlib/RingTheory/Unramified/LocalRing.lean |
1 |
5 |
['FrankieNC', 'felixpernegger', 'github-actions', 'leanprover-radar'] |
nobody |
11-6793 11 days ago |
11-7462 11 days ago |
29-22507 29 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 |
11-3604 11 days ago |
11-4944 11 days ago |
23-8667 23 days |
| 36442 |
SnirBroshi author:SnirBroshi |
feat(Data/Sym/Sym2/Card): cardinality theorems about `Sym2 α` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
168/0 |
Mathlib.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Data/Sym/Sym2/Card.lean |
4 |
33 |
['SnirBroshi', 'eric-wieser', 'github-actions', 'joneugster', 'mathlib-merge-conflicts', 'themathqueen'] |
TwoFX assignee:TwoFX |
11-1748 11 days ago |
36-31589 36 days ago |
98-6388 98 days |
| 40344 |
FMLJohn author:FMLJohn |
feat(RingTheory/Adjoin/Polynomial/Basic): `Algebra.adjoin_mem_exists_aeval'` and `Algebra.adjoin_eq_exists_aeval'` |
In this pull request, I have proved the following result:
Suppose `R` and `A` are commutative semirings with `Algebra R A`, `S` is a subset of `A`, `a` is an element of `A` that belongs to `adjoin R S`, and `f : σ → A` satisfies `S ⊆ Set.range f`, then there exists a multivariate polynomial `p : MvPolynomial σ R` such that `p.aeval f = a`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/) |
t-ring-theory |
19/0 |
Mathlib/RingTheory/Adjoin/Polynomial/Basic.lean |
1 |
4 |
['github-actions', 'plp127'] |
mattrobball assignee:mattrobball |
11-1744 11 days ago |
76-21799 76 days ago |
76-41745 76 days |
| 40922 |
Thmoas-Guan author:Thmoas-Guan |
feat(Algebra/Module): minimal generators of module over local ring |
In this PR, we proved for fg module over local ring, "two set of minimal generators can be transported by an invertible matrix", implemented as the commuting morphism between the source of the two surjection must be bijective.
(The last lemma is for transport between Koszul complex form two set of generators)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
93/0 |
Mathlib.lean,Mathlib/Algebra/Module/MinimalGenerators.lean |
2 |
1 |
['github-actions'] |
joelriou assignee:joelriou |
11-1739 11 days ago |
61-63891 61 days ago |
61-63879 61 days |
| 40926 |
Thmoas-Guan author:Thmoas-Guan |
feat(LinearAlgebra): lemmas for `exteriorPower.map` |
Lemmas for `exteriorPower.map`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
9/0 |
Mathlib/LinearAlgebra/ExteriorPower/Basic.lean |
1 |
1 |
['github-actions'] |
joelriou assignee:joelriou |
11-1738 11 days ago |
61-60001 61 days ago |
61-59989 61 days |
| 41180 |
xroblot author:xroblot |
feat(NumberTheory/NumberField): congruence for the norm of an unramified prime |
Add `torsionOrder_dvd_absNorm_sub_one'`: if a prime `P` of `𝓞 K` is unramified over `ℤ` and the rational prime below it has norm greater than `2`, then `torsionOrder K` divides `absNorm P - 1`. This is a variant of `torsionOrder_dvd_absNorm_sub_one` that replaces the coprimality hypothesis by unramifiedness.
Also add the helper `pow_torsionOrder_eq_one`.
Co-authored-by: Ashleigh Ratcliffe
Co-authored-by: Bryan Hu
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
t-algebra
label:t-algebra$ |
84/5 |
Mathlib/NumberTheory/NumberField/Ideal/Basic.lean,Mathlib/NumberTheory/NumberField/Units/Basic.lean |
2 |
19 |
['CBirkbeck', 'github-actions', 'tb65536', 'xroblot'] |
riccardobrasca assignee:riccardobrasca |
11-1736 11 days ago |
35-84190 35 days ago |
53-14605 53 days |
| 41517 |
sadasant author:sadasant |
feat(MeasureTheory): define Hellinger affinity |
Define the Hellinger affinity (Bhattacharyya coefficient) of two measures as an `ENNReal`-valued lintegral against the canonical dominating measure `μ + ν`, making the definition total with no absolute-continuity or integrability side conditions. Provide symmetry, invariance under the choice of sigma-finite dominating measure, the self-affinity of a probability measure, the `rnDeriv` and `withDensity` computation rules, the bound `≤ 1` for probability measures (via Hölder with `p = q = 2`), and the characterization that the affinity vanishes iff the measures are mutually singular. Groundwork for a formalization of Kakutani's dichotomy (1948) for infinite products of probability measures.
---
**Design notes.**
On the value type ("why not `ℝ` / `ℝ≥0` / `EReal`"): the `ℝ≥0∞`-valued lintegral against `μ + ν` makes the affinity total, which is what makes the singular direction of Kakutani's dichotomy (planned follow-up PRs) case-split-free — `hellingerAffinity_eq_zero_iff` already characterizes mutual singularity with no absolute-continuity hypothesis. `InformationTheory.klDiv` sets the precedent of an `ℝ≥0∞`-valued, standalone divergence-like quantity. The invariance lemma `hellingerAffinity_eq_lintegral_rnDeriv_mul_rnDeriv` recovers the textbook `∫ √(dμ/dρ · dν/dρ) dρ` for any σ-finite dominating `ρ`.
**Relation to f-divergences** (CC @RemyDegenne for coordination with the planned `fDiv` upstreaming from TestingLowerBounds): the affinity is the f-integral at `f = √·`, equivalently `1 −` the Hellinger-½ divergence, with `H²(μ,ν)/2 = 1 − affinity`. Rather than block on an unlanded framework, this PR keeps the affinity standalone (the `klDiv` pattern); when `fDiv` lands, a single bridging lemma of the shape `fDiv hellingerFun μ ν = 1 - hellingerAffinity μ ν` reconciles them, and I am happy to contribute it. Also happy to move the file to `Mathlib/InformationTheory/` if reviewers prefer that home over `Mathlib/MeasureTheory/Measure/`.
**Roadmap.** This is PR 1 of a planned sequence building toward Kakutani's dichotomy for `Measure.infinitePi` over an arbitrary index type (stronger than the textbook countable statement): the `lintegral` product Fubini and `Measure.pi_withDensity`, the infinite-product/summability bridges, then the singular and absolutely-continuous directions and the packaged dichotomy. Natural follow-up API for this file, available on request: `hellingerAffinity_pos_iff`, monotonicity in each argument, and the relation to the squared Hellinger distance once a distance exists.
**Attribution and AI disclosure.** This material was developed in the public [riemann-venue](https://github.com/idolum-ai/riemann-venue) repository by Daniel Rodriguez in collaboration with Claude Fable 5 (Anthropic), as part of a machine-checked formalization of Kakutani's dichotomy (1948) for infinite products of probability measures. The definitions, proofs, and the drafting of this description were done with Claude Fable 5 via Claude Code, working from a design and statement plan reviewed by the human author; all proofs are checked by Lean (`#print axioms` on the main results reports only `propext`, `Classical.choice`, `Quot.sound`), and the human author reviewed the final form, takes responsibility for it, and will answer all review comments personally. I am applying the `LLM-generated` label per the contribution guidelines. |
t-measure-probability
LLM-generated
new-contributor
|
214/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/Hellinger.lean |
2 |
4 |
['github-actions', 'sadasant'] |
RemyDegenne assignee:RemyDegenne |
11-1734 11 days ago |
46-11187 46 days ago |
46-11175 46 days |
| 42510 |
williamjblair author:williamjblair |
feat(NumberTheory/AdditionChain): addition chains and the doubling bound |
This is an addition chain for `n` is a strictly increasing list `1 = a₀ < a₁ < ⋯ < a_r = n` in which every entry after the first is a sum of two earlier entries. `Nat.additionChainLength n` is the least `r` over all such chains, the classical `ℓ(n)`.
`additionChainLength` is an `sInf` over `List ℕ`, so an explicit chain bounds it above (`Nat.additionChainLength_le`), but nothing bounds it below until the search is confined. `List.IsAdditionChain.getLast_le_two_pow` confines it as a step at most doubles, so `r` steps cannot reach past `2 ^ r`. That gives `Nat.lt_additionChainLength_of_two_pow_lt`, and the two bounds together pin down individual values.
`Nat.exists_isAdditionChain` shows every positive `n` ends some chain, so the length is a minimum of a nonempty set rather than `sInf ∅`.
---
Mathlib has nothing on addition chains at present that I could see. This came out of [formal-conjectures](https://github.com/google-deepmind/formal-conjectures), where it underlies the Scholz conjecture. Here is the relevant [PR](https://github.com/google-deepmind/formal-conjectures/pull/4820)
[](https://gitpod.io/from-referrer/)
|
t-number-theory |
256/0 |
Mathlib.lean,Mathlib/NumberTheory/AdditionChain.lean,docs/references.bib |
3 |
1 |
['github-actions'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
11-1730 11 days ago |
13-29798 13 days ago |
17-16616 17 days |
| 42480 |
SnirBroshi author:SnirBroshi |
feat(Order/SuccPred/Limit): small theorems and generalizations |
Generalizes `IsSucc[Pre]limit.isLUB_Iio` from `LinearOrder` to `SemilatticeInf`,
and `IsSuccLimit.sSup_Iio` from `ConditionallyCompleteLinearOrderBot` to `ConditionallyCompleteLattice`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
64/26 |
Mathlib/Order/Cover.lean,Mathlib/Order/SuccPred/CompleteLinearOrder.lean,Mathlib/Order/SuccPred/Limit.lean,Mathlib/SetTheory/Cardinal/Cofinality/Enum.lean,Mathlib/SetTheory/ZFC/VonNeumann.lean,Mathlib/Topology/Order/AtTopBotIxx.lean,Mathlib/Topology/Order/Completion.lean |
7 |
13 |
['SnirBroshi', 'github-actions', 'vihdzp'] |
nobody |
11-675 11 days ago |
11-3167 11 days ago |
18-4363 18 days |
| 41864 |
kebekus author:kebekus |
feat: estimate for logarithmic counting functions |
In preparation to the proof of the "Lemma of Logarithmic Derivatives" of Value Distribution Theory, establish the standard "Counting Estimate" for the logarithmic counting function. Simplify and streamline the API for restrictions of divisors a little.
This material is used in [Project VD](https://github.com/kebekus/ProjectVD), formalizing Value Distribution Theory for meromorphic functions on the complex plane. Claude Code was used to create this PR.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology
tech debt
LLM-generated
|
124/15 |
Mathlib/Analysis/Complex/ValueDistribution/FirstMainTheorem.lean,Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Basic.lean,Mathlib/Topology/LocallyFinsupp.lean |
3 |
1 |
['github-actions'] |
nobody |
10-65276 10 days ago |
10-65886 10 days ago |
37-24063 37 days |
| 42581 |
SnirBroshi author:SnirBroshi |
chore(LinearAlgebra/Dimension/LinearMap): generalize rank sub-additivity from `DivisionRing` to `HasRankNullity` |
Separated `rank_add_le` & `rank_finsetSum_le` to a new `section` that assumes `Ring` + `HasRankNullity` instead of `DivisionRing`.
Also renamed the `Ring` section to `Semiring` since that's what it contains.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
13/5 |
Mathlib/LinearAlgebra/Dimension/LinearMap.lean |
1 |
1 |
['github-actions'] |
nobody |
10-61851 10 days ago |
15-12224 15 days ago |
15-12212 15 days |
| 42504 |
yuanyi-350 author:yuanyi-350 |
feat(Analysis/Calculus): add Euler's theorem for homogeneous functions |
Add a local, vector-valued version of [Euler's homogeneous function theorem](https://en.wikipedia.org/wiki/Homogeneous_function#Euler's_theorem).
Assume `f (t • x) = w t • f x` for `t` near `1`. If `f` has Fréchet derivative `f'` at `x` and `w` has derivative `w'` at `1`, conclude `f' x = w' • f x`. This formulation works over an arbitrary nontrivially normed field and for functions between normed spaces.
Also provide a corollary under the global homogeneity condition `∀ t y, f (t • y) = w t • f y`, and register both declarations in `docs/1000.yaml`. |
t-analysis |
45/4 |
Mathlib/Analysis/Calculus/LineDeriv/Basic.lean,docs/1000.yaml |
2 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
10-61381 10 days ago |
11-49384 11 days ago |
17-26816 17 days |
| 42699 |
FrankieNC author:FrankieNC |
chore: remove two more `backward.inferInstanceAs.wrap.data` exceptions |
This removes two of the last four `set_option backward.inferInstanceAs.wrap.data false` exceptions from the technical debt counter by using the `@[instance_reducible]` tag.
The `set_option` was stopping the deriving handler from hiding the copied `CoeFun.coe`/`CoeSort.coe` fields behind opaque `._aux_1` constants, which no simp lemma matches. The tag achieves the same by letting the synonyms unfold in the handler's type check (done at `instances` transparency), so the derived instances come out with the same names and values as before.
- `Mathlib/CategoryTheory/Skeletal.lean`: tag `Skeleton` with `@[instance_reducible]`.
- `Mathlib/Algebra/DirectSum/Basic.lean`: swap `@[implicit_reducible]` for `@[instance_reducible]` on `DirectSum` (`implicit` sits above `instances`, so the old tag was not enough).
The remaining two exceptions are handled in separate PRs: #42085 (`Mathlib/Algebra/Category/MonCat/Limits.lean`) and #42091 (`Mathlib/RingTheory/Unramified/LocalRing.lean`).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt |
2/4 |
Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/CategoryTheory/Skeletal.lean |
2 |
9 |
['FrankieNC', 'felixpernegger', 'github-actions', 'jcommelin', 'leanprover-radar'] |
nobody |
10-55663 10 days ago |
10-57677 10 days ago |
11-12968 11 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 |
10-54011 10 days ago |
10-54619 10 days ago |
10-54607 10 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 |
10-52421 10 days ago |
10-54182 10 days ago |
10-54170 10 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 |
10-51657 10 days ago |
10-52477 10 days ago |
41-41984 41 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 |
10-50912 10 days ago |
10-55396 10 days ago |
10-55384 10 days |
| 42716 |
Raph-DG author:Raph-DG |
feat(CategoryTheory): module structure on ext groups |
In this PR, we construct an R module structure on Ext A G n given a ring homomorphism (φ : R →+* End G). We also show that this module structure agrees with the existing module structure on Ext A G n in the case where the ambient category is R linear.
AI disclosure: I had AI perform some cleanups and edits to some code originally written by me, as well as having it move things into the correct files. I also had it create this branch from another branch which I decided had too much content for a single PR.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
50/0 |
Mathlib/Algebra/Homology/DerivedCategory/Ext/Linear.lean |
1 |
2 |
['github-actions', 'mathlib-bors'] |
nobody |
10-48708 10 days ago |
10-48708 10 days ago |
10-56144 10 days |
| 42693 |
justin-palumbo author:justin-palumbo |
feat(Topology/MetricSpace): a Gδ subset of a Polish space is Polish |
Adds `IsGδ.polishSpace`: a Gδ subset of a Polish space is Polish.
The proof follows the outline in Anush Tserunyan's descriptive set theory notes, https://www.math.mcgill.ca/atserunyan/Teaching_notes/dst_lectures.pdf where it is attributed to A. Bernshteyn. The "usual" approach (as in Kechris's Classical Descriptive Set Theory) constructs a complete compatible metric (the "Alexandrov metric"). The approach taken here is snappier to formalize - the idea is to give a closed embeddding from the G\delta set into another Polish space, and appeal to the fact closed subsets of Polish spaces are Polish. [Note the Alexandrov metric is recoverable from the embedding via the induced complete metrics on the product topology.]
This PR is a pure addition: nothing is removed and no existing signature changes. `TopologicalSpace.Opens.CompleteCopy` and `IsOpen.polishSpace` are untouched, so the open case is still proved independently rather than derived from this result.
---
Question: `IsOpen.polishSpace` could now be proven directly from`isGδ.polishSpace`, and `CompleteCopy` completely retired. That feels cleaner to me, given `CompleteCopy` has had no users since it was ported along with everything else in 2023: #3357. The main argument for keeping is that leveraging `CompleteCopy` is slightly more explicit in proving that open subsets are Polish. Happy to remove in a follow-up, in this PR, or not at all :)
LLM usage disclaimer: I wrote an original local version of this PR myself, and then used Claude Opus to double-check / simplify / help me pull out names of relevant theorems from mathlib. The primary non-trivial contribution from LLM was idea of leveraging isClosed_eq (ie proving closure of range by framing the range of the embedding as a countable intersection of pairs satisfying closed equations). I take full responsibility for the code here |
new-contributor
t-topology
|
117/2 |
Mathlib/Topology/MetricSpace/Polish.lean |
1 |
9 |
['felixpernegger', 'github-actions', 'justin-palumbo'] |
nobody |
10-36194 10 days ago |
11-26967 11 days ago |
11-26955 11 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 |
10-31393 10 days ago |
10-33412 10 days ago |
10-34748 10 days |
| 42665 |
SnirBroshi author:SnirBroshi |
chore(SimpleGraph/Coloring/Constructions): some golfs |
Also remove the `2 ≤ n` hypothesis from `cycleGraph.tricoloring`, and spell `two_colorable_iff_forall_loop_even` using `IsBipartite`.
---
- `cycleGraph.tricoloring`: 165ms to 110ms
- `chromaticNumber_cycleGraph_of_odd`: 25ms to 55ms
- `two_colorable_iff_forall_loop_even`: 50ms to 40ms
- `IsTree.coloringTwoOfVert`: 45ms to 75ms
- `IsAcyclic.coloringTwoOfVerts`: 50ms to 50ms
The issues in `tricoloring` kinda remind me of #41338; maybe there's a good lemma that'll help them both, not sure.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
37/64 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Constructions.lean |
2 |
1 |
['github-actions'] |
nobody |
10-29131 10 days ago |
12-16794 12 days ago |
12-16782 12 days |
| 42706 |
felixpernegger author:felixpernegger |
feat(Topology): generalise Lipschitz to `WeakPseudoEMetricSpace` |
The definition of `LipschitzWith` itself, I changed to only require `EDist`, since that is all that being used
(a few generalizations about continuity were made by Codex, but this PR is largely done by hand, so i wouldnt call it LLM generated)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #42688
[](https://gitpod.io/from-referrer/)
|
t-topology |
89/68 |
Mathlib/Topology/EMetricSpace/Lipschitz.lean,Mathlib/Topology/MetricSpace/Antilipschitz.lean |
2 |
6 |
['felixpernegger', 'gasparattila', 'github-actions', 'mathlib-dependent-issues'] |
nobody |
10-26141 10 days ago |
10-26804 10 days ago |
10-27115 10 days |
| 42483 |
bocowgill author:bocowgill |
feat(Topology/MetricSpace/HausdorffDistance): characterize joint minimizers via infDist |
This PR adds two results connecting a generic pseudometric-space profiling principle with orthogonal projection in an inner-product space.
- `Metric.exists_forall_dist_le_iff_forall_infDist_le` gives a generic pseudometric-space attainment/profiling theorem. Assuming the distance from `a` to `U` is attained, it characterizes when `a` can be paired with some `u ∈ U` whose distance is no greater than the distance between any pair in `A × U`. This is possible precisely when `Metric.infDist a U ≤ Metric.infDist a' U` for every `a' ∈ A`. When `a ∈ A`, this characterizes joint minimizers over `A × U`.
- `Submodule.norm_starProjection_orthogonal_eq_infDist` identifies the norm of the orthogonal projection onto `Uᗮ` with the point-to-set distance `Metric.infDist y U`, providing a bridge between the inner-product-space projection API and the generic pseudometric-space theorem.
A later intended application is partialling-out and the Frisch–Waugh–Lovell theorem. There, one can specialize the comparison set and distinguished point to
`A = Set.range (fun z' ↦ y - f z')`
and
`a = y - f z`,
and use the projection-to-`infDist` bridge to translate between orthogonal-residual norms and the generic profiling theorem. The regression-parameterized specialization itself is not part of this PR.
---
### Motivation
These lemmas separate the general profiling argument from the inner-product-space structure used in orthogonal-projection applications.
- The pseudometric-space result shows that, when the distance from `a` to `U` is attained, the `U` variable can be profiled out: finding a pair `(a, u)` whose distance is bounded by every pair in `A × U` reduces to comparing `Metric.infDist a U` with `Metric.infDist a' U` for every `a' ∈ A`. When `a ∈ A`, this is a joint-minimization characterization.
- The inner-product-space result identifies the norm of the orthogonal residual with `Metric.infDist`, providing the bridge needed to apply the generic profiling theorem to orthogonal-projection problems.
This separation is intended to support later formalizations of least squares, regression, and partialling-out/FWL arguments while keeping the profiling theorem independent of linear structure and of any particular parameterization of the comparison set.
### LLM disclosure
For theorem planning and Lean implementation, I used OpenAI Codex substantially. I also used it for suggestions around naming and documentation, for iterating on the proofs, responding to review feedback, and validating my commits locally.
I manually searched for the best locations and earlier results to build upon. I personally reviewed the mathematical statements and Lean code line-by-line, as well as the suggestions around naming and API choices. I also reviewed and confirmed that I can explain each step of the two theorems' proofs.
For the current revision, I ran targeted builds of `Mathlib.Topology.MetricSpace.HausdorffDistance` and `Mathlib.Analysis.InnerProductSpace.Projection.Basic`, as well as the style linter and the environment linter. I performed a `git diff --check`. I also inspected the inferred declaration signatures and axiom dependencies, and compiled a scratch proof recovering the original regression-parameterized statement from the new generic pseudometric-space theorem. Earlier in development, before the reviewer-driven refactor, I also completed a full `lake build` and a full `lake test`.
Please note: This is one of my earliest Mathlib contributions. I welcome corrections or suggestions about all aspects of this PR. I'm prepared to revise it as necessary and to learn from the review. |
t-analysis
LLM-generated
new-contributor
|
29/0 |
Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean |
2 |
13 |
['bocowgill', 'github-actions', 'j-loreaux', 'wwylele'] |
nobody |
10-25654 10 days ago |
10-25654 10 days ago |
17-41178 17 days |
| 40292 |
felixpernegger author:felixpernegger |
chore: replace `by calc` by `calc` whenever possible |
Avoids unnecessarily going into tactic mode, similar to #40223.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
212/212 |
Archive/Imo/Imo1981Q3.lean,Archive/Imo/Imo1982Q1.lean,Archive/Imo/Imo1982Q3.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2024Q3.lean,Archive/Imo/Imo2025Q3.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Indicator.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/MvPolynomial/SchwartzZippel.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semifield.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Algebra/Order/Sub/Defs.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/Algebra/Ring/Invertible.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/Analysis/Calculus/BumpFunction/Normed.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Complex/AbelLimit.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Complex/ValueDistribution/FirstMainTheorem.lean,Mathlib/Analysis/Complex/ValueDistribution/Proximity/Basic.lean,Mathlib/Analysis/Convex/Caratheodory.lean,Mathlib/Analysis/Convex/Continuous.lean,Mathlib/Analysis/Convex/Visible.lean,Mathlib/Analysis/Hofer.lean,Mathlib/Analysis/InnerProductSpace/Defs.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/Matrix/Normed.lean,Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Normed/Field/Approximation.lean,Mathlib/Analysis/ODE/DiscreteGronwall.lean,Mathlib/Analysis/SpecialFunctions/BinaryEntropy.lean,Mathlib/Analysis/SpecialFunctions/Integrals/LogTrigonometric.lean,Mathlib/Analysis/SpecialFunctions/Integrals/PosLogEqCircleAverage.lean,Mathlib/Analysis/SpecialFunctions/JapaneseBracket.lean,Mathlib/Analysis/SpecialFunctions/Log/Base.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Bicategory/Adjunction/Mate.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Lax.lean,Mathlib/CategoryTheory/Bicategory/NaturalTransformation/Oplax.lean,Mathlib/CategoryTheory/Equivalence.lean,Mathlib/CategoryTheory/Limits/Types/Products.lean,Mathlib/CategoryTheory/Localization/Composition.lean,Mathlib/CategoryTheory/MarkovCategory/Positive.lean,Mathlib/CategoryTheory/Monoidal/DayConvolution.lean,Mathlib/CategoryTheory/Monoidal/Rigid/Basic.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Combinatorics/Additive/Energy.lean,Mathlib/Combinatorics/Additive/ErdosGinzburgZiv.lean,Mathlib/Combinatorics/Additive/SubsetSum.lean,Mathlib/Combinatorics/Additive/VerySmallDoubling.lean,Mathlib/Combinatorics/SetFamily/LYM.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Uniform.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Removal.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean,Mathlib/Computability/AkraBazzi/SumTransform.lean,Mathlib/Data/Fintype/BigOperators.lean,Mathlib/Data/List/PeriodicityLemma.lean,Mathlib/Data/Nat/Choose/Vandermonde.lean,Mathlib/Data/Nat/Factorial/Basic.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/FieldTheory/Minpoly/IsConjRoot.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/Tensoriality.lean,Mathlib/GroupTheory/SpecificGroups/Quaternion.lean,Mathlib/InformationTheory/KullbackLeibler/Basic.lean,Mathlib/LinearAlgebra/AffineSpace/Matrix.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean,Mathlib/LinearAlgebra/Matrix/Invertible.lean,Mathlib/LinearAlgebra/RootSystem/RootPositive.lean,Mathlib/MeasureTheory/Constructions/HaarToSphere.lean,Mathlib/MeasureTheory/Covering/Vitali.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Count.lean,Mathlib/MeasureTheory/Integral/Bochner/ContinuousLinearMap.lean,Mathlib/MeasureTheory/Integral/BoundedContinuousFunction.lean,Mathlib/MeasureTheory/Integral/CircleAverage.lean,Mathlib/MeasureTheory/Integral/Gamma.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Integral/MeanValue.lean,Mathlib/MeasureTheory/Measure/AddContent.lean,Mathlib/MeasureTheory/Measure/Count.lean,Mathlib/MeasureTheory/Measure/FiniteMeasure.lean,Mathlib/MeasureTheory/Measure/LevyConvergence.lean,Mathlib/MeasureTheory/Measure/LogLikelihoodRatio.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/FLT/MasonStothers.lean |
140 |
6 |
['github-actions', 'madvorak', 'mathlib-merge-conflicts'] |
nobody |
10-15645 10 days ago |
10-15645 10 days ago |
44-33117 44 days |
| 42326 |
AlyciaBHZ author:AlyciaBHZ |
feat(NumberTheory/Wilson): explicit square root of -1 modulo a prime |
Adds an explicit square root of `-1` in `ZMod p`, together with the half-factorial pairing identity it rests on.
- `ZMod.factorial_eq_neg_one_pow_mul_half_factorial_sq`: for odd `p`, `(p - 1)! = (-1)^m * (m !)^2` in `ZMod p` with `m = (p - 1) / 2`. Only needs `Odd p`, not primality.
- `ZMod.half_factorial_sq_eq_neg_one`: for prime `p` with `p % 4 ≠ 3`, `((p - 1) / 2)!` is a square root of `-1`.
### Why
Mathlib has `exists_sq_eq_neg_one_iff` for existence and `mod_four_ne_three_of_sq_eq_neg_one` for the converse, but nothing takes you from the congruence condition to a specific root. I checked all seventeen uses of `IsSquare (-1 : ZMod _)` currently in Mathlib and none of them exhibits a witness.
A live case: `SumOfTwoSquares/Wilson.lean` in `seewoo5/DifferentProofs` states the pairing identity verbatim in a docstring, though only for `p ≡ 1 mod 4` and assuming primality. I have no consumer for it myself — I hit the gap formalizing something adjacent and it seemed worth contributing rather than keeping local.
The pairing identity is worth having on its own: it is the core step of the standard Wilson argument and holds for any odd `p`, so it is not really about primes.
### AI disclosure
The Lean proofs were drafted with an OpenAI Codex agent orchestrated by Claude Code, and I reviewed the result. I re-ran the duplicate search against current master, CSLib, Batteries, Lean core and by type on Loogle, and ran `lake build` / `runLinter` / `lint-style` by hand.
|
t-number-theory
new-contributor
LLM-generated
|
42/1 |
Mathlib/NumberTheory/Wilson.lean |
1 |
12 |
['AlyciaBHZ', 'bocowgill', 'github-actions', 'wwylele'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
10-13957 10 days ago |
22-47606 22 days ago |
22-47594 22 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 |
10-12874 10 days ago |
19-34307 19 days ago |
21-75815 21 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 |
10-6323 10 days ago |
10-8391 10 days ago |
10-8379 10 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 |
10-5746 10 days ago |
10-5746 10 days ago |
10-5734 10 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'] |
joelriou assignee:joelriou |
10-5480 10 days ago |
63-38597 63 days ago |
65-16663 65 days |
| 25841 |
mitchell-horner author:mitchell-horner |
feat(Combinatorics/SimpleGraph): prove the Kővári–Sós–Turán theorem |
Prove the Kővári–Sós–Turán theorem (an upper bound on the Zarankiewicz function)
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
To indicate co-authors, include lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #19865
- [x] depends on: #20738
- [x] depends on: #27602
- [x] depends on: #34633
[](https://gitpod.io/from-referrer/)
---
*This PR continues the work from #20240.*
*Original PR: https://github.com/leanprover-community/mathlib4/pull/20240* |
t-combinatorics |
244/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/KovariSosTuran.lean,docs/1000.yaml |
3 |
13 |
['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'mitchell-horner'] |
b-mehta assignee:b-mehta |
10-1748 10 days ago |
36-54924 36 days ago |
74-45937 74 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'] |
joneugster assignee:joneugster |
10-1747 10 days ago |
32-22100 32 days ago |
135-64105 135 days |
| 40368 |
Sanghyeok0 author:Sanghyeok0 |
feat: add confluence predicates for relations |
This PR adds a minimal relation-level API for confluence-style properties:
* `Relation.Diamond`
* `Relation.Confluent`
* `Relation.ChurchRosser`
It also adds the basic API connecting these predicates:
* `Relation.ReflTransGen.to_eqvGen`
* `Relation.Join.to_eqvGen`
* `Relation.ChurchRosser.confluent`
* `Relation.Confluent.churchRosser`
The main downstream application is the polynomial-reduction development in
#41475. There, polynomial reduction is treated as an ordinary relation on
`MvPolynomial`, and these predicates are used to formulate confluence and the
Church--Rosser property.
A more general rewriting API exists in CSLib. This PR does not attempt to
upstream that API wholesale; its scope is intentionally limited to the
declarations needed by the downstream polynomial application.
The earlier version of this PR also introduced
`Relation.StronglyConfluent` and additional equivalence packaging. Those
declarations have been removed to keep this PR small and application-driven.
Reference: Becker, Weispfenning, and Kredel,
*Gröbner Bases: A Computational Approach to Commutative Algebra*.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic
new-contributor
|
79/5 |
Mathlib/Logic/Relation.lean |
1 |
8 |
['Sanghyeok0', 'chenson2018', 'github-actions', 'mathlib-merge-conflicts'] |
fpvandoorn assignee:fpvandoorn |
10-1745 10 days ago |
35-46029 35 days ago |
58-57808 58 days |
| 41258 |
ungatz author:ungatz |
feat(Analysis/Fourier/FiniteAbelian): add the Donoho-Stark support uncertainty principle |
This adds the Donoho–Stark support uncertainty inequality for the unitary Fourier transform on a finite abelian group, plus the supporting Fourier-inversion machinery indexed by the Pontryagin dual `AddChar G ℂ`.
The headline:
> **Theorem `AddChar.donoho_stark`.** For nonzero `f : G → ℂ`,
> `Fintype.card G ≤ (support f).ncard * (support (fourierTransform f)).ncard`,
> where `fourierTransform f ψ = |G|^(-1/2) * ∑ g, conj (ψ g) * f g` ranges over `ψ : AddChar G ℂ`.
The proof is the elementary (L¹, L∞) duality argument that any harmonic-analysis textbook gives for the classical `ZMod N` case; no Parseval or Cauchy–Schwarz is needed. The finite-abelian generalisation is folklore (stated in Tao–Vu *Additive Combinatorics* and Terras *Fourier Analysis on Finite Groups*); I did not find it formalised in Mathlib or any other major library.
### Why this belongs in Mathlib
Mathlib already has the supporting infrastructure — character theory of finite abelian groups (`Mathlib.Algebra.Group.AddChar`), character orthogonality and Pontryagin duality (`Mathlib.Analysis.Fourier.FiniteAbelian.{Orthogonality, PontryaginDuality}`). The Donoho–Stark inequality is the canonical application of all three, and its absence is a real gap: I needed it for a downstream operator-uncertainty result (a diagonal-operator `rank * Pauli-support` bound on the finite Heisenberg group reduces to it) and ended up proving it from scratch. Beyond that use, it is a standard tool in compressed sensing on finite abelian groups, additive combinatorics, and discrete signal recovery (the 1989 paper has ~3500 citations).
### What's in this PR
A single new file, `Mathlib/Analysis/Fourier/FiniteAbelian/DonohoStark.lean`:
- `AddChar.fourierTransform` — the unitary (symmetric) Fourier transform indexed by `AddChar G ℂ`;
- `AddChar.fourier_inversion` — the inversion formula;
- `AddChar.norm_fourierTransform_le`, `AddChar.norm_le_sum_norm_fourierTransform` — the two `L∞ ≤ |G|^(-1/2) · L¹` triangle bounds;
- `AddChar.donoho_stark` — the support uncertainty inequality.
Design choices I expect questions on, and my defaults:
- **`ℂ` rather than `RCLike`**: matches the cited literature and the cleanest home of `AddChar.norm_apply`; happy to generalise if preferred.
- **`Set.ncard` for support sizes**: avoids needing `DecidableEq ℂ` in the statement.
- **A new sibling file** of `Orthogonality.lean` / `PontryaginDuality.lean` rather than a subsection: orthogonality is the tool, Donoho–Stark is the application; can inline if preferred.
Deliberately *not* included: the diagonal-operator `rank * Pauli-support ≥ 2^n` corollary from my workspace — the Pauli-word machinery has no natural home in `Analysis/Fourier` yet; happy to factor it into a follow-up if there is interest.
### AI usage disclosure
Per the [AI contribution policy](https://leanprover-community.github.io/contribute/index.html): the original Lean proof was generated by **Aristotle** (Harmonic AI's automated proof system) from a dispatch containing the statement and the (L¹, L∞) proof strategy, as part of my PhD research workspace. I audited the delivery line by line against Donoho–Stark 1989 (the dispatch also produced a kernel-checked counterexample to a tempting wrong variant — replacing rank by the count of distinct eigenvalues — which the 2×2 identity falsifies). The file here is my adaptation to Mathlib conventions and to current master (module system, `Set.ncard` statement, robust cast handling in the inversion proof), with final tactic-level repairs done with the assistance of Claude (Anthropic). I understand and can defend every line without AI assistance. Please add the `LLM-generated` label (I cannot set labels myself).
### Test plan
- [x] `lake build Mathlib.Analysis.Fourier.FiniteAbelian.DonohoStark` clean (0 errors, 0 warnings).
- [x] `#print axioms` on all five declarations: `[propext, Classical.choice, Quot.sound]`.
- [x] `lake exe lint-style` clean; all lines ≤ 100 chars.
- [x] `Mathlib.lean` updated in alphabetical position.
- [x] Imports minimal (`PontryaginDuality` + `RCLike.Basic` only).
### Reference
Donoho, D. L. and Stark, P. B. (1989). *Uncertainty principles and signal recovery.* SIAM Journal on Applied Mathematics, **49**(3): 906–931. https://doi.org/10.1137/0149053
---
|
t-analysis
new-contributor
LLM-generated
|
283/0 |
Mathlib.lean,Mathlib/Analysis/Fourier/FiniteAbelian/DonohoStark.lean |
2 |
4 |
['YaelDillies', 'copilot-pull-request-reviewer', 'felixpernegger', 'github-actions'] |
urkud assignee:urkud |
10-1745 10 days ago |
53-7425 53 days ago |
53-7413 53 days |
| 41420 |
joelriou author:joelriou |
feat(CategoryTheory/Presentable): preservation of `κ`-pure morphisms by `κ`-accessible functors |
---
- [x] depends on: #41200
- [x] depends on: #41190
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
47/2 |
Mathlib/CategoryTheory/Presentable/CardinalPure.lean |
1 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
robin-carlier assignee:robin-carlier |
10-1744 10 days ago |
10-52705 10 days ago |
10-52694 10 days |
| 42145 |
mckoen author:mckoen |
feat(CategoryTheory/Monoidal/Rigid): the double right dual functor is monoidal |
Defines the double right dual functor on a right rigid category, sending `X ↦ Xᘁᘁ`. We show that this functor is monoidal, so that in future PRs (#42150) we can define pivotal categories (rigid categories with a *monoidal* natural isomorphism between the double right dual and the identity).
Currently adds some new API which applies only to right duals. I'm not sure this should be dualized to left duals, as this could bloat the already large Rigid/Basic 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-category-theory |
286/10 |
Mathlib/CategoryTheory/Monoidal/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Rigid/Basic.lean,Mathlib/CategoryTheory/Monoidal/Rigid/Braided.lean,Mathlib/CategoryTheory/Monoidal/Rigid/Functor.lean |
4 |
6 |
['github-actions', 'joelriou', 'kim-em', 'mckoen'] |
robin-carlier assignee:robin-carlier |
10-1740 10 days ago |
12-19702 12 days ago |
21-66235 21 days |
| 42735 |
FrankieNC author:FrankieNC |
chore(Probability/ProbabilityMassFunction): remove defeq option in Monad |
Remove the `set_option backward.isDefEq.respectTransparency` false in `Mathlib/Probability/ProbabilityMassFunction/Monad.lean`, on `bindOnSupport_bindOnSupport`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
t-measure-probability
|
17/6 |
Mathlib/Probability/ProbabilityMassFunction/Monad.lean |
1 |
1 |
['github-actions'] |
kex-y assignee:kex-y |
10-1734 10 days ago |
10-37217 10 days ago |
10-37205 10 days |
| 34963 |
Parcly-Taxel author:Parcly-Taxel |
feat(Archive): proof of the Robbins conjecture |
Cf. [#mathlib4 > Alternative axiomatization of boolean algebras @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Alternative.20axiomatization.20of.20boolean.20algebras/near/558900960) and #31924. |
t-algebra label:t-algebra$ |
618/0 |
Archive.lean,Archive/Robbins.lean |
2 |
3 |
['chrisflav', 'github-actions', 'mathlib-merge-conflicts'] |
chrisflav assignee:chrisflav |
9-80546 9 days ago |
9-81072 9 days ago |
81-47488 81 days |
| 42674 |
theebayuser author:theebayuser |
feat(Geometry/Euclidean): add the geometric mean theorem |
Hello, this PR adds the geometric mean theorem to
Mathlib/Geometry/Euclidean/Angle/Unoriented/RightAngle.lean, with the iff form and
the leg form, and records it in docs/1000.yaml (Q2226868). Statements use ^ 2
per review guidance on #42518.
This PR was written with AI assistance (Claude Code)
|
t-euclidean-geometry
new-contributor
LLM-generated
|
46/1 |
Mathlib/Geometry/Euclidean/Angle/Unoriented/RightAngle.lean,docs/1000.yaml |
2 |
6 |
['github-actions', 'theebayuser', 'wwylele'] |
jsm28 assignee:jsm28 |
9-80378 9 days ago |
11-70058 11 days ago |
11-70046 11 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/Data/ENat/Monoid.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/Real/ENatENNReal.lean |
3 |
10 |
['YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
9-69582 9 days ago |
9-72055 9 days ago |
52-77968 52 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 |
9-63923 9 days ago |
9-64456 9 days ago |
24-77786 24 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 |
9-62174 9 days ago |
9-62174 9 days ago |
15-60438 15 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 |
9-61730 9 days ago |
9-63912 9 days ago |
9-65591 9 days |
| 42020 |
kebekus author:kebekus |
feat: separation lemma of Value Distribution Theory |
Begin the proof of the "Second Main Theorem of Value Distribution Theory" by establishing the classic separation lemma. The full formalized proof, which will be PRed piece by piece, is available on the internet at https://github.com/kebekus/ProjectVD
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
|
151/0 |
Mathlib.lean,Mathlib/Analysis/Complex/ValueDistribution/SecondMainTheorem.lean,Mathlib/Data/Finset/Card.lean |
3 |
14 |
['github-actions', 'j-loreaux', 'kebekus'] |
nobody |
9-57894 9 days ago |
9-60708 9 days ago |
31-44858 31 days |
| 41542 |
tb65536 author:tb65536 |
refactor(AlgebraicGeometry/Sites/Small): golf and remove some `backward.isDefEq.respectTransparency` |
This PR golfs and removes some `backward.isDefEq.respectTransparency`. Some proofs with the help of Claude, with further golfing by myself.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory
tech debt
LLM-generated
|
59/135 |
Mathlib/AlgebraicGeometry/Sites/Small.lean,Mathlib/CategoryTheory/Sites/Over.lean |
2 |
7 |
['dagurtomas', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'tb65536'] |
nobody |
9-57842 9 days ago |
9-58577 9 days ago |
43-52005 43 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 |
9-55028 9 days ago |
9-57833 9 days ago |
9-59924 9 days |
| 41401 |
vlad902 author:vlad902 |
feat(RingTheory): `Ideal.span` corollaries of Krull's height theorem |
Currently we have statements bounding the height of minimal primes of `Ideal.span S`. Add the obvious corollaries to bound the height of `Ideal.span S` directly.
Also add a `Set.encard`-valued statement of Krull's height theorem. In a Noetherian ring we know the bound should always be finite, but this is useful in downstream applications that are using `ENat`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
26/1 |
Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean |
1 |
1 |
['github-actions'] |
nobody |
9-54563 9 days ago |
48-58728 48 days ago |
48-59177 48 days |
| 41479 |
YaelDillies author:YaelDillies |
feat(LinearAlgebra): dual of tensor is tensor of duals for finite projective modules |
Generalise this isomorphism and many similar ones from finite free to finite projective. To be able to deduce some isos from some other ones, I had to move them around in a preliminary PR. Note that #40297 made of the changes that the current PR was intending to do but not all, hence the slightly mangled diff.
Also change the defeq of `homTensorHomEquiv` so that it is *not* defeq to `homTensorHomMap` (but would be if `homTensorHomMap` became heterobasic). This makes `BilinForm.tensorDistribEquiv` defeq to `BilinForm.tensorDistrib`.
Also tag `LinearEquiv.congrRight` with `simps` to generate some required simp lemmas.
Human generated then golfed and edited with Claude Opus, then human-edited some more.
From FLT, PersistentDecomp
Co-authored-by: Edison Xie
Co-authored-by: Andrew Yang <the.erd.one@gmail.com>
Assisted-by: Claude Opus 4.8
---
This is a cleaned up version of #21829 reopened from a fork.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
125/95 |
Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/LinearAlgebra/BilinearForm/TensorProduct.lean,Mathlib/LinearAlgebra/Contraction.lean,Mathlib/LinearAlgebra/TensorProduct/Map.lean,Mathlib/LinearAlgebra/Trace.lean |
5 |
14 |
['Deicyde', 'Whysoserioushah', 'YaelDillies', 'erdOne', 'github-actions', 'kbuzzard', 'mathlib-merge-conflicts'] |
nobody |
9-52032 9 days ago |
9-54246 9 days ago |
30-42441 30 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 |
9-47119 9 days ago |
9-49323 9 days ago |
9-53084 9 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 |
9-45040 9 days ago |
9-45638 9 days ago |
9-45626 9 days |
| 41427 |
YaelDillies author:YaelDillies |
refactor(Algebra/MvPolynomial): delete `coeff` |
... without a deprecation because we want dot notation to resolve to `AddMonoidAlgebra.coeff`.
For migration, replace bare `MvPolynomial.coeff`s with `AddMonoidAlgebra.coeff`. Dot notation `.coeff` will resolve to `AddMonoidAlgebra.coeff` without further change. `MvPolynomial.coeff m p` corresponds to `AddMonoidAlgebra.coeff p m`, so you will need to swap arguments. Note further that `AddMonoidAlgebra.coeff p` is bundled as a `Finsupp` while `MvPolynomial.coeff` is a bare function.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
t-algebra
label:t-algebra$ |
247/242 |
Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Coeff.lean,Mathlib/Algebra/MvPolynomial/CommRing.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/MvPolynomial/Division.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/Funext.lean,Mathlib/Algebra/MvPolynomial/Monad.lean,Mathlib/Algebra/MvPolynomial/Nilpotent.lean,Mathlib/Algebra/MvPolynomial/NoZeroDivisors.lean,Mathlib/Algebra/MvPolynomial/PDeriv.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/FieldTheory/AxGrothendieck.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/NumberTheory/Height/MvPolynomial.lean,Mathlib/RingTheory/Extension/Generators.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/MvPolynomial/Basic.lean,Mathlib/RingTheory/MvPolynomial/FreeCommRing.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/RingTheory/MvPolynomial/IrreducibleQuadratic.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Trunc.lean,Mathlib/RingTheory/NoetherNormalization.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/IsIntegral.lean,Mathlib/RingTheory/Polynomial/Quotient.lean,Mathlib/RingTheory/Spectrum/Prime/Polynomial.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean |
35 |
12 |
['YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'mathlib-splicebot'] |
nobody |
9-44036 9 days ago |
9-45550 9 days ago |
43-16995 43 days |
| 31892 |
jsm28 author:jsm28 |
feat(Geometry/Euclidean/Sphere/PolePolar): poles and polars |
Define poles and polars for spheres in Euclidean affine spaces, and set up some basic API, including in particular La Hire's theorem (`p₁` lies on the polar of `p₂` if and only if `p₂` lies on the polar of `p₁`).
Poles and polars are actually meaningful for any quadric in a projective space over any field, but I think it's reasonable to set up this theory for spheres in the Euclidean context and potentially link it in future to more general projective geometry.
---
<!-- 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: #31891
- [x] depends on: #32296
[](https://gitpod.io/from-referrer/)
|
t-euclidean-geometry
maintainer-merge
|
157/0 |
Mathlib.lean,Mathlib/Geometry/Euclidean/Sphere/PolePolar.lean |
2 |
23 |
['Parcly-Taxel', 'YaelDillies', 'github-actions', 'jsm28', 'kim-em', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'wwylele'] |
nobody |
9-38368 9 days ago |
11-46926 11 days ago |
148-85768 148 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 |
9-34476 9 days ago |
42-19593 42 days ago |
43-74283 43 days |
| 42032 |
YaelDillies author:YaelDillies |
feat(Topology): a union of closed sets, cofinitely many of which are empty, is closed |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
15/0 |
Mathlib/Data/Set/Lattice.lean,Mathlib/Topology/Basic.lean |
2 |
9 |
['YaelDillies', 'felixpernegger', 'github-actions', 'themathqueen'] |
nobody |
9-34403 9 days ago |
9-55027 9 days ago |
17-57834 17 days |
| 36605 |
martinwintermath author:martinwintermath |
feat(Geometry/Convex/Cone): Add lemmas about interaction of hull, span and negation |
Prove lemmas about the interaction of hull, span and negation.
Main additions:
* `PointedCone.toSubmodule` that produces a submodule with the same support given that `-C = C`. Also the corresponding `CanLift`
* `PointedCone.hull_neg_pair_eq_span_singleton` proving `hull R {-x, x} = R ∙ x` (simp lemma)
* `PointedCone.span_eq_hull_neg_sup_hull` proving `span R s = hull R (-s) ⊔ hull R s`
* `PointedCone.mem_span` proving `x ∈ span R C ↔ ∃ p, n ∈ C, x = p - n`
Considerations: there are several ways to express that a convex cone is a submodule:
* `-C = C`
* `-C ≤ C` or `C ≤ -C`
* `C = span R C`
* `C = C.lineal`
The consensus was that the the first option is the most direct way to express this property, which then allows to lift to a submodule.
Co-authored by: Olivia Röhrig, Kilian Rueß, Artie Khovanov
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #37464
[](https://gitpod.io/from-referrer/)
|
t-convex-geometry |
65/0 |
Mathlib/Geometry/Convex/Cone/Pointed.lean |
1 |
79 |
['YaelDillies', 'artie2000', 'github-actions', 'justus-springer', 'martinwintermath', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] |
nobody |
9-23880 9 days ago |
90-17748 90 days ago |
107-18342 107 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 |
9-22217 9 days ago |
50-7882 50 days ago |
50-7870 50 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 |
9-18351 9 days ago |
51-2896 51 days ago |
51-2884 51 days |
| 41610 |
SnirBroshi author:SnirBroshi |
chore(Logic/Relation): golf using `grind` |
Also tag `Relation.map_apply` with `grind =`.
---
- `comp_assoc`: 14ms to 23ms
- `IsTrans.map`: 10ms to 28ms
- `instIsPreorderOfIsTrans`: ? to 11ms
- `total_of_right_unique`: ? to 80ms
- `isTrans_join`: 10ms to 100ms
- `Quot.eqvGen_sound`: ? to ?
- `Equivalence.eqvGen_iff`: ? to 14ms
(the question marks mean that `trace.profiler` doesn't output anything, maybe they're below 1ms?)
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic |
17/52 |
Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Logic/Relation.lean |
2 |
12 |
['SnirBroshi', 'b-mehta', 'chenson2018', 'github-actions', 'grunweg', 'leanprover-radar', 'themathqueen'] |
nobody |
9-10815 9 days ago |
9-14298 9 days ago |
37-27635 37 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 |
9-8109 9 days ago |
9-11182 9 days ago |
11-84207 11 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 |
9-8108 9 days ago |
9-8653 9 days ago |
35-68534 35 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 |
9-7143 9 days ago |
43-43833 43 days ago |
43-43865 43 days |
| 38310 |
ZRTMRH author:ZRTMRH |
feat(Combinatorics/Quiver/Schreier): word evaluation and reachability |
Adds word evaluation and reachability results to the Schreier graph API.
* `SchreierGraph.evalWord` : evaluates a word `List (S × Bool)` as an element of the ambient group, where `(s, true)` contributes `ι s` and `(s, false)` contributes `(ι s)⁻¹`.
* `SchreierGraph.evalWord_eq_lift` : agreement with `FreeGroup.lift`.
* `SchreierGraph.evalWord_mem_closure` : every word evaluates into the subgroup generated by `ι`.
* `SchreierGraph.pathFromWord` : a Bool-tagged word yields a path in `Symmetrify (SchreierGraph V ι)` from `x` to `evalWord ι w • x`.
* `SchreierGraph.reachable_iff` : two vertices are connected by a path in the symmetrification iff some element of the subgroup closure carries one to the other.
Follow-up to #36320.
This PR was written with AI assistance (Claude). The code has been reviewed by the author.
---
- [x] depends on: #41849
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
large-import
LLM-generated
maintainer-merge
|
125/0 |
Mathlib/Combinatorics/Quiver/Schreier.lean |
1 |
26 |
['YaelDillies', 'ZRTMRH', 'github-actions', 'mathlib-dependent-issues'] |
nobody |
9-5222 9 days ago |
10-85360 10 days ago |
110-34819 110 days |
| 38002 |
Raph-DG author:Raph-DG |
feat(Topology): Relating irreducible components of a space to codimension one points in non dense subsets |
In this PR we show that the coheight zero points of a sober space (in the specialization order) correspond to the irreducible components. Furthermore, we show that the coheight one points of any non dense subset p of X (in the specialization order on X) have coheight zero in the specialization order on p.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
large-import
t-topology
|
112/0 |
Mathlib/Order/Hom/Basic.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/Minimal.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/KrullDimension.lean,Mathlib/Topology/Sober.lean |
6 |
7 |
['ADedecker', 'Raph-DG', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts'] |
alreadydone assignee:alreadydone |
9-1747 9 days ago |
59-31653 59 days ago |
127-28536 127 days |
| 41486 |
TTony2019 author:TTony2019 |
feat(Analysis/Convex/Intrinsic): add open segment intrinsic interior results |
Add open segment intrinsic interior results: `x ∈ intrinsicInterior 𝕜 C` and `y ∈ intrinsicClosure 𝕜 C`, then the open segment
from `x` to `y` stays in `intrinsicInterior 𝕜 C`.
Co-authored-by: Zichen Wang <imathwy@users.noreply.github.com> |
t-topology
new-contributor
t-analysis
|
70/0 |
Mathlib/Analysis/Convex/Intrinsic.lean,Mathlib/Analysis/Convex/Topology.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Homeomorph/Defs.lean |
4 |
7 |
['TTony2019', 'github-actions', 'j-loreaux'] |
ADedecker assignee:ADedecker |
9-1747 9 days ago |
14-22900 14 days ago |
42-32520 42 days |
| 42757 |
mckoen author:mckoen |
feat(CategoryTheory/Subobject): extend exists and pullback API |
Extends some API for the `exists` and `pullback` functors on `Subobject` and `MonoOver`. This PR exists to split up #41769.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
81/1 |
Mathlib/CategoryTheory/Subobject/Basic.lean,Mathlib/CategoryTheory/Subobject/MonoOver.lean |
2 |
1 |
['github-actions'] |
robin-carlier assignee:robin-carlier |
9-1742 9 days ago |
9-85868 9 days ago |
9-86079 9 days |
| 42767 |
EtienneC30 author:EtienneC30 |
refactor: change mapRangeₗ to require a `ContinuousLinearMap` |
Instead of having `VectorMeasure.mapRangeₗ` to require `f : LinearMap ..` and `hf : Continuous f`, change it to require `f : ContinuousLinearMap ..`. Change the name to `mapRangeL`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
9/7 |
Mathlib/MeasureTheory/Measure/Complex.lean,Mathlib/MeasureTheory/VectorMeasure/Basic.lean |
2 |
1 |
['github-actions'] |
kex-y assignee:kex-y |
9-1740 9 days ago |
9-42508 9 days ago |
9-42496 9 days |
| 42778 |
Brian-Nugent author:Brian-Nugent |
feat(AlgebraicGeometry): generalize `isField_of_universallyClosed` to only assume reduced and connected |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
41/3 |
Mathlib/AlgebraicGeometry/Morphisms/Proper.lean |
1 |
2 |
['github-actions'] |
dagurtomas assignee:dagurtomas |
9-1739 9 days ago |
9-24555 9 days ago |
9-24543 9 days |
| 37878 |
YaelDillies author:YaelDillies |
chore(Combinatorics/SimpleGraph): avoid structure relation predicates |
Relation predicates used to be `def`s over a `forall`, which was optimal for usability in fields of other structures. This changed in #35591 and #35192 as a byproduct of reducing apparent code duplication. Unfortunately, the usability issue was overlooked.
This PR restores usability by dropping the use of those relation classes that are `structure`s, ie `Std.Irrefl` and `Std.Transitive`. It also uses more widely the `simp` auto-param on `SimpleGraph.loopless`.
---
- [x] depends on: #38554
I would also be happy to revert #35591 and #35192 since this demonstrates a good use case for the `def` versions of the relation predicates.
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
86/90 |
Archive/Wiedijk100Theorems/Konigsberg.lean,Mathlib/Combinatorics/Graph/Simple.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean,Mathlib/Combinatorics/SimpleGraph/Hall.lean,Mathlib/Combinatorics/SimpleGraph/LineGraph.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Prod.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Uniform.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Sum.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Tripartite.lean,Mathlib/ModelTheory/Graph.lean,Mathlib/Order/RelClasses.lean |
21 |
19 |
['SnirBroshi', 'Vierkantor', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
9-845 9 days ago |
30-60239 30 days ago |
85-30736 85 days |
| 38716 |
YaelDillies author:YaelDillies |
feat(Algebra/Order): `NNRat.cast_sub` |
From AddCombi
---
- [x] depends on: #41850
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
large-import
label:t-algebra$ |
13/2 |
Mathlib/Algebra/Order/Field/Rat.lean,Mathlib/Data/NNRat/Defs.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
9-843 9 days ago |
30-58257 30 days ago |
30-64530 30 days |
| 41651 |
xroblot author:xroblot |
feat(GroupTheory): coatoms of the subgroup lattice |
Add two group-theory results on maximal subgroups (coatoms of the subgroup lattice), plus a small API change:
- `isCyclic_of_isCoatom_subsingleton`: a group with at most one maximal subgroup is cyclic.
- `CommGroup.isSimpleGroup_iff_isCoatom`: a subgroup of a commutative group is maximal iff the quotient by it is simple.
- `comapMk'OrderIso`: retype the codomain of the correspondence-theorem order isomorphism to `Set.Ici N`, making the order API available (also it mirrors `Submodule.comapMkQRelIso`). The two codomains are defeq and there are no use.
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude. |
t-group-theory |
49/1 |
Mathlib.lean,Mathlib/GroupTheory/QuotientGroup/Basic.lean,Mathlib/GroupTheory/QuotientGroup/Simple.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean |
4 |
13 |
['SnirBroshi', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'xroblot'] |
nobody |
8-84897 8 days ago |
38-60896 38 days ago |
38-61041 38 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 |
8-83366 8 days ago |
8-84008 8 days ago |
9-230 9 days |
| 41293 |
riccardobrasca author:riccardobrasca |
feat: add WeierstrassCurve.exists_variableChange_lift |
We add `WeierstrassCurve.exists_variableChange_lift`, a variable change over the fraction field between integral Weierstrass equations descends to the
base ring if its `u` coefficient descends to a unit of the base ring.
---
A first version of the code has been generated by Claude, but it has gone through extensive review by me before opening the PR.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
45/0 |
Mathlib/AlgebraicGeometry/EllipticCurve/Reduction.lean |
1 |
2 |
['Multramate', 'github-actions'] |
Multramate assignee:Multramate |
8-63184 8 days ago |
45-63328 45 days ago |
46-55318 46 days |
| 42331 |
riccardobrasca author:riccardobrasca |
feat: add ModularForm.qExpansionAlgHom |
Replace `ModularForm.qExpansionRingHom` by `ModularForm.qExpansionAlgHom`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
42/0 |
Mathlib/NumberTheory/ModularForms/QExpansion.lean |
1 |
2 |
['github-actions'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
8-63174 8 days ago |
22-37232 22 days ago |
22-37220 22 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'] |
nobody |
8-62498 8 days ago |
8-63111 8 days ago |
62-13920 62 days |
| 42795 |
harahu author:harahu |
chore(RepresentationTheory): tidy markdown headers |
Ensure all files in `Mathlib/RepresentationTheory` have an H1 header. Clean up some H2 headers while we're at it.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
8/4 |
Mathlib/RepresentationTheory/Action.lean,Mathlib/RepresentationTheory/Continuous/Basic.lean,Mathlib/RepresentationTheory/Equiv.lean,Mathlib/RepresentationTheory/Homological/ContCohomology/LowDegree.lean,Mathlib/RepresentationTheory/Tannaka.lean |
5 |
1 |
['github-actions'] |
nobody |
8-55850 8 days ago |
8-56511 8 days ago |
8-56499 8 days |
| 42738 |
FrankieNC author:FrankieNC |
chore(Data/Finset): mark `Equiv.restrictPreimageFinset` implicit_reducible |
Mark `Equiv.restrictPreimageFinset` as `@[implicit_reducible]`, which allows to remove the `set_option` in `Mathlib/Probability/ProductMeasure.lean`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
t-measure-probability
maintainer-merge
|
1/5 |
Mathlib/Data/Finset/Preimage.lean,Mathlib/Probability/ProductMeasure.lean |
2 |
3 |
['EtienneC30', 'github-actions'] |
EtienneC30 assignee:EtienneC30 |
8-54051 8 days ago |
10-34617 10 days ago |
10-34983 10 days |
| 42798 |
ocfnash author:ocfnash |
feat: show that Geck's construction of Lie algebras is complete |
This is the very last part of the existence result for semisimple Lie algebras, and (since we already have uniqueness) entirely reduces their classification to that of root systems.
---
Closes https://github.com/leanprover-community/mathlib4/issues/28715
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
154/36 |
Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Basis.lean,Mathlib/LinearAlgebra/RootSystem/Hom.lean,Mathlib/LinearAlgebra/RootSystem/Irreducible.lean |
3 |
2 |
['github-actions'] |
nobody |
8-49141 8 days ago |
8-49196 8 days ago |
8-49543 8 days |
| 41913 |
peabrainiac author:peabrainiac |
chore(Data/Set): move lemmas from `Set.Disjoint` to `Disjoint` |
Move three lemmas from the `Set.Disjoint` namespace to the `Disjoint` namespace to enable dot notation.
We do not add deprecation aliases since the lemmas only get moved, not renamed, and having both the lemmas and their deprecated aliases available inside the `Set` namespace could lead to trouble.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
4/3 |
Mathlib/Data/Set/Prod.lean |
1 |
5 |
['Ruben-VandeVelde', 'SnirBroshi', 'github-actions', 'peabrainiac'] |
nobody |
8-41730 8 days ago |
35-81032 35 days ago |
35-81020 35 days |
| 39875 |
mkaratarakis author:mkaratarakis |
refactor(NumberField/House): expose Siegel lemma infrastructure |
Expose Siegel's lemma infrastructure in `NumberField.House`: 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/) |
|
56/45 |
Mathlib/NumberTheory/NumberField/House.lean |
1 |
6 |
['github-actions', 'mathlib-merge-conflicts', 'mkaratarakis', 'tb65536'] |
nobody |
8-39817 8 days ago |
8-40355 8 days ago |
61-4439 61 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 |
8-32776 8 days ago |
9-1444 9 days ago |
21-79350 21 days |
| 41288 |
lua-vr author:lua-vr |
feat(EReal): add_eq_top_iff_eq_top_* |
Adds `add_eq_top_iff_eq_top_{left,right}` and replaces the proofs of the `ne` versions with `.ne`. `add_ne_top_iff_of_ne_bot_of_ne_top` was duplicated, so I deprecated 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-data |
18/11 |
Mathlib/Data/EReal/Operations.lean |
1 |
5 |
['Ruben-VandeVelde', 'felixpernegger', 'github-actions', 'lua-vr'] |
nobody |
8-32720 8 days ago |
8-34125 8 days ago |
51-64196 51 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 |
8-32378 8 days ago |
8-35073 8 days ago |
8-35181 8 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$ |
116/8 |
Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/NumberTheory/EllipticDivisibilitySequence.lean |
2 |
33 |
['Multramate', 'alreadydone', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536'] |
nobody |
8-22287 8 days ago |
9-7426 9 days ago |
10-39869 10 days |
| 40788 |
FrankieNC author:FrankieNC |
feat: uniformly integrable Lᵖ tails tend to 0 uniformly |
Adds `UniformIntegrable.tendsto_iSup_eLpNorm_indicator_atTop`: for a uniformly integrable family `f`,
Tendsto (fun M ↦ ⨆ i, eLpNorm ({x | M ≤ ‖f i x‖₊}.indicator (f i)) p μ) atTop (𝓝 0).
This is the `Tendsto` companion to the existing `UniformIntegrable.spec`, which only provides, for each `ε`, a single threshold `C`.
This is the form that arises when truncating an L¹/Lᵖ family at increasing norm levels — e.g. vector-valued truncation / Komlós-type arguments — where the existing ProbabilityTheory.truncation does not apply, being real- and order-interval-valued.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
brownian
|
120/5 |
Mathlib/MeasureTheory/Function/UniformIntegrable.lean |
1 |
27 |
['CoolRmal', 'EtienneC30', 'FrankieNC', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] |
EtienneC30 assignee:EtienneC30 |
8-21149 8 days ago |
8-22206 8 days ago |
64-38998 64 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 |
8-17016 8 days ago |
9-86317 9 days ago |
9-86305 9 days |
| 42133 |
joelkronqvist author:joelkronqvist |
feat(Order/Interval/Set/LinearOrder): add thms for unions of adjacent intervals |
This PR adds four new lemmas stating that for two nonempty intervals with a common endpoint, taking their union is equal to removing that common endpoint from a larger interval.
I use the fact `Ioo_union_Ioo_eq_Ioo_sdiff_singleton` in [ExtremeValueProject](https://github.com/joelkronqvist/ExtremeValueProject/commits/kandi-linear_of_additive_of_le_on_measure_pos).
I could also add versions of these lemmas for half-open intervals to this PR. Should I do it? I haven't added them yet because I suspect their proofs are quite repetitive and I'd like to get feedback on the first four additions to reduce the need of repetitive rewrites. Where would they belong? Probably not in a section that is concerned with two finite intervals with a common point. This addition would add 5 more proofs for `Iio ∪ Ioi`, `Ioo ∪ Ioi`, `Iio ∪ Ioo`, `Ico ∪ Ioi` and `Iio ∪ Ioc`.
Co-authored-by: Kalle Kytölä <kalle.kytola@aalto.fi>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
maintainer-merge
|
32/0 |
Mathlib/Order/Interval/Set/LinearOrder.lean |
1 |
4 |
['Ruben-VandeVelde', 'felixpernegger', 'github-actions', 'joelkronqvist', 'wwylele'] |
nobody |
8-14721 8 days ago |
27-47319 27 days ago |
27-47307 27 days |
| 39868 |
JuanCoRo author:JuanCoRo |
feat(Algebra/Polynomial): linearity of `divByMonic` and adjacent 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]
-->
This PR adds the `R`-linearity of the monic polynomial division map `_ /ₘ q`. It also adds adjacent results that stem from this work.
#### Refactors:
- Reuses the proofs from `add_modByMonic` and `smul_modByMonic` to generalize these results to `add_div_modByMonic` and `smul_div_modByMonic` respectively.
- Replaces the proofs of `add_modByMonic` and `smul_modByMonic` as specializations of the more general theorems `add_div_modByMonic` and `smul_div_modByMonic` respectively.
#### Additions:
- Adds the necessary results for `_ /ₘ q` linearity:
- `add_divByMonic : (p₁ + p₂) /ₘ q = p₁ /ₘ q + p₂ /ₘ q`
- `smul_divByMonic : c • p /ₘ q = c • (p /ₘ q)`
- Adds `_ /ₘ q` as an `R`-linear map:
- `divByMonicHom`: definition of `_ /ₘ q` as a linear map
- `mem_ker_divByMonic`: kernel characterization for `_ /ₘ q`.
- In `Div.lean` adds dual results for `/ₘ` that were already present for `%ₘ`
- `neg_divByMonic : (-p) /ₘ q = -(p /ₘ q)`
- `sub_divByMonic : (p₁ - p₂) /ₘ q = p₁ /ₘ q - p₂ /ₘ q`
- `mul_divByMonic_assoc (hd : q ∣ p₂) : (p₁ * p₂) /ₘ q = p₁ * (p₂ /ₘ q)`
While `mul_divByMonic_assoc` is not exactly the dual of `mul_modByMonic`, I thought it wouldn't hurt to add it.
[](https://gitpod.io/from-referrer/) |
new-contributor
t-algebra
label:t-algebra$ |
54/17 |
Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/RingDivision.lean |
2 |
8 |
['JuanCoRo', 'github-actions', 'wwylele'] |
joelriou assignee:joelriou |
8-1746 8 days ago |
86-50505 86 days ago |
86-50572 86 days |
| 40495 |
gw90 author:gw90 |
feat: weighted graphs with killing term |
Adding basic definitions and API for weighted graphs and weighted graphs with killing term.
---
My goal is to develop the basic theory from the beginning of [this textbook](https://www.math.uni-potsdam.de/fileadmin/user_upload/Prof-GraphTh/Keller/KellerLenzWojciechowski_GraphsAndDiscreteDirichletSpaces_wu_version.pdf). I also have some definitions and lemmas regarding Dirichlet forms and Laplacians to PR later, but I tried to pare down this first PR as much as possible. It currently has only 4 main definitions and sufficient API to demonstrate their correctness.
Note that I did not use [SimpleGraph.edgeLabeling](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=SimpleGraph.EdgeLabeling#doc) for the edgeWeight function because it is important that vertices that are not adjacent have an edge weight of zero. That is, the edgeWeight must be defined for all pairs of vertices and respect the underlying adjacency relation on the graph.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
368/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Weighted/Basic.lean,docs/references.bib |
3 |
2 |
['github-actions'] |
b-mehta assignee:b-mehta |
8-1745 8 days ago |
72-85808 72 days ago |
72-85796 72 days |
| 40557 |
xroblot author:xroblot |
feat(RingTheory/Ideal): generalize span_singleton_dvd_span_singleton_iff_dvd and emultiplicity_eq_emultiplicity_span |
Move `Ideal.span_singleton_dvd_span_singleton_iff_dvd` from
`Mathlib.RingTheory.DedekindDomain.Ideal.Lemmas` to
`Mathlib.RingTheory.Ideal.Operations`. The result holds for any `CommSemiring` — the `[IsPrincipalIdealRing R]` hypothesis was not needed.
Generalize `Ideal.emultiplicity_eq_emultiplicity_span` from
`[IsDomain R] [IsPrincipalIdealRing R]` to `[CommRing R]`. The proof simplifies considerably: it follows immediately from `emultiplicity_eq_emultiplicity_iff` and the generalized dvd lemma.
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude. |
t-ring-theory |
30/26 |
Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/Ideal/Operations.lean |
2 |
3 |
['Multramate', 'github-actions', 'xroblot'] |
mattrobball assignee:mattrobball |
8-1744 8 days ago |
8-66183 8 days ago |
71-28473 71 days |
| 40648 |
felixpernegger author:felixpernegger |
chore(MeasureTheory/MeasurableSpace/Constructions): remove some defeq abuse |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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 |
7/2 |
Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/Order/Disjointed.lean |
2 |
2 |
['github-actions', 'wwylele'] |
jjdishere assignee:jjdishere |
8-1743 8 days ago |
69-462 69 days ago |
69-468 69 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 |
147/0 |
Mathlib.lean,Mathlib/CategoryTheory/ObjectProperty/HasFiniteResolution/Basic.lean |
2 |
8 |
['github-actions', 'joelriou'] |
robin-carlier assignee:robin-carlier |
8-1743 8 days ago |
33-77022 33 days ago |
35-32842 35 days |
| 41762 |
felixpernegger author:felixpernegger |
chore: replace terminal `convert` with `exact` |
Replaces terminal `convert(!)` with `exact` whenever possible.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
193/190 |
Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/Category/ModuleCat/EpiMono.lean,Mathlib/Algebra/CharP/MixedCharZero.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/Group/Action/Basic.lean,Mathlib/Algebra/Group/Fin/Tuple.lean,Mathlib/Algebra/Group/Pointwise/Set/Finite.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Ring/GeomSum.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Point.lean,Mathlib/AlgebraicGeometry/Noetherian.lean,Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/AlgebraicGeometry/Spec.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Convolution.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousAlternatingMap.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousMultilinearMap.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Convex/Caratheodory.lean,Mathlib/Analysis/Convex/Side.lean,Mathlib/Analysis/Convex/SpecificFunctions/Deriv.lean,Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/Normed/Field/UnitBall.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Orthogonality.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/Adhesive/Basic.lean,Mathlib/CategoryTheory/Category/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/IsPullback/BicartesianSq.lean,Mathlib/CategoryTheory/Limits/Types/Coequalizers.lean,Mathlib/CategoryTheory/Localization/Opposite.lean,Mathlib/CategoryTheory/Monoidal/Internal/Module.lean,Mathlib/CategoryTheory/Monoidal/Internal/Types/Basic.lean,Mathlib/CategoryTheory/Monoidal/Internal/Types/CommGrp_.lean,Mathlib/CategoryTheory/PUnit.lean,Mathlib/CategoryTheory/PathCategory/Basic.lean,Mathlib/CategoryTheory/Sites/Types.lean,Mathlib/CategoryTheory/Subobject/Classifier/Defs.lean,Mathlib/Combinatorics/Configuration.lean,Mathlib/Combinatorics/Hindman.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/Combinatorics/SetFamily/KruskalKatona.lean,Mathlib/Combinatorics/SimpleGraph/Dart.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Computability/TuringMachine/ToPartrec.lean,Mathlib/Data/DFinsupp/Interval.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/Fin/Tuple/Basic.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Intervals.lean,Mathlib/Data/Nat/Digits/Defs.lean,Mathlib/Data/QPF/Univariate/Basic.lean,Mathlib/Data/Sym/Basic.lean,Mathlib/FieldTheory/PrimitiveElement.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/Geometry/Euclidean/Projection.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/Geometry/Manifold/ContMDiff/Constructions.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean,Mathlib/Geometry/Manifold/Sheaf/Basic.lean,Mathlib/Geometry/RingedSpace/LocallyRingedSpace/HasColimits.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace/Gluing.lean,Mathlib/GroupTheory/Finiteness.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/Perm/Closure.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/GroupTheory/Submonoid/Inverses.lean,Mathlib/LinearAlgebra/AffineSpace/AffineMap.lean,Mathlib/LinearAlgebra/AffineSpace/Centroid.lean,Mathlib/LinearAlgebra/AffineSpace/Independent.lean,Mathlib/LinearAlgebra/Dimension/LinearMap.lean,Mathlib/LinearAlgebra/Finsupp/Supported.lean,Mathlib/LinearAlgebra/Matrix/Block.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/Pi.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/StdBasis.lean,Mathlib/LinearAlgebra/TensorAlgebra/Basic.lean,Mathlib/Logic/Equiv/Fin/Basic.lean,Mathlib/Logic/Equiv/Fintype.lean,Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/MeasureTheory/Group/Measure.lean,Mathlib/MeasureTheory/Integral/FinMeasAdditive.lean,Mathlib/MeasureTheory/Measure/Content.lean |
150 |
16 |
['Parcly-Taxel', 'adomani', 'chenson2018', 'felixpernegger', 'github-actions', 'grunweg', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
8-1180 8 days ago |
8-4153 8 days ago |
34-79287 34 days |
| 42817 |
WenrongZou author:WenrongZou |
feat(ValuativeRel): instance `IsLinearTopology 𝒪[K] 𝒪[K]` |
In this PR, we prove the instance `IsLinearTopology 𝒪[K] 𝒪[K]`. There is a very old PR regarding this [#24627](https://github.com/leanprover-community/mathlib4/pull/24627). But we are going to deprecate `Valued`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology |
11/0 |
Mathlib/Topology/Algebra/ValuativeRel/ValuativeTopology.lean |
1 |
1 |
['github-actions'] |
nobody |
7-62620 7 days ago |
7-63436 7 days ago |
7-63424 7 days |
| 42106 |
vlad902 author:vlad902 |
feat(FreeGroup): `zpow` lemmas |
We already have some lemmas for working with `Nat`-valued powers of FreeGroup elements, add some matching lemmas for working with `Int`-valued powers.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
34/5 |
Mathlib/Algebra/Group/Basic.lean,Mathlib/GroupTheory/FreeGroup/Reduce.lean |
2 |
1 |
['github-actions'] |
nobody |
7-61878 7 days ago |
28-59290 28 days ago |
28-59278 28 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'] |
TwoFX assignee:TwoFX |
7-58185 7 days ago |
76-32913 76 days ago |
76-33071 76 days |
| 40551 |
emlis42 author:emlis42 |
feat(SetTheory/Ordinal): prove that `ε₀` and `Γ₀` are countable |
This PR proves that `ε₀` and `Γ₀` are countable, i.e. `Countable (ToType ε₀)` and `Countable (ToType Γ₀)`.
This completes a TODO in `SetTheory/Ordinal/Veblen.lean`. |
t-set-theory
large-import
maintainer-merge
|
151/7 |
Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Ordinal.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/Univ.lean,Mathlib/SetTheory/Ordinal/Veblen.lean |
5 |
68 |
['YaelDillies', 'emlis42', 'felixpernegger', 'github-actions', 'plp127', 'vihdzp'] |
nobody |
7-46384 7 days ago |
9-31983 9 days ago |
72-21957 72 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 |
7-46318 7 days ago |
7-48786 7 days ago |
7-49592 7 days |
| 42159 |
fbarroero author:fbarroero |
chore(NumberTheory/SiegelsLemma): simplify and golf 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-number-theory |
37/75 |
Mathlib/NumberTheory/SiegelsLemma.lean |
1 |
12 |
['MichaelStollBayreuth', 'copilot-pull-request-reviewer', 'fbarroero', 'github-actions', 'leanprover-radar'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
7-39813 7 days ago |
7-50873 7 days ago |
27-9966 27 days |
| 41259 |
felixpernegger author:felixpernegger |
chore: remove redudant `nonrec`'s |
Remove all `nonrec` which are just not needed, about 9% of all `nonrec` occurences (tech debt)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
62/62 |
Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/AlgebraicGeometry/Cover/MorphismProperty.lean,Mathlib/AlgebraicGeometry/Morphisms/ClosedImmersion.lean,Mathlib/AlgebraicGeometry/Morphisms/Descent.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiFinite.lean,Mathlib/AlgebraicGeometry/Sites/SheafQuasiCompact.lean,Mathlib/Analysis/Calculus/Deriv/Comp.lean,Mathlib/Analysis/Calculus/Deriv/Star.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/WithLp.lean,Mathlib/Analysis/Complex/PhragmenLindelof.lean,Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/Normed/Group/Quotient.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Computability/RecursiveIn.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Rel/Cover.lean,Mathlib/Data/Rel/Separated.lean,Mathlib/Geometry/Euclidean/Inversion/Calculus.lean,Mathlib/Geometry/Manifold/ContMDiff/Constructions.lean,Mathlib/Geometry/Manifold/ContMDiff/NormedSpace.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/MeasureTheory/Group/Arithmetic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/ModelTheory/Ultraproducts.lean,Mathlib/NumberTheory/BernoulliPolynomials.lean,Mathlib/Probability/Density.lean,Mathlib/Probability/Moments/Variance.lean,Mathlib/RingTheory/Flat/Basic.lean,Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,Mathlib/RingTheory/Polynomial/Resultant/Basic.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/FiberBundle/Basic.lean,Mathlib/Topology/Filter.lean,Mathlib/Topology/Homotopy/Basic.lean,Mathlib/Topology/Instances/ENat.lean,Mathlib/Topology/MetricSpace/MetricSeparated.lean,Mathlib/Topology/MetricSpace/Pseudo/Basic.lean,Mathlib/Topology/Order/LocalExtr.lean |
44 |
4 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
7-39582 7 days ago |
7-42271 7 days ago |
34-42913 34 days |
| 41541 |
felixpernegger author:felixpernegger |
chore: prefer `classical` over `open scoped Classical` in proofs |
In #41423 it came up that it is preferable to use `classical` in proofs instead of `open (scoped) Classical`, as its slightly easier to maintain. This PR replaces all such occurences where it can be reasonably done.
This is likely my last PR about this topic.
(I used Claude to fix some git issue, which is why it shows up in the commit)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
111/58 |
Mathlib/Logic/Basic.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Defs/PartialOrder.lean |
4 |
4 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
7-39011 7 days ago |
7-42182 7 days ago |
40-58121 40 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 |
7-36355 7 days ago |
7-49121 7 days ago |
7-49109 7 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
|
151/4 |
Mathlib/RingTheory/DedekindDomain/SInteger.lean,Mathlib/RingTheory/Ideal/Prime.lean |
2 |
16 |
['copilot-pull-request-reviewer', 'faenuccio', 'fbarroero', 'github-actions'] |
faenuccio assignee:faenuccio |
7-36281 7 days ago |
7-54508 7 days ago |
31-74630 31 days |
| 42829 |
wwylele author:wwylele |
feat(Topology/InfiniteSum): applying a tsum of CLM with operator norm |
These three one-liners are provided mostly for discoverability. Especially for `ContinuousLinearMap.tsum_apply`: when one search for lemma in this shape, they will find [tsum_apply](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Algebra/InfiniteSum/Constructions.html#tsum_apply) which is for pi topology, thus frustratingly not applicable for CLM with operator norm.
I put them in a new file because it imports two somewhat distant files, and I couldn't find a suitable place in existing files
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology |
33/0 |
Mathlib.lean,Mathlib/Topology/Algebra/InfiniteSum/Operator.lean |
2 |
1 |
['github-actions'] |
nobody |
7-35975 7 days ago |
7-37265 7 days ago |
7-37253 7 days |
| 42534 |
gloges author:gloges |
feat(LinearAlgebra/MultilinearMap): generalize `MultilinearMap` with common `RingHom` |
Generalizes multilinear maps to multi-semilinear maps.
In analogy with `LinearMap σ M N`, `MultilinearMap σ M N` is the space of multilinear maps from the `R`-module `∀ i, M i` to the `S`-module `N` over a ring homomorphism `σ : R →+* S`: fixing all but one coordinate gives a map `M i →ₛₗ[σ] N`.
Both `ContinuousLinearMap` and `AlternatingMap` extend `MultilinearMap` and are left defined in terms of `RingHom.id`.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor |
679/616 |
Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean,Mathlib/Analysis/Normed/Module/Multilinear/Curry.lean,Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basis.lean,Mathlib/LinearAlgebra/Multilinear/Curry.lean,Mathlib/LinearAlgebra/Multilinear/DFinsupp.lean,Mathlib/LinearAlgebra/Multilinear/DirectSum.lean,Mathlib/LinearAlgebra/Multilinear/FiniteDimensional.lean,Mathlib/LinearAlgebra/Multilinear/Finsupp.lean,Mathlib/LinearAlgebra/Multilinear/Pi.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/DFinsupp.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/TensorAlgebra/Basic.lean,Mathlib/LinearAlgebra/TensorPower/Pairing.lean,Mathlib/LinearAlgebra/TensorPower/Symmetric.lean,Mathlib/RingTheory/PiTensorProduct.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean |
24 |
16 |
['eric-wieser', 'github-actions', 'gloges', 'themathqueen'] |
nobody |
7-35702 7 days ago |
7-42682 7 days ago |
15-68782 15 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 |
7-31754 7 days ago |
8-7622 8 days ago |
8-8221 8 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 |
7-31685 7 days ago |
7-33924 7 days ago |
29-2795 29 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 |
7-27979 7 days ago |
7-30746 7 days ago |
88-73541 88 days |
| 38534 |
AlexeyMilovanov author:AlexeyMilovanov |
refactor(Computability): make `PFun` a one-field structure |
This PR refactors `PFun` from `def PFun α β := α → Part β` to a structure with a `FunLike` instance.
[Discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Fix.20for.20fun_prop.20on.20PFun.20.28context.3A.20Computability.20Theory.29)
### Main changes
* `PFun` is now a structure with a single field `toFun : α → Part β`.
* Added the `FunLike (α →. β) α (Part β)` instance and `initialize_simps_projections`.
* Added the basic projection/application simp lemmas needed for the structure wrapper.
* Definitions which used to return raw lambdas as partial functions now explicitly use `PFun.mk` or `PFun.lift`.
* Equality proofs for partial functions now use `PFun.ext` / `DFunLike.ext` where `funext` no longer applies directly.
### Downstream impact
The refactor mainly impacts Computability Theory and Category Theory (`Category/PartialFun.lean`). Since `PFun` is no longer definitionally equal to `α → Part β`, tactics such as `rfl`, `simp`, and `funext` can no longer always see through the old raw-function representation.
As a result, several proofs (e.g. `fix_aux`, `ppred`, `mem_eval`, and `unitIso`) grew in size, requiring explicit `ext` + `simp` breakdowns. I tried to keep these proof changes minimal; further golfing suggestions are very welcome. It seems that fully recovering the old brevity in some places may require additional `PFun`-specific API/congruence support, which I avoided adding in this PR to keep the diff minimal.
### Affected files
* **Core:** `Mathlib/Data/PFun.lean`
* **Computability:** `Partrec`, `PartrecBasis`, `PartrecCode`, `RE`, `RecursiveIn`, `Ackermann`, `StateTransition`, `TuringDegree`, `TuringMachine/Config`
* **Category Theory:** `Category/PartialFun.lean`
* **Other:** `Data/Finset/PImage.lean`, `NumberTheory/Dioph.lean`
This also removes the previous `set_option linter.flexible false` workaround and the local transparency workaround in `TuringMachine/Config.lean`, as well as the local transparency workarounds in `Category/PartialFun.lean`.
### Note on LLM usage
The core `PFun` change caused numerous downstream errors. I initially used an LLM to help draft fixes for these files. Afterwards, I spent a significant amount of time manually correcting and modifying all of the generated changes.
|
new-contributor
t-computability
tech debt
LLM-generated
maintainer-merge
|
565/491 |
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 |
68 |
['AlexeyMilovanov', 'JovanGerb', 'YaelDillies', 'dagurtomas', 'github-actions', 'j-loreaux', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
7-17622 7 days ago |
7-18197 7 days ago |
91-68626 91 days |
| 42628 |
JovanGerb author:JovanGerb |
chore(Algebra/Order/Ring/WithTop): use `to_dual` |
This PR uses `to_dual` on `Ring`-related declarations on `WithTop`/`WithBot`. Some lemmas and instances only existed for `WithTop`, so they have now been added for `WithBot`.
The type class assumption for the ring instances have been weakened into a form that `to_dual` is happy with. It now only assumes `[Subsingleton (AddUnits α)]` instead of `[PartialOrder α] [CanonicallyOrderedAdd α]`.
Some generic instances about `CovariantClass` were given a low priority because `to_dual` doesn't like them.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
77/128 |
Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/WithTop.lean,Mathlib/Algebra/Order/Ring/WithTop.lean |
4 |
6 |
['JovanGerb', 'github-actions', 'jcommelin', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
7-13636 7 days ago |
7-16525 7 days ago |
8-5767 8 days |
| 42844 |
plp127 author:plp127 |
refactor(Logic/Hydra): cleanup file |
Change the definition of `CutExpand` to be more correct. Rename some theorems and add some theorems.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic |
101/50 |
Mathlib/Logic/Hydra.lean |
1 |
1 |
['github-actions'] |
nobody |
7-5852 7 days ago |
7-6427 7 days ago |
7-6415 7 days |
| 40381 |
felixpernegger author:felixpernegger |
chore: replace `:= by rfl` with `:= rfl` |
Continuation of #40371.
This PR replace `:= by rfl` with `:= rfl` whenever possible (also if the `rfl` is on the next line). This ought to make `dsimp` a little bit better as well.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
248/448 |
Archive/Imo/Imo2010Q5.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Category/Grp/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Monoidal.lean,Mathlib/Algebra/Category/MonCat/Basic.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/DirectSum/Finsupp.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/Group/AddChar.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/GroupWithZero/ProdHom.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/ShortComplex/LeftHomology.lean,Mathlib/Algebra/Homology/Single.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Lie/Cochain.lean,Mathlib/Algebra/Lie/Extension.lean,Mathlib/Algebra/Lie/OfAssociative.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Lie/Weights/Basic.lean,Mathlib/Algebra/Order/Hom/MonoidWithZero.lean,Mathlib/Algebra/Order/Hom/Ring.lean,Mathlib/Algebra/Order/Module/PositiveLinearMap.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/Algebra/Polynomial/Derivation.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Polynomial/Sequence.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Algebra/Vertex/HVertexOperator.lean,Mathlib/Algebra/Vertex/VertexOperator.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/AlgebraicGeometry/Modules/Sheaf.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Asymptotics/ExpGrowth.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/Distribution.lean,Mathlib/Analysis/Distribution/FourierMultiplier.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace/Fourier.lean,Mathlib/Analysis/Distribution/TemperedDistribution.lean,Mathlib/Analysis/Fourier/Convolution.lean,Mathlib/Analysis/Normed/Affine/Isometry.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Analysis/Normed/Module/Span.lean,Mathlib/Analysis/SpecialFunctions/Complex/CircleAddChar.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/CategoryTheory/Distributive/Monoidal.lean,Mathlib/CategoryTheory/Limits/Presheaf.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Cospan.lean,Mathlib/CategoryTheory/Limits/Types/Equalizers.lean,Mathlib/CategoryTheory/Limits/Types/Products.lean,Mathlib/CategoryTheory/Monoidal/Braided/Multifunctor.lean,Mathlib/CategoryTheory/Monoidal/Closed/Basic.lean,Mathlib/CategoryTheory/Monoidal/Comon_.lean,Mathlib/CategoryTheory/Monoidal/Mod.lean,Mathlib/CategoryTheory/MorphismProperty/OfObjectProperty.lean,Mathlib/CategoryTheory/Shift/CommShift.lean,Mathlib/CategoryTheory/Shift/ShiftedHomOpposite.lean,Mathlib/CategoryTheory/Sites/IsSheafFor.lean,Mathlib/CategoryTheory/Subfunctor/SubmonoidFunctor.lean,Mathlib/CategoryTheory/Yoneda.lean,Mathlib/Combinatorics/Enumerative/Stirling.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/SumTransform.lean,Mathlib/Data/Fin/VecNotation.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/Data/Nat/Factorization/PrimePow.lean,Mathlib/Data/PFunctor/Multivariate/Basic.lean,Mathlib/Data/Real/Embedding.lean,Mathlib/Data/Rel.lean,Mathlib/Data/Seq/Basic.lean,Mathlib/Data/Set/FiniteExhaustion.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Data/Set/Pairwise/Lattice.lean,Mathlib/Data/Subtype.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/Geometry/Manifold/Bordism.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Polygon/Basic.lean,Mathlib/GroupTheory/Coxeter/Basic.lean,Mathlib/GroupTheory/FiniteIndexNormalSubgroup.lean,Mathlib/GroupTheory/FreeGroup/Orbit.lean,Mathlib/GroupTheory/GroupAction/ConjAct.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean,Mathlib/GroupTheory/SpecificGroups/Quaternion.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Centroid.lean,Mathlib/LinearAlgebra/Basis/Defs.lean |
167 |
21 |
['dagurtomas', 'felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts', 'tb65536'] |
dagurtomas assignee:dagurtomas |
7-5210 7 days ago |
7-8327 7 days ago |
38-15930 38 days |
| 39553 |
Brian-Nugent author:Brian-Nugent |
feat(Algebra/CategoryTheory/ModuleCat): Locally Free is local |
We define `SheafOfModules.LocalGeneratorsData.bind` just like `SheafOfModules.QuasicoherentData.bind` and use it to show that being locally free is a local condition.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #39544
- [x] depends on: #39399
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
56/4 |
Mathlib/Algebra/Category/ModuleCat/Sheaf/Generators.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/LocallyFree.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean |
3 |
6 |
['Brian-Nugent', 'dagurtomas', 'github-actions', 'mathlib-dependent-issues'] |
alreadydone assignee:alreadydone |
7-1744 7 days ago |
10-29894 10 days ago |
76-19790 76 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 |
7-1541 7 days ago |
7-2489 7 days ago |
7-2477 7 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 |
7-846 7 days ago |
18-49708 18 days ago |
123-42938 123 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'] |
nobody |
7-842 7 days ago |
28-75284 28 days ago |
52-58607 52 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 |
51/0 |
Mathlib/Analysis/LocallyConvex/WithSeminorms.lean |
1 |
1 |
['github-actions'] |
nobody |
7-106 7 days ago |
7-1416 7 days ago |
7-1404 7 days |
| 41564 |
felixpernegger author:felixpernegger |
chore: unexpose public sections with no defs |
This PR remove `@[expose]` from public sections when there are no `(irredcible_)def`'s inside the section anyways, so there is no reason to expose the section (does not make a difference).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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 |
22/22 |
Mathlib/Algebra/Field/Rat.lean,Mathlib/Algebra/HierarchyDesign.lean,Mathlib/Algebra/Notation/Pi/Defs.lean,Mathlib/Algebra/Order/Archimedean/Real/Basic.lean,Mathlib/Algebra/Order/Nonneg/Lattice.lean,Mathlib/Algebra/Order/Ring/Unbundled/Rat.lean,Mathlib/Analysis/InnerProductSpace/Coalgebra.lean,Mathlib/Analysis/ODE/ExistUnique.lean,Mathlib/CategoryTheory/MorphismProperty/LocalClosure.lean,Mathlib/Data/ENat/Pow.lean,Mathlib/Data/Finsupp/PointwiseSMul.lean,Mathlib/Data/Sigma/Order.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Lattice/Nat.lean,Mathlib/RingTheory/Coalgebra/CoassocSimps.lean,Mathlib/RingTheory/QuasiFinite/Basic.lean,Mathlib/RingTheory/QuasiFinite/Weakly.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/Topology/Category/DeltaGenerated.lean,Mathlib/Topology/EMetricSpace/Weak.lean,Mathlib/Topology/List.lean |
22 |
8 |
['JovanGerb', 'felixpernegger', 'github-actions', 'grunweg', 'mathlib-merge-conflicts', 'themathqueen'] |
JovanGerb assignee:JovanGerb |
6-86042 6 days ago |
7-2781 7 days ago |
13-59125 13 days |
| 41749 |
felixpernegger author:felixpernegger |
chore: remove redudant `have`'s |
This PR removes most unused `have` statements in mathlib.
Some edge cases (Prop valued fields, have statements with arguments, etc) are not yet included (but this already took my computer 7 hours, so I will push that for later).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
5/358 |
Archive/Imo/Imo1998Q2.lean,Counterexamples/NowhereDifferentiable.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean,Mathlib/Algebra/ContinuedFractions/Computation/TerminatesIffRat.lean,Mathlib/Algebra/Homology/Factorizations/CM5a.lean,Mathlib/Algebra/Homology/SpectralObject/Basic.lean,Mathlib/Algebra/Homology/SpectralObject/HasSpectralSequence.lean,Mathlib/Algebra/Module/ZLattice/Basic.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/Algebra/Ring/Ext.lean,Mathlib/AlgebraicGeometry/FunctionField.lean,Mathlib/AlgebraicGeometry/Geometrically/Reduced.lean,Mathlib/AlgebraicGeometry/Group/Abelian.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiFinite.lean,Mathlib/AlgebraicGeometry/OrderOfVanishing.lean,Mathlib/AlgebraicGeometry/QuasiAffine.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/AlgebraicTopology/ModelCategory/BifibrantObjectHomotopy.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Inner/Basic.lean,Mathlib/AlgebraicTopology/SingularHomology/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Mul.lean,Mathlib/Analysis/Calculus/FDeriv/WithLp.lean,Mathlib/Analysis/InnerProductSpace/NormDet.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/Normed/Field/Krasner.lean,Mathlib/Analysis/Normed/Module/RCLike/Basic.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/Real/Pi/Irrational.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/ConjSqrt.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/RingInverseOrder.lean,Mathlib/Analysis/SpecialFunctions/Elliptic/Weierstrass.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Beta.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/EulerSineProd.lean,Mathlib/CategoryTheory/Abelian/SerreClass/Localization.lean,Mathlib/CategoryTheory/ConcreteCategory/EpiMono.lean,Mathlib/CategoryTheory/EffectiveEpi/Comp.lean,Mathlib/CategoryTheory/Galois/Examples.lean,Mathlib/CategoryTheory/Generator/StrongGenerator.lean,Mathlib/CategoryTheory/Limits/Elements.lean,Mathlib/CategoryTheory/Limits/HasLimits.lean,Mathlib/CategoryTheory/Limits/Types/Pushouts.lean,Mathlib/CategoryTheory/LocallyCartesianClosed/ChosenPullbacksAlong.lean,Mathlib/CategoryTheory/Monoidal/Braided/Reflection.lean,Mathlib/CategoryTheory/MorphismProperty/CommaSites.lean,Mathlib/CategoryTheory/MorphismProperty/Limits.lean,Mathlib/CategoryTheory/Preadditive/Projective/Basic.lean,Mathlib/CategoryTheory/Presentable/CardinalFilteredPresentation.lean,Mathlib/CategoryTheory/Presentable/Retracts.lean,Mathlib/CategoryTheory/Sites/Coherent/LocallySurjective.lean,Mathlib/CategoryTheory/Sites/Continuous.lean,Mathlib/CategoryTheory/Sites/CoverPreserving.lean,Mathlib/CategoryTheory/Subobject/Limits.lean,Mathlib/CategoryTheory/Triangulated/Functor.lean,Mathlib/Combinatorics/Additive/VerySmallDoubling.lean,Mathlib/Combinatorics/SetFamily/AhlswedeZhang.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Condensed/Discrete/Characterization.lean,Mathlib/Condensed/Discrete/Colimit.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/List/MinMax.lean,Mathlib/Data/List/PeriodicityLemma.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Data/Seq/Basic.lean,Mathlib/FieldTheory/Galois/IsGaloisGroup.lean,Mathlib/FieldTheory/NormalizedTrace.lean,Mathlib/FieldTheory/PurelyInseparable/Basic.lean,Mathlib/FieldTheory/PurelyInseparable/Tower.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/Geometry/Euclidean/Angle/Bisector.lean,Mathlib/Geometry/Euclidean/Inversion/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean,Mathlib/GroupTheory/GroupAction/Jordan.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/Combination.lean,Mathlib/GroupTheory/IndexNSmul.lean,Mathlib/GroupTheory/Perm/MaximalSubgroups.lean,Mathlib/LinearAlgebra/Charpoly/BaseChange.lean,Mathlib/LinearAlgebra/Determinant.lean,Mathlib/LinearAlgebra/Dimension/Constructions.lean,Mathlib/LinearAlgebra/PiTensorProduct/DirectSum.lean,Mathlib/LinearAlgebra/Trace.lean,Mathlib/LinearAlgebra/Transvection/Basic.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondJensen.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/AbsolutelyContinuousFun.lean,Mathlib/MeasureTheory/Measure/Stieltjes.lean,Mathlib/MeasureTheory/Measure/Typeclasses/ZeroOne.lean,Mathlib/MeasureTheory/VectorMeasure/Integral.lean,Mathlib/NumberTheory/Bernoulli.lean,Mathlib/NumberTheory/Cyclotomic/Basic.lean,Mathlib/NumberTheory/Cyclotomic/PrimitiveRoots.lean,Mathlib/NumberTheory/DirichletCharacter/Basic.lean,Mathlib/NumberTheory/Divisors.lean,Mathlib/NumberTheory/FLT/Three.lean |
186 |
13 |
['SnirBroshi', 'felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
6-86007 6 days ago |
7-2596 7 days ago |
17-40129 17 days |
| 41933 |
felixpernegger author:felixpernegger |
chore: prefer `beta_reduce` over `(d)simp only` |
Insired by discussion at #38989.
This PR replaces `(d)simp only` (with no arguments) with the slightly cheaper `beta_reduce` whenever that works and doesnt change the goal. This also increases code readability a bit
More could be replaced if we allow the goal to be changed. Additonally, some of the `simp only` could be removed entirely (I dont think doing either one of those is good 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/)
|
|
192/192 |
Mathlib/Algebra/Category/Grp/EpiMono.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/DirectSum/Idempotents.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/GroupWithZero/WithZero.lean,Mathlib/Algebra/MonoidAlgebra/NoZeroDivisors.lean,Mathlib/Algebra/MvPolynomial/Derivation.lean,Mathlib/Algebra/Order/CauSeq/BigOperators.lean,Mathlib/Algebra/Order/Module/HahnEmbedding.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/AffineAnd.lean,Mathlib/AlgebraicGeometry/Morphisms/SurjectiveOnStalks.lean,Mathlib/Analysis/Asymptotics/TVS.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Continuity.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/Unitary/Connected.lean,Mathlib/Analysis/CStarAlgebra/Unitization.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Calculus/FDeriv/Analytic.lean,Mathlib/Analysis/Calculus/LHopital.lean,Mathlib/Analysis/Calculus/ParametricIntegral.lean,Mathlib/Analysis/Complex/ValueDistribution/Cartan.lean,Mathlib/Analysis/Convex/Gauge.lean,Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/Analysis/Fourier/AddCircleMulti.lean,Mathlib/Analysis/InnerProductSpace/Projection/FiniteDimensional.lean,Mathlib/Analysis/MellinTransform.lean,Mathlib/Analysis/Normed/Algebra/Exponential.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/SpecialFunctions/CompareExp.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral.lean,Mathlib/Analysis/SpecialFunctions/ImproperIntegrals.lean,Mathlib/Analysis/SpecialFunctions/Integrability/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean,Mathlib/Analysis/SpecialFunctions/Pow/Continuity.lean,Mathlib/Analysis/SpecialFunctions/Pow/Integral.lean,Mathlib/CategoryTheory/Bicategory/End.lean,Mathlib/Combinatorics/Hall/Basic.lean,Mathlib/Combinatorics/Hall/Finite.lean,Mathlib/Computability/PartrecCode.lean,Mathlib/Computability/RE.lean,Mathlib/Computability/TuringMachine/Config.lean,Mathlib/Computability/TuringMachine/ToPartrec.lean,Mathlib/Data/DFinsupp/Defs.lean,Mathlib/Data/ENat/Pow.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/List/NodupEquivFin.lean,Mathlib/Data/Nat/Factorization/Basic.lean,Mathlib/Data/Nat/Factorization/LCM.lean,Mathlib/Data/Setoid/Partition.lean,Mathlib/FieldTheory/CardinalEmb.lean,Mathlib/Geometry/Euclidean/Incenter.lean,Mathlib/Geometry/Euclidean/Triangle.lean,Mathlib/Geometry/Manifold/Riemannian/PathELength.lean,Mathlib/GroupTheory/CoprodI.lean,Mathlib/GroupTheory/Coxeter/Basic.lean,Mathlib/GroupTheory/Divisible.lean,Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/GroupTheory/GroupAction/MultiplePrimitivity.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/HNNExtension.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic/Basic.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/LinearAlgebra/AffineSpace/Independent.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/LinearAlgebra/Matrix/Adjugate.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean,Mathlib/LinearAlgebra/Matrix/Rank.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Matrix/ZPow.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/RootSystem/Finite/Nondegenerate.lean,Mathlib/LinearAlgebra/RootSystem/OfBilinear.lean,Mathlib/LinearAlgebra/SpecialLinearGroup.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Real.lean,Mathlib/MeasureTheory/Function/AbsolutelyContinuous.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondexpL2.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Function/LpSpace/Complete.lean,Mathlib/MeasureTheory/Function/LpSpace/Indicator.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Integral/RieszMarkovKakutani/Basic.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/MeasureTheory/MeasurableSpace/Prod.lean,Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/NumberTheory/JacobiSum/Basic.lean,Mathlib/NumberTheory/MulChar/Basic.lean,Mathlib/NumberTheory/NumberField/CMField.lean,Mathlib/NumberTheory/RamificationInertia/HilbertTheory.lean,Mathlib/Order/Category/NonemptyFinLinOrd.lean,Mathlib/Order/CountableSupClosed.lean,Mathlib/Order/Filter/Finite.lean,Mathlib/Order/PiLex.lean |
131 |
5 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
6-85336 6 days ago |
7-1867 7 days ago |
29-20374 29 days |
| 36507 |
BryceT233 author:BryceT233 |
feat(RingTheory/MvPowerSeries): various equivalences for `MvPowerSeries` |
This PR adds a number of equivalences related to power series rings and is patterned after `Mathlib/Algebra/MvPolynomial/Equiv.lean`.
To be specific, it adds:
* `MvPowerSeries.isEmptyEquiv` : The isomorphism between multivariable power series
in no variables and the ground ring.
* `MvPowerSeries.uniqueEquiv` : The isomorphism between multivariable power series
in a single variable and power series over the ground ring.
* `MvPowerSeries.mapEquiv`, `MvPowerSeries.mapAlgEquiv` : The isomorhism between
multivariable power series induced by an isomorphism between the coefficient rings.
* `MvPowerSeries.sumAlgEquiv` : The isomorphism between multivariable power series
in a sum of two types, and multivariable power series in one of the types,
with coefficients in multivariable power series in the other type.
* `MvPowerSeries.commAlgEquiv` : The isomorphism between multivariable power series
in variables `σ` of multivariable power series in variables `τ` and multivariable power series
in variables `τ` of multivariable power series in variables `σ`.
* `MvPowerSeries.optionEquivLeft` : The isomorphism between multivariable power series
in `Option σ` and power series with coefficients in `MvPowerSeries σ R`.
* `MvPowerSeries.optionEquivRight` : The isomorphism between multivariable power series
in `Option σ` and multivariable power series in `σ` with coefficients in `PowerSeries R`
* `MvPowerSeries.finSuccEquiv` : The isomorphism between multivariable power series
in `Fin (n + 1)` and power series over multivariable power series in `Fin n`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
- [x] depends on: #35329
- [x] depends on: #36506
- [x] depends on: #40205 |
t-ring-theory |
405/11 |
Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Equiv.lean |
2 |
27 |
['AntoineChambert-Loir', 'BryceT233', 'Thmoas-Guan', 'WenrongZou', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
alreadydone assignee:alreadydone |
6-80374 6 days ago |
6-80999 6 days ago |
90-31862 90 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'] |
nobody |
6-79225 6 days ago |
57-65259 57 days ago |
58-61540 58 days |
| 42397 |
joelriou author:joelriou |
feat(CategoryTheory): `ContAction FintypeCat G` is a Galois category |
---
- [x] depends on: #42396
- [x] depends on: #42320
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory
large-import
|
222/7 |
Mathlib.lean,Mathlib/CategoryTheory/Action/Basic.lean,Mathlib/CategoryTheory/Action/Continuous.lean,Mathlib/CategoryTheory/Galois/ContAction.lean,Mathlib/CategoryTheory/Galois/FullSubcategory.lean,Mathlib/CategoryTheory/ObjectProperty/EpiMono.lean,Mathlib/CategoryTheory/ObjectProperty/FiniteLimits.lean,Mathlib/Topology/Algebra/OpenSubgroup.lean |
8 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
dagurtomas assignee:dagurtomas |
6-76648 6 days ago |
9-51149 9 days ago |
9-51138 9 days |
| 42584 |
elazarg author:elazarg |
feat(InformationTheory/Coding): add Kraft inequality for prefix-free codes |
This PR defines prefix-free codes as arbitrary sets of words and proves that a prefix-free code not containing the empty word is uniquely decodable. In particular, every nontrivial prefix-free code is uniquely decodable. It is a direct continuation of #34108, which introduced uniquely decodable codes and the Kraft–McMillan inequality.
For a finite nonempty alphabet, it derives Kraft's inequality for finite prefix-free codes from the Kraft–McMillan inequality. It then extends the result to arbitrary sets of codewords by bounding every finite partial sum, proving summability and the corresponding bound on the infinite Kraft sum.
The existing uniquely decodable code API is also renamed to follow the `Is...` naming convention, and the Kraft–McMillan theorem is renamed to describe its statement.
Moves:
- InformationTheory.UniquelyDecodable -> InformationTheory.IsUniquelyDecodable
- InformationTheory.UniquelyDecodable.epsilon_not_mem -> InformationTheory.IsUniquelyDecodable.epsilon_not_mem
- InformationTheory.UniquelyDecodable.flatten_injective -> InformationTheory.IsUniquelyDecodable.flatten_injective
- InformationTheory.kraft_mcmillan_inequality -> InformationTheory.IsUniquelyDecodable.finsetSum_one_div_card_pow_length_le_one
---
This is another part of https://github.com/elazarg/kraft. Comments about next items are welcome.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
maintainer-merge
|
192/15 |
Mathlib.lean,Mathlib/InformationTheory/Coding/Kraft.lean,Mathlib/InformationTheory/Coding/KraftMcMillan.lean,Mathlib/InformationTheory/Coding/PrefixFree.lean,Mathlib/InformationTheory/Coding/UniquelyDecodable.lean |
5 |
44 |
['EtienneC30', 'elazarg', 'github-actions', 'wwylele'] |
EtienneC30 assignee:EtienneC30 |
6-66710 6 days ago |
7-35791 7 days ago |
13-26900 13 days |
| 39692 |
YaelDillies author:YaelDillies |
chore(Algebra/Order/BigOperators): follow the `₀` naming convention |
We have long agreed that `MonoidWithZero` lemmas corresponding to `Monoid` lemmas should be suffixed with `₀`, while currently it is the `Monoid` lemmas that are primed.
Also deprecate two primed lemmas that only differed from the unprimed versions in a minor way.
## Renames
Moves:
* `finprod_le_finprod'` → `finprod_le_finprod`
* `finprod_le_finprod` → `finprod_le_finprod₀`
* `Finset.prod_le_prod'` → `Finset.prod_le_prod`
* `Finset.one_le_prod'` → `Finset.one_le_prod`
* `Finset.one_le_prod''` → `Finset.one_le_prod`
* `Finset.sum_nonneg'` → `Finset.sum_nonneg`
* `Finset.prod_le_one'` → `Finset.prod_le_one`
* `Finset.prod_le_prod_of_subset_of_one_le'` → `Finset.prod_le_prod_of_subset_of_one_le`
* `Finset.prod_le_prod_of_subset_of_le_one'` → `Finset.prod_le_prod_of_subset_of_le_one`
* `Finset.prod_mono_set_of_one_le'` → `Finset.prod_mono_set_of_one_le`
* `Finset.prod_anti_set_of_le_one'` → `Finset.prod_anti_set_of_le_one`
* `Finset.prod_le_univ_prod_of_one_le'` → `Finset.prod_le_univ_prod_of_one_le`
* `Finset.prod_eq_one_iff_of_one_le'` → `Finset.prod_eq_one_iff_of_one_le`
* `Finset.prod_eq_one_iff_of_le_one'` → `Finset.prod_eq_one_iff_of_le_one`
* `Finset.single_le_prod'` → `Finset.single_le_prod`
* `Finset.prod_fiberwise_le_prod_of_one_le_prod_fiber'` → `Finset.prod_fiberwise_le_prod_of_one_le_prod_fiber`
* `Finset.prod_le_prod_fiberwise_of_prod_fiber_le_one'` → `Finset.prod_le_prod_fiberwise_of_prod_fiber_le_one`
* `Finset.abs_sum_of_nonneg'` → `Finset.abs_sum_of_nonneg`
* `Finset.prod_le_prod_of_subset'` → `Finset.prod_le_prod_of_subset`
* `Finset.prod_mono_set'` → `Finset.prod_mono_set`
* `Finset.prod_le_prod_of_ne_one'` → `Finset.prod_le_prod_of_ne_one`
* `Finset.prod_lt_prod'` → `Finset.prod_lt_prod`
* `Finset.prod_lt_prod_of_nonempty'` → `Finset.prod_lt_prod_of_nonempty`
* `Finset.prod_lt_prod_of_subset'` → `Finset.prod_lt_prod_of_subset`
* `Finset.single_lt_prod'` → `Finset.single_lt_prod`
* `Finset.exists_lt_of_prod_lt'` → `Finset.exists_lt_of_prod_lt`
* `Finset.exists_le_of_prod_le'` → `Finset.exists_le_of_prod_le`
* `Finset.exists_one_lt_of_prod_one_of_exists_ne_one'` → `Finset.exists_one_lt_of_prod_one_of_exists_ne_one`
* `Finset.prod_le_prod_of_injOn'` → `Finset.prod_le_prod_of_injOn`
* `Finset.prod_le_prod_of_injOn` → `Finset.prod_le_prod_of_injOn₀`
* `Fintype.prod_mono'` → `Fintype.prod_mono`
* `Fintype.prod_strictMono'` → `Fintype.prod_strictMono`
* `List.Forall₂.prod_le_prod'` → `List.Forall₂.prod_le_prod`
* `List.Sublist.prod_le_prod'` → `List.Sublist.prod_le_prod`
* `List.SublistForall₂.prod_le_prod'` → `List.SublistForall₂.prod_le_prod`
* `List.prod_le_prod'` → `List.prod_le_prod`
* `List.prod_lt_prod'` → `List.prod_lt_prod`
* `List.exists_lt_of_prod_lt'` → `List.exists_lt_of_prod_lt`
* `List.exists_le_of_prod_le'` → `List.exists_le_of_prod_le`
* `Multiset.prod_lt_prod'` → `Multiset.prod_lt_prod`
* `Multiset.prod_lt_prod_of_nonempty'` → `Multiset.prod_lt_prod_of_nonempty`
* `Finset.prod_le_prod` → `Finset.prod_le_prod₀`
* `Finset.prod_le_one` → `Finset.prod_le_one₀`
* `Finset.one_le_prod` → `Finset.one_le_prod`
* `Finset.prod_le_prod_of_subset_of_one_le` → `Finset.prod_le_prod_of_subset_of_one_le₀`
* `Finset.prod_le_prod_of_subset_of_le_one` → `Finset.prod_le_prod_of_subset_of_le_one₀`
* `Finset.prod_mono_set_of_one_le` → `Finset.prod_mono_set_of_one_le₀`
* `Finset.prod_anti_set_of_le_one` → `Finset.prod_anti_set_of_le_one₀`
* `Finset.prod_lt_prod` → `Finset.prod_lt_prod₀`
* `Finset.prod_lt_prod_of_nonempty` → `Finset.prod_lt_prod_of_nonempty₀`
## Deprecations
* `Finset.sum_nonneg'`, `Finset.one_le_prod''`
[Zulip](https://leanprover.zulipchat.com/#narrow/channel/345428-mathlib-reviewers/topic/The.20.E2.82.80.20suffix/with/604912624)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-order
label:t-algebra$ |
317/243 |
Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Submonoid/Pointwise.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/BigOperators/Group/Multiset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/InnerProductSpace/Orientation.lean,Mathlib/Analysis/InnerProductSpace/Subspace.lean,Mathlib/Analysis/Normed/Ring/Basic.lean,Mathlib/Analysis/Normed/Ring/InfiniteProd.lean,Mathlib/Analysis/ODE/DiscreteGronwall.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Extremal.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Geometry/Convex/ConvexSpace/Defs.lean,Mathlib/MeasureTheory/Constructions/Pi.lean,Mathlib/MeasureTheory/Measure/HasOuterApproxClosedProd.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/NumberTheory/Bertrand.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/NumberTheory/Height/MvPolynomial.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Basic.lean,Mathlib/NumberTheory/Primorial.lean,Mathlib/NumberTheory/SelbergSieve.lean,Mathlib/NumberTheory/SiegelsLemma.lean,Mathlib/NumberTheory/SmoothNumbers.lean,Mathlib/Probability/ProductMeasure.lean,Mathlib/RingTheory/Polynomial/Cyclotomic/Eval.lean,Mathlib/Topology/Algebra/InfiniteSum/ENNReal.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean |
36 |
17 |
['Vierkantor', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts', 'vihdzp'] |
b-mehta assignee:b-mehta |
6-62797 6 days ago |
6-65018 6 days ago |
40-76431 40 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 |
6-58229 6 days ago |
9-11505 9 days ago |
9-11544 9 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 |
6-54774 6 days ago |
12-58484 12 days ago |
15-76664 15 days |
| 42856 |
plp127 author:plp127 |
chore(FieldTheory/IntermediateField/Adjoin): fix recursors |
Name the motive `motive` and name the minor premises according to their contents. Also make the motive implicit.
The motivation for naming the motive `motive` is to make it consistent across all the recursors, and to give it a more descriptive name, and to make it easier to find recursors by a text search. The motivation for renaming the minor premise arguments is to give them more descriptive names, since they are used as the names of `induction` arms and `cases` arms. The motivation for making the motive implicit is that you usually don't want to fill this in yourself, but rather let `induction` or `cases` or `@[elab_as_elim]` fill it in for you. The motive can still be specified explicitly by writing `(motive := ...)`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
51/45 |
Mathlib/FieldTheory/IntermediateField/Adjoin/Algebra.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Defs.lean,Mathlib/FieldTheory/PrimitiveElement.lean,Mathlib/FieldTheory/SeparableDegree.lean |
4 |
4 |
['Vierkantor', 'github-actions', 'plp127'] |
nobody |
6-46952 6 days ago |
6-48049 6 days ago |
6-66206 6 days |
| 41313 |
joelriou author:joelriou |
feat(CategoryTheory/Limits): weighted limits commute with limits |
For a given weight, we show that it commutes with limits. As it had already been shown for the other variable, it follows that weighted limits commute with limits in both variables.
---
- [x] depends on: #41146
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory
tech debt
|
102/44 |
Mathlib/CategoryTheory/Elements.lean,Mathlib/CategoryTheory/Limits/Elements.lean,Mathlib/CategoryTheory/Limits/Weighted/HasWeightedLimit.lean,Mathlib/CategoryTheory/Limits/Weighted/PreservesLimit.lean,Mathlib/CategoryTheory/Opposites.lean |
5 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
6-29870 6 days ago |
6-29911 6 days ago |
8-10568 8 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 |
6-29728 6 days ago |
7-54904 7 days ago |
7-55570 7 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 |
6-28951 6 days ago |
36-32243 36 days ago |
49-51770 49 days |
| 41896 |
felixpernegger author:felixpernegger |
chore: replace `simp_all` with `simp` whenever possible |
Replaces `simp_all (only)` with `simp (only)` whenever possible. About 5% of total `simp_all` occurences. Excludes MathlibTest.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
100/104 |
Archive/Arithcc.lean,Archive/Imo/Imo2024Q3.lean,Mathlib/Algebra/BigOperators/Intervals.lean,Mathlib/Algebra/Category/Grp/ForgetCorepresentable.lean,Mathlib/Algebra/GroupWithZero/ProdHom.lean,Mathlib/Algebra/Homology/SpectralObject/HasSpectralSequence.lean,Mathlib/Algebra/Module/Torsion/PrimaryComponent.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Expand.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Reduction.lean,Mathlib/Analysis/Analytic/Binomial.lean,Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Convex/MetricSpace.lean,Mathlib/Analysis/Meromorphic/Basic.lean,Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Meromorphic/FactorizedRational.lean,Mathlib/Analysis/Polynomial/Fourier.lean,Mathlib/Analysis/SpecialFunctions/BinaryEntropy.lean,Mathlib/Analysis/SpecialFunctions/Integrals/PosLogEqCircleAverage.lean,Mathlib/Analysis/SpecialFunctions/Log/PosLog.lean,Mathlib/CategoryTheory/Action/Basic.lean,Mathlib/CategoryTheory/Functor/TypeValuedFlat.lean,Mathlib/CategoryTheory/Topos/Sheaf.lean,Mathlib/Combinatorics/Quiver/Path/Vertices.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Data/Finsupp/Basic.lean,Mathlib/Data/List/Nodup.lean,Mathlib/Data/List/PeriodicityLemma.lean,Mathlib/Data/List/ProdSigma.lean,Mathlib/Data/List/Sigma.lean,Mathlib/Data/Nat/Digits/Lemmas.lean,Mathlib/Data/PEquiv.lean,Mathlib/Data/PNat/Xgcd.lean,Mathlib/Data/Set/Image.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Data/TypeVec.lean,Mathlib/Data/Vector/Basic.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean,Mathlib/GroupTheory/PushoutI.lean,Mathlib/LinearAlgebra/Basis/Exact.lean,Mathlib/LinearAlgebra/Finsupp/Pi.lean,Mathlib/MeasureTheory/Constructions/Polish/StronglyMeasurable.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Measure/CharacteristicFunction/TaylorExpansion.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/NumberTheory/Height/MvPolynomial.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/Defs.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/Order/ScottContinuity/Prod.lean,Mathlib/Order/SetDissipate.lean,Mathlib/Order/SuccPred/Basic.lean,Mathlib/Order/WithBot.lean,Mathlib/Probability/Kernel/Deterministic.lean,Mathlib/Probability/Kernel/Representation.lean,Mathlib/RepresentationTheory/Homological/TateCohomology/Basic.lean,Mathlib/RepresentationTheory/Tannaka.lean,Mathlib/RingTheory/Adjoin/Polynomial/Bivariate.lean,Mathlib/RingTheory/Binomial.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/HahnSeries/Basic.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/Summable.lean,Mathlib/RingTheory/Multiplicity.lean,Mathlib/RingTheory/Nilpotent/Exp.lean,Mathlib/RingTheory/OrderOfVanishing/Basic.lean,Mathlib/RingTheory/OrderOfVanishing/Noetherian.lean,Mathlib/RingTheory/PowerSeries/Schroder.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/RingTheory/Valuation/IsTrivialOn.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/SetTheory/Lists.lean,Mathlib/Topology/LocallyFinsupp.lean,Mathlib/Topology/MetricSpace/Bounded.lean |
78 |
26 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'themathqueen', 'vlad902'] |
nobody |
6-26853 6 days ago |
6-30041 6 days ago |
34-58001 34 days |
| 42560 |
SnirBroshi author:SnirBroshi |
feat(Order/Preorder/Chain): `List.IsChain` implies `IsChain` for transitive 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-order
easy
maintainer-merge
|
5/0 |
Mathlib/Order/Preorder/Chain.lean |
1 |
5 |
['Ruben-VandeVelde', 'SnirBroshi', 'bocowgill', 'github-actions'] |
nobody |
6-20557 6 days ago |
16-1881 16 days ago |
16-1869 16 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 |
6-20494 6 days ago |
45-52624 45 days ago |
47-84498 47 days |
| 41458 |
SnirBroshi author:SnirBroshi |
feat(Data/List/Basic): lists with equal `tail` and `dropLast` are equal |
(except for subsingleton lists), and also lists with equal `head?` and `tail`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
17/0 |
Mathlib/Data/List/Basic.lean |
1 |
7 |
['Ruben-VandeVelde', 'SnirBroshi', 'Vierkantor', 'felixpernegger', 'github-actions'] |
nobody |
6-20116 6 days ago |
47-26414 47 days ago |
47-26402 47 days |
| 42405 |
FrankieNC author:FrankieNC |
perf(Data/Rel): use `grind` instead of `aesop` |
Most of the elaboration time of `Mathlib/Data/Rel.lean` goes into its 55 `aesop` calls. Replacing most of them with a single `grind` call and the relevant `mem_*` lemma keeps every proof to one automation call and cuts the elaboration time of the file by about half (on my PC).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
71/56 |
Mathlib/Data/Rel.lean |
1 |
20 |
['FrankieNC', 'chenson2018', 'github-actions', 'grunweg', 'leanprover-radar'] |
nobody |
6-18410 6 days ago |
6-20589 6 days ago |
20-7806 20 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 |
6-17054 6 days ago |
10-39861 10 days ago |
10-39849 10 days |
| 40582 |
dennj author:dennj |
feat(Analysis): the one-sided Laplace transform |
Introducing Laplace transform `ℒ(f)(s) = ∫ t in Ioi 0, exp (-s * t) • f t`
It is needed in physlib
I modelled the file following Mellin transform.
## Main definitions
* `LaplaceConvergent f s`: the Laplace integral is well-defined at `s`.
* `laplace f s`: the Laplace transform, a total function
* `HasLaplace f s m`: convergence together with the value `m`.
## Main results
* Linearity: `laplace_add`/`sub`/`const_smul`/`neg`/`zero`/`div_const`, at the `laplace`, `LaplaceConvergent`, and `HasLaplace` levels.
* `laplaceConvergent_iff_norm`, `norm_laplace_le_integral_norm`: reduction of convergence and norm bounds to the real exponential weight.
* `laplaceConvergent_of_isBigO_exp`: existence for functions of exponential order, on the appropriate right half-plane.
* `LaplaceConvergent.of_re_le`/`of_re_lt`: monotonicity of convergence in `s.re` (the half-plane structure).
* `laplace_cexp_smul`: the frequency-shift rule.
* `laplace_indicator_comp_sub`: the time-shift rule.
* `laplace_comp_mul_left`/`right`: behaviour under positive dilation.
* `hasLaplace_const`/`hasLaplace_one`/`hasLaplace_cexp`: basic transform values.
Human made PR |
t-measure-probability
new-contributor
|
653/0 |
Mathlib.lean,Mathlib/Analysis/LaplaceTransform.lean |
2 |
34 |
['AlyciaBHZ', 'EtienneC30', 'dennj', 'github-actions', 'mathlib-splicebot'] |
sgouezel assignee:sgouezel |
6-16849 6 days ago |
17-36828 17 days ago |
69-81863 69 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 |
6-16039 6 days ago |
6-16633 6 days ago |
6-16811 6 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 |
6-11713 6 days ago |
6-21202 6 days ago |
21-14797 21 days |
| 41872 |
plp127 author:plp127 |
chore(NumberTheory/Niven): generalize theorems |
Move some theorems out of the Niven's theorem file and generalize them.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
30/19 |
Mathlib/NumberTheory/Niven.lean,Mathlib/RingTheory/IntegralClosure/IsIntegral/Basic.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean,Mathlib/RingTheory/Polynomial/RationalRoot.lean |
4 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
6-9838 6 days ago |
6-10931 6 days ago |
37-12985 37 days |
| 42873 |
teorth author:teorth |
feat(Algebra/Order/Chebyshev): the Cauchy–Schwarz inequality for multisets |
Add `Multiset.sq_sum_le_card_mul_sum_sq`, the multiset analogue of the existing `sq_sum_le_card_mul_sum_sq`: `m.sum ^ 2 ≤ m.card * (m.map (· ^ 2)).sum`. It is derived from the `Finset` version via `Multiset.toEnumFinset`, combined with a new helper lemma `Multiset.sum_map_eq_sum_toEnumFinset` to convert between `Multiset.sum` and `Finset.sum` when a `Multiset.map` is involved.
---
The code here was prepared with AI assistance, but then golfed and reviewed by myself. It will be used in a forthcoming PR on the Newton and Maclaurin inequalities.
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
15/0 |
Mathlib/Algebra/Order/Chebyshev.lean,Mathlib/Data/Multiset/Fintype.lean |
2 |
8 |
['felixpernegger', 'github-actions', 'teorth'] |
nobody |
6-9460 6 days ago |
6-13410 6 days ago |
6-30135 6 days |
| 42069 |
plp127 author:plp127 |
feat: isomorphism of `AdjoinRoot (f.comp g)` |
Prove that adjoining a root of `f.comp g` (this is `f(g(x))`) is the same as adjoining a root of `f` first, and then adjoining a root of `g - root f`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
74/0 |
Mathlib/RingTheory/AdjoinRoot.lean |
1 |
1 |
['github-actions'] |
nobody |
6-9171 6 days ago |
30-17886 30 days ago |
30-18893 30 days |
| 41459 |
EzequielS2 author:EzequielS2 |
feat(Algebra/Group): mulOpposite equivs for submonoid and subgroup |
## Summary
Add MulOpposite monoid equivalences for submonoids and subgroups, and remove the corresponding TODOs in `Subsemiring/MulOpposite.lean`.
## Test plan
- [x] `lake build` and `lake exe runLinter` on `Mathlib.Algebra.Group.Submonoid.MulOpposite` and `Mathlib.Algebra.Group.Subgroup.MulOpposite`
|
t-algebra
new-contributor
label:t-algebra$ |
78/4 |
Mathlib/Algebra/Group/Subgroup/MulOpposite.lean,Mathlib/Algebra/Group/Submonoid/MulOpposite.lean,Mathlib/Algebra/Ring/Subsemiring/MulOpposite.lean |
3 |
11 |
['EzequielS2', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen', 'wwylele'] |
nobody |
6-6803 6 days ago |
6-9030 6 days ago |
47-19636 47 days |
| 41967 |
peakpoint author:peakpoint |
feat(Data/Set/Finite): `Set.Finite.sigma` |
---
might be worth extracting the corresponding lemma for pi types too
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
56/2 |
Mathlib.lean,Mathlib/Data/Finite/Sigma.lean,Mathlib/Logic/Equiv/Prod.lean,Mathlib/Logic/Equiv/Sigma.lean |
4 |
4 |
['Ruben-VandeVelde', 'Vierkantor', 'github-actions', 'peakpoint'] |
nobody |
6-3593 6 days ago |
6-6667 6 days ago |
33-39161 33 days |
| 40534 |
mcdoll author:mcdoll |
feat(Algebra): introduce notation typeclass for composition of functions |
This PR defines two new typeclasses: `FComp` and `IsCompApply`. The former is just a notation typeclass with notation `(g ∘ᶠ f)` and the second one asserts that `(g ∘ᶠ f) x = g (f x)`.
---
There are two PRs that illustrate the use of these classes: #41169 and #41224
The second one is closer to what we actually implement here, but not sorry-free (because I ran into unrelated defeq abuse pretty far down the line)
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
108/15 |
Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/SkewMonoidAlgebra/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Data/FunLike/IsApply.lean,Mathlib/Geometry/Manifold/GroupLieAlgebra.lean,Mathlib/Geometry/Manifold/VectorField/LieBracket.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Independence.lean,Mathlib/RingTheory/Coalgebra/Basic.lean,Mathlib/Topology/VectorBundle/Hom.lean |
10 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
6-2604 6 days ago |
6-5778 6 days ago |
45-64579 45 days |
| 37723 |
xgenereux author:xgenereux |
feat(Adjoin/Polynomial/Transcendental): Adjoining transcendental elements |
This PR establishes some basic properties about `A[y]` when `y` is transcendental over `A`. These are mostly just carried over from `A[X]`.
- Move `algEquivOfTranscendental` in the newly created file `Mathlib.RingTheory.Adjoin.Polynomial.Transcendental`
- Add `Algebra.adjoin.evalOfTranscendental`. This is technically very similar to `Algebra.adjoin.liftSingleton` but the definition is much simpler. It is also currently more general in the sense that it doesn't require `A` to be a field.
- Some basic instances from `Polynomial`. Note that these are actually theorems because of the hypothesis `(h : Transcendental R s)` everywhere. I've also added a `Fact` version to allow the possibility of instances.
Last note : I initially considered adding some results in `RingTheory.Polynomial.Quotient` where I golfed the file a tiny bit. I removed the unused results but kept the golf.
AI disclaimer : I used Claude to give me some feedback on the PR.
Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #36439
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
167/69 |
Mathlib.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/RingTheory/Adjoin/Polynomial/Basic.lean,Mathlib/RingTheory/Adjoin/Polynomial/Bivariate.lean,Mathlib/RingTheory/Adjoin/Polynomial/Transcendental.lean,Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/Polynomial/Quotient.lean |
7 |
6 |
['github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] |
mattrobball assignee:mattrobball |
6-1748 6 days ago |
28-53150 28 days ago |
71-13813 71 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 |
16 |
['github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mortarsanjaya', 'themathqueen'] |
jjdishere assignee:jjdishere |
6-1747 6 days ago |
6-6027 6 days ago |
66-48610 66 days |
| 40791 |
vvvv-ops author:vvvv-ops |
feat(RingTheory/DedekindDomain): dirichlet's s-unit theorem |
Proves the `Future work` of `RingTheory/DedekindDomain/SInteger.lean`: finite generation of `S`-units and Dirichlet's `S`-unit theorem.
For a Dedekind domain `R` with fraction field `K` and a finite set `S` of height-one primes, this adds the `S`-valuation map `Set.unitValuation` with kernel the `∅`-units (`Set.unitValuation_ker`), finite generation `Set.unit_fg`, and the exact rank `Set.finrank_eq`: `finrank ℤ (Additive 𝒪_{K,S}ˣ) = finrank ℤ (Additive 𝒪_Kˣ) + |S|`, plus the number-field specialisation `Set.unit_finrank_numberField` (`= (r₁ + r₂ - 1) + |S|`). The proof uses the short exact sequence `1 → 𝒪_Kˣ → 𝒪_{K,S}ˣ → ⊕_{v∈S} ℤ`: the kernel is the units, and the image has finite index because its cokernel embeds in the (finite) class group.
The general finiteness helpers `Module.Finite.of_fg_ker_of_fg_range`, `CommGroup.fg_of_fg_ker_of_fg_range`, `Subgroup.fg_of_fg_commGroup` are included in the file for now — happy to move them to `RingTheory/Finiteness` / `GroupTheory/Finiteness` if preferred.
|
t-ring-theory
new-contributor
|
339/0 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/SUnit.lean,scripts/noshake.json |
3 |
3 |
['github-actions'] |
jjdishere assignee:jjdishere |
6-1740 6 days ago |
65-75254 65 days ago |
65-75242 65 days |
| 42563 |
thorimur author:thorimur |
feat: `private` elaborator for proofs |
This PR adds the `private <term>` term elaborator which wraps term-mode proofs in a public auxiliary declaration so that they can use private constants in public positions. For example, a term-mode proof appearing in a public declaration's type will error if it uses a private declaration.
Currently, `by exact` will wrap the proof in a private declaration as `private` does, but sprinkling code with `by exact`s hurts readability, since it's difficult to tell at a glance what motivated its presence. Also, `private` reports when it's unnecessary, unlike `by exact`.
Disclosure: I had Claude review this before PRing, seeing if I could get rid of elaborating `by`. It found a good reason to do so, and made some changes, which I then reviewed and iterated on myself. I've preserved the (only) LLM-generated changes via the authorship of the commit history.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-meta |
285/0 |
Mathlib.lean,Mathlib/Init.lean,Mathlib/Util/PrivateProof.lean,MathlibTest/Util/PrivateProof.lean |
4 |
5 |
['JovanGerb', 'github-actions', 'thorimur'] |
JovanGerb assignee:JovanGerb |
6-1738 6 days ago |
9-71304 9 days ago |
15-71221 15 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 |
1 |
['github-actions'] |
jsm28 assignee:jsm28 |
6-1737 6 days ago |
6-65845 6 days ago |
6-65833 6 days |
| 40204 |
Jun2M author:Jun2M |
feat(Combinatorics): incidence-based `HypergraphLike` class |
This PR introduces incidence-based typeclasses for developing common graph theory across
`SimpleGraph`, `Graph`, `Digraph`, and more general hypergraph-like structures.
The central class, `HyperGraphLike V I E Gr`, treats incidence identifiers as primitive data.
For `G : Gr`, each incidence identifies an edge and an endpoint, and may be marked as a source or
target incidence. Links, adjacency, darts, and walks are then derived from this incidence structure.
This is an alternative to #36743, where darts and their endpoints are primitive. Keeping incidences
explicit distinguishes different incidences of the same edge at the same vertex—for example, the two incidences of a loop—and extends naturally to hypergraphs.
See discussion at ([#graph theory > HasAdj](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/HasAdj/with/575843445)) for more information.
### Main definitions
* `HyperGraphLike`: supplies the vertex, incidence, and edge sets together with incidence, source,
target, link, and adjacency relations.
* `GraphLike`: requires every edge to have exactly two incidences, including a source and a target.
* `Undirected` and `Directed`: distinguish whether incidences may be traversed in both directions.
* `NoParallelEdge` and `Loopless`: express the usual restrictions on graph-like structures.
* `IsTraversal` and `Dart`: represent the traversal of an edge through an ordered pair of distinct
incidences.
The walk API includes constructions from darts, vertices, and edges, together with basic operations
and lemmas about lengths, visited vertices, traversed edges, incidence pairs, and reversal.
### Concrete graph types
This PR provides instances showing that:
* `SimpleGraph` is graph-like, undirected, loopless, and has no parallel edges.
* `Graph` is graph-like and undirected. Its incidence type distinguishes the two incidences of a
loop.
* `Digraph` is graph-like, directed, and has no parallel edges.
The PR also adds a small collection of supporting lemmas for `Part` and `PFun`. In particular,
`PFun.preimage_inter` is strengthened from an inclusion to an equality.
### Walk-related definitions
* `WalkData`: graph-independent walk data recording vertices, edges, and the exact incidence pair
used by each step.
* `WalkData.IsValid`: certifies that `WalkData` describes a valid walk in a particular graph.
* `Walk G u v`: packages valid walk data with specified endpoints.
Codex was used to help with writing the walk related section and reviewing the PR.
Co-authored-by: OpenAI Codex <codex@openai.com>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
2085/2 |
Mathlib.lean,Mathlib/Combinatorics/Digraph/GraphLike.lean,Mathlib/Combinatorics/Graph/Basic.lean,Mathlib/Combinatorics/Graph/GraphLike.lean,Mathlib/Combinatorics/GraphLike/Basic.lean,Mathlib/Combinatorics/GraphLike/Walks/Basic.lean,Mathlib/Combinatorics/GraphLike/Walks/Dart.lean,Mathlib/Combinatorics/SimpleGraph/GraphLike.lean,Mathlib/Data/PFun.lean,Mathlib/Data/Part.lean |
10 |
2 |
['github-actions'] |
nobody |
6-844 6 days ago |
27-961 27 days ago |
79-69606 79 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 |
6-839 6 days ago |
27-32037 27 days ago |
39-20190 39 days |
| 41466 |
EzequielS2 author:EzequielS2 |
feat(Algebra/Order): stronger sublist product inequality via diff |
## Summary
Add `Sublist.prod_le_prod'_of_mem_diff` and `Sublist.sum_le_sum_of_mem_diff`.
## Test plan
- [x] `lake build` and `lake exe runLinter` on `Mathlib.Algebra.Order.BigOperators.Group.List`
|
t-algebra
new-contributor
label:t-algebra$ |
12/4 |
Mathlib/Algebra/Order/BigOperators/Group/List.lean |
1 |
7 |
['EzequielS2', 'github-actions', 'themathqueen', 'wwylele'] |
nobody |
5-85431 5 days ago |
6-1310 6 days ago |
47-18261 47 days |
| 42887 |
mcdoll author:mcdoll |
chore(Analysis/Normed): move `normSeminorm` into new file |
Aims to untangle `NormedSpace` and `Seminorm`.
We also add checks for `GroupSeminorm` not importing `SeminormedGroup` and `Seminorm` not importing `NormedSpace`.
Copyright goes to Yael for [#11487](https://github.com/leanprover-community/mathlib3/pull/11487) (mathlib3) and Anatole for #5501.
---
Future plans: move last section of `EGauge` into the new file and untangle `WithSeminorms`
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
113/87 |
Counterexamples/SeminormLatticeNotDistrib.lean,Mathlib.lean,Mathlib/Analysis/Calculus/TangentCone/ProperSpace.lean,Mathlib/Analysis/Convex/EGauge.lean,Mathlib/Analysis/LocallyConvex/Bounded.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Analysis/Normed/Module/Seminorm/Basic.lean,Mathlib/Analysis/Normed/Module/Seminorm/Norm.lean |
8 |
1 |
['github-actions'] |
nobody |
5-78258 5 days ago |
5-79652 5 days ago |
5-80108 5 days |
| 42439 |
xroblot author:xroblot |
feat(Algebra/QuadraticAlgebra): injectivity and surjectivity of `lift` |
Add API for the algebra map `QuadraticAlgebra.lift`:
* `range_lift`: its range is the subalgebra generated by `u`;
* `lift_surjective_iff`: surjective iff `u` generates the algebra;
* `lift_injective_iff`: injective iff `1` and `u` are linearly independent.
Also add the basis decomposition `re_smul_add_im_smul` (used to golf `algHom_ext`) and `adjoin_omega_eq_top`. |
t-algebra label:t-algebra$ |
39/2 |
Mathlib/Algebra/QuadraticAlgebra/Basic.lean |
1 |
1 |
['Whysoserioushah', 'github-actions'] |
nobody |
5-70554 5 days ago |
19-43091 19 days ago |
19-43079 19 days |
| 42542 |
tb65536 author:tb65536 |
feat(Analysis/Normed/Field/WithAbs): algebra structure on `AbsoluteValue.Completion` |
This PR defines the algebra structure on `AbsoluteValue.Completion`. This is in preparation for general ramification theory of absolute values.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology
t-ring-theory
t-algebra
label:t-algebra$ |
52/2 |
Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/Topology/Algebra/Ring/Basic.lean |
2 |
4 |
['github-actions', 'mathlib-merge-conflicts', 'smmercuri', 'tb65536'] |
nobody |
5-60292 5 days ago |
5-61843 5 days ago |
15-83949 15 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 |
5-59686 5 days ago |
6-21649 6 days ago |
6-21637 6 days |
| 42890 |
tb65536 author:tb65536 |
feat(GroupTheory/SpecificGroups/Alternating/Simple): small symmetric groups and alternating groups are solvable |
This PR proves that A_n and S_n is solvable for n <= 4.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-group-theory
label:t-algebra$ |
42/13 |
Mathlib/GroupTheory/Abelianization/Defs.lean,Mathlib/GroupTheory/Commutator/Basic.lean,Mathlib/GroupTheory/CommutingProbability.lean,Mathlib/GroupTheory/Solvable.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/Simple.lean |
5 |
2 |
['github-actions'] |
nobody |
5-59273 5 days ago |
5-59322 5 days ago |
5-59312 5 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 |
5-56597 5 days ago |
6-69585 6 days ago |
6-84449 6 days |
| 42077 |
themathqueen author:themathqueen |
chore(LinearAlgebra/PerfectPairing/Basic): generalize to `AddCommMonoid` |
There's no reason for `LinearEquiv.flip` to be restricted to `AddCommGroup` over `CommRing`, so we weaken it to `AddCommMonoid` over `CommSemiring`.
But, while we're here, I just weakened the whole file (excluding the Field section).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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/5 |
Mathlib/LinearAlgebra/PerfectPairing/Basic.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
5-53563 5 days ago |
5-54236 5 days ago |
29-33704 29 days |
| 42801 |
felixpernegger author:felixpernegger |
feat(NumberTheory): define Carmichael numbers |
https://en.wikipedia.org/wiki/Carmichael_number
I.e. composite numbers that pass the Euler-Fermat test for all basis (not to be confused with the carmichael function, which is in mathlib and use in this file...)
We also prove Korselt's criterion, which gives a relatively fast test is a number is a Carmichael number.
A fun challenge would be to prove efficiently that 561 is the smallest Carmicheal number. The following code works but is way too slow for mathlib:
```
example (hn : n < 561) : ¬ IsCarmichael n := by
rw [isCarmichael_iff_korselt_primeFactorsList] at ⊢
simp only [not_and, not_forall]
intro
interval_cases n
all_goals simp only [List.nodup_nil, not_true_eq_false, List.not_mem_nil, imp_false,
Decidable.not_not, IsEmpty.forall_iff, List.nodup_cons, not_false_eq_true, and_self,
Nat.add_one_sub_one, List.mem_cons, or_false, exists_prop, primeFactorsList_ofNat,
exists_eq_left, dvd_refl, forall_const, reduceEqDiff, or_self, and_true, and_false,
or_self_left, exists_eq_or_imp, isUnit_iff_eq_one, IsUnit.dvd, ↓existsAndEq, reduceDvd, or_true,
implies_true]
all_goals norm_num
```
Some of the proofs were originally made by Codex, but heavily golfed 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-number-theory
LLM-generated
|
217/0 |
Mathlib.lean,Mathlib/NumberTheory/ArithmeticFunction/Carmichael.lean,Mathlib/NumberTheory/CarmichaelNumber.lean |
3 |
2 |
['felixpernegger', 'github-actions'] |
nobody |
5-51031 5 days ago |
8-41005 8 days ago |
8-41019 8 days |
| 42894 |
joelriou author:joelriou |
feat(RepresentationTheory/Homological): generalization of the vanishing of inflation/restriction |
We show that the map in group cohomology induced by a trivial morphism of groups vanishes in nonzero degrees (because it factors through the cohomology of the trivial group). This allows to generalize the "inflation/restriction" short complex to arbitrary nonzero degrees.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory
t-algebra
tech debt
label:t-algebra$ |
45/19 |
Mathlib/RepresentationTheory/Homological/GroupCohomology/Functoriality.lean |
1 |
1 |
['github-actions'] |
nobody |
5-48328 5 days ago |
5-48913 5 days ago |
5-49013 5 days |
| 42872 |
JovanGerb author:JovanGerb |
chore(CategoryTheory/Limits/HasLimits): use `to_dual` more |
This PR continues the work of #41017 to use `to_dual` in `CategoryTheory.Limits.HasLimits`.
Notes:
- A few theorems like `ι_isoOfEquivalence_hom` has their type changed, because the old version wasn't actually dual to the supposed dual version. As a result, a proof in `Mathlib/CategoryTheory/Limits/Shapes/Products.lean` could be simplified.
- A few theorems like `isoOfNatIso_ι_hom` were renamed to `ι_isoOfNatIso_hom`, which is a more accurate name.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
t-category-theory
|
104/378 |
Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Fubini.lean,Mathlib/CategoryTheory/Limits/HasLimits.lean,Mathlib/CategoryTheory/Limits/Preserves/Grothendieck.lean,Mathlib/CategoryTheory/Limits/Preserves/Presheaf.lean,Mathlib/CategoryTheory/Limits/Shapes/Products.lean,Mathlib/CategoryTheory/Sites/CompatiblePlus.lean,Mathlib/CategoryTheory/Sites/LeftExact.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean |
9 |
1 |
['github-actions'] |
nobody |
5-44068 5 days ago |
5-45447 5 days ago |
5-48011 5 days |
| 39288 |
FordUniver author:FordUniver |
feat(Combinatorics/SimpleGraph/Subgraph): add `Embedding.ofIsInduced` and `IsInduced.map` |
Three additions to the `SimpleGraph.Subgraph` API for induced subgraphs. `Embedding.ofIsInduced` is the canonical embedding of an induced subgraph into its ambient graph, paired with `toHom_ofIsInduced` and `ofIsInduced_apply` lemmas. This is the embedding counterpart of `Subgraph.hom`, which only produces a homomorphism because non-induced subgraphs do not reflect adjacency. `Subgraph.IsInduced.map` then records that the image of an induced subgraph under a graph embedding is induced, strengthened to `IsInduced.map_iff` for the iso case.
Co-authored-by: Malte Jackisch <45597826+MaltyBlanket@users.noreply.github.com>
---
**Orthogonal pre-requisite of the `Copy` / `InducedCopy` refactor-feat stack.**
Extracted as a prerequisite from #38631 that is otherwise independent of the wider `Copy` / `InducedCopy` refactor-feat stack. |
t-combinatorics
maintainer-merge
|
27/4 |
Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean |
2 |
18 |
['FordUniver', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
5-40752 5 days ago |
90-64985 90 days ago |
102-14489 102 days |
| 42168 |
astrainfinita author:astrainfinita |
chore(Algebra/Order/GroupWithZero): deprecate unnecessary lemmas |
This PR deprecates three lemmas with exactly the same statements as lemmas deprecated in #22353:
* `mul_lt_one_of_nonneg_of_lt_one_left`
* `mul_lt_one_of_nonneg_of_lt_one_right`
* `mul_le_one₀`
In addition, `mul_le_one₀` only covers the case where the right factor is nonnegative, while there is no corresponding lemma for the case where the left factor is nonnegative. This PR also adds `Bound.mul_le_one` to handle both 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-order
maintainer-merge
label:t-algebra$ |
46/32 |
Counterexamples/NowhereDifferentiable.lean,Mathlib/Algebra/Order/GroupWithZero/Basic.lean,Mathlib/Algebra/Order/Interval/Set/Instances.lean,Mathlib/Algebra/Order/Ring/GeomSum.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/Convex/Between.lean,Mathlib/Analysis/Convex/Gauge.lean,Mathlib/Analysis/LocallyConvex/BalancedCoreHull.lean,Mathlib/Analysis/Normed/Field/UnitBall.lean,Mathlib/Analysis/Real/Pi/Irrational.lean,Mathlib/Combinatorics/SimpleGraph/Density.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Padics/PadicIntegers.lean,Mathlib/Topology/UnitInterval.lean |
15 |
5 |
['Ruben-VandeVelde', 'Vierkantor', 'github-actions'] |
nobody |
5-39365 5 days ago |
26-66239 26 days ago |
26-68764 26 days |
| 42745 |
JovanGerb author:JovanGerb |
chore: remove outdated adaptation notes after #42161 |
This PR removes some adaptation notes that I forgot to remove in #42161.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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
|
0/4 |
Mathlib/CategoryTheory/Limits/IsLimit.lean |
1 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
5-36570 5 days ago |
5-40005 5 days ago |
9-30142 9 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 |
5-35368 5 days ago |
5-38722 5 days ago |
5-38712 5 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 |
5-35177 5 days ago |
5-36709 5 days ago |
12-51474 12 days |
| 42843 |
than4213 author:than4213 |
feat(Combinatorics/SimpleGraph): transition matrix of the simple random walk |
Adds SimpleGraph.walkMatrix, the transition matrix of the simple random walk on a graph: row v is the uniform distribution on the neighbours of v. This is SimpleGraph.adjMatrix with each row divided by G.degree v, turning adjacency counts into transition probabilities.
Main results are that the matrix is row stochastic, and hence so is G.walkMatrix ^ n — the latter follows immediately from Matrix.rowStochastic being a Submonoid.
Two choices worth flagging:
- Valued in ℚ. Every entry is (G.degree v)⁻¹, so nothing irrational arises. This keeps entries computable — #eval evaluates G.walkMatrix ^ n on a concrete graph.
- Placed in Combinatorics/SimpleGraph. The file imports no probability theory, only Mathlib.LinearAlgebra.Matrix.Stochastic, and sits alongside adjMatrix, incMatrix and lapMatrix.
The walk is undefined at isolated vertices, so the results take ∀ v, ¬ G.IsIsolated v.
Used Claude Code in the creation of this PR. |
t-combinatorics
new-contributor
LLM-generated
|
107/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/RandomWalk.lean |
2 |
8 |
['SnirBroshi', 'github-actions', 'than4213'] |
nobody |
5-35000 5 days ago |
5-36343 5 days ago |
6-6152 6 days |
| 41362 |
JovanGerb author:JovanGerb |
perf(Algebra/MonoidAlgebra): `no_expose` the `Add` instance |
This PR uses `no_expose` for the `Add` instance of `MonoidAlgebra`. This improve performance a bit. Other operations may be `no_exposed` analogously in the future.
This requires a change in `fast_instance%`, namely to let it unfold private definitions in its defeq checks. This is a bit hacky, but it does work.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #42291
[](https://gitpod.io/from-referrer/)
|
|
55/36 |
Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/MonoidAlgebra/Degree.lean,Mathlib/Algebra/MonoidAlgebra/Division.lean,Mathlib/Algebra/MonoidAlgebra/Grading.lean,Mathlib/Algebra/MonoidAlgebra/Ideal.lean,Mathlib/Algebra/MonoidAlgebra/MapDomain.lean,Mathlib/Algebra/MonoidAlgebra/Module.lean,Mathlib/Algebra/MonoidAlgebra/ToDirectSum.lean,Mathlib/Algebra/MvPolynomial/Basic.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/RingTheory/Extension/Presentation/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/Tactic/FastInstance.lean |
15 |
11 |
['JovanGerb', 'github-actions', 'kbuzzard', 'leanprover-radar', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
5-34253 5 days ago |
5-39651 5 days ago |
5-39733 5 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/)
|
|
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 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
5-33684 5 days ago |
5-36482 5 days ago |
9-70975 9 days |
| 39993 |
Brian-Nugent author:Brian-Nugent |
feat(Topology/CategoryTheory): TopologicalSpace.Opens.map preserves colimits and finite limits |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [ ] depends on: #39992
- [ ] depends on: #39991
[](https://gitpod.io/from-referrer/)
|
t-topology
t-category-theory
|
24/2 |
Mathlib/Topology/Category/TopCat/Opens.lean |
1 |
6 |
['Brian-Nugent', 'dagurtomas', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
5-32942 5 days ago |
5-32942 5 days ago |
40-70024 40 days |
| 38596 |
JJYYY-JJY author:JJYYY-JJY |
feat(LinearAlgebra/Matrix): add elementary row operations |
Add row-scaling matrices and row equivalence via the action of the general linear group.
Co-authored-by: Joseph Qian <jqian507@gmail.com>
Co-authored-by: Veer Shukla <shukvee@uw.edu>
Co-authored-by: Dhruv Bhatia <dhruvbhatia00@gmail.com>
Co-authored-by: Zheng Wu <1036819072@qq.com>
---
The echelon-form definitions from the previous version were removed in favor of #42236. |
t-algebra
new-contributor
maintainer-merge
label:t-algebra$ |
184/0 |
Mathlib.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/LinearAlgebra/Matrix/ElementaryRowOperations.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean |
4 |
39 |
['JJYYY-JJY', 'SnirBroshi', 'bryangingechen', 'copilot-pull-request-reviewer', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'ocfnash', 'themathqueen', 'wwylele'] |
mattrobball and ocfnash assignee:ocfnash assignee:mattrobball |
5-30967 5 days ago |
5-33378 5 days ago |
91-35344 91 days |
| 42897 |
martinwintermath author:martinwintermath |
feat(Geometry/Convex/Cone): add notation for conic hull of singleton |
Add notation `R ∙₊ x` for `hull R {x}` in analogy to existing submodule notation. Add lemmas
* `mem_hull_singleton` proving `y ∈ R ∙₊ x ↔ ∃ r : R, 0 ≤ r ∧ r • x = y`
* `le_hull_singleton_iff` proving `C ≤ R ∙₊ x ↔ ∀ y ∈ C, ∃ r : R, 0 ≤ r ∧ r • x = y`
These are analogues of respective lemmas for submodule span. I only rewrote those lemmas for which the corresponding span lemma cannot be used directly.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
23/0 |
Mathlib/Geometry/Convex/Cone/Pointed.lean |
1 |
1 |
['github-actions'] |
nobody |
5-30779 5 days ago |
5-44472 5 days ago |
5-44460 5 days |
| 42041 |
FrankieNC author:FrankieNC |
feat(Topology/MetricSpace): minkowski (box-counting) dimension |
Define the lower and upper Minkowski (box-counting) dimensions of a set in a pseudo-emetric space via covering numbers, prove the basic API (monotonicity, closure invariance, unions, finite sets), and show `dimH s ≤ lowerMinkowskiDim s ≤ upperMinkowskiDim s` (Falconer, Fractal Geometry, Ch. 3). |
t-topology |
355/0 |
Mathlib.lean,Mathlib/Topology/MetricSpace/Cover.lean,Mathlib/Topology/MetricSpace/CoveringNumbers.lean,Mathlib/Topology/MetricSpace/MinkowskiDimension.lean,docs/references.bib |
5 |
2 |
['github-actions'] |
CoolRmal assignee:CoolRmal |
5-30469 5 days ago |
31-7691 31 days ago |
31-7810 31 days |
| 42815 |
korbonits author:korbonits |
feat(Analysis/Calculus/VectorField): the Lie bracket acts as a derivation on functions |
Add `VectorField.lieBracket_apply_fun`: for a function `f` with derivative `f'` and vector fields `V`, `W`,
D(f' W) V - D(f' V) W = f' [V, W]
i.e. the familiar `[V, W] f = V (W f) - W (V f)`. The two second-derivative terms cancel by symmetry of the second derivative, leaving exactly the bracket.
Placed beside the existing `lieBracket_smul_*` product rules. Needs no new import: `FDeriv.Symmetric` is already imported for `second_derivative_symmetric`, which supplies the symmetry and is the source of the `IsRCLikeNormedField` hypothesis.
---
AI disclosure
- level: Level 5 / Level 6 in [the link shared](https://www.visidata.org/blog/2026/ai/#self-assessed-ai-level-for-contributions) I feel confident about the math but I am still learning Lean itself
- code: most of the Lean in this PR was drafted by Claude Code (statements, proofs, docstrings).
- direction and review: I chose the contribution, made the decisions, reviewed every line, and wrote all GitHub/Zulip comments. |
t-analysis
new-contributor
LLM-generated
|
29/0 |
Mathlib/Analysis/Calculus/VectorField.lean |
1 |
4 |
['github-actions', 'korbonits'] |
nobody |
5-29818 5 days ago |
7-73167 7 days ago |
7-73155 7 days |
| 42895 |
cameronfreer author:cameronfreer |
feat(SetTheory/Ordinal): add lift_sSup and lift_iSup |
Add `InitialSeg.map_sSup` and `InitialSeg.map_iSup` for conditionally complete linear orders with bottom. Specializing these to `Ordinal.liftInitialSeg` gives `Ordinal.lift_sSup`, `Ordinal.lift_iSup`, `Ordinal.lift_iSup_le`, and `Ordinal.lift_iSup_le_iff`.
The `sSup` theorem handles the empty set using preservation of bottom and the nonempty case using normality. The `iSup` theorem is derived from it. Both use an explicit boundedness hypothesis; in particular, `lift_iSup` assumes `BddAbove (Set.range f)` rather than requiring the index type to be small.
🤖 This PR was developed with assistance from Claude and GPT models, using [lean4-skills](https://github.com/cameronfreer/lean4-skills) and [lean-lsp-mcp](https://github.com/oOo0oOo/lean-lsp-mcp).
|
t-set-theory
new-contributor
LLM-generated
|
40/0 |
Mathlib/Order/IsNormal.lean,Mathlib/SetTheory/Ordinal/Family.lean |
2 |
11 |
['cameronfreer', 'github-actions', 'plp127', 'vihdzp'] |
nobody |
5-28212 5 days ago |
5-45314 5 days ago |
5-46256 5 days |
| 42913 |
alreadydone author:alreadydone |
doc(AlgebraicGeometry): fix docstring about finite presentation |
Align with the [Stacks Project definition](https://stacks.math.columbia.edu/tag/01TP) as well as Definition 10.34 of Görtz–Wedhorn.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
3/3 |
Mathlib/AlgebraicGeometry/Morphisms/FinitePresentation.lean |
1 |
1 |
['github-actions'] |
nobody |
5-24615 5 days ago |
5-25292 5 days ago |
5-25350 5 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 |
5-23703 5 days ago |
5-25514 5 days ago |
6-28793 6 days |
| 42608 |
Deicyde author:Deicyde |
doc: add wikidata attributes |
This PR adds a batch of 6 `@[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 |
13/2 |
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/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/Topology/Constructions.lean |
7 |
11 |
['Deicyde', 'SnirBroshi', 'github-actions'] |
nobody |
5-15320 5 days ago |
13-50178 13 days ago |
13-50166 13 days |
| 42456 |
homeowmorphism author:homeowmorphism |
feat(Order/Monoid/Unbundled): make `mulLeftMono_of_mulLeftStrictMono` and `mulRightMono_of_mulRightStrictMono` instances. |
In response to feedback on https://github.com/leanprover-community/mathlib4/pull/41505#discussion_r3649455798.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
317/8 |
Counterexamples/OrderedCancelAddCommMonoidWithBounds.lean,Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Order/AbsoluteValue/Basic.lean,Mathlib/Algebra/Order/Archimedean/Basic.lean,Mathlib/Algebra/Order/Archimedean/Defs.lean,Mathlib/Algebra/Order/BigOperators/Expect.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Group/Basic.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Order/Group/PiLex.lean,Mathlib/Algebra/Order/Group/Pointwise/Interval.lean,Mathlib/Algebra/Order/Group/PosPart.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Interval/Basic.lean,Mathlib/Algebra/Order/Interval/Set/Group.lean,Mathlib/Algebra/Order/Interval/Set/Instances.lean,Mathlib/Algebra/Order/Interval/Set/Monoid.lean,Mathlib/Algebra/Order/Module/Defs.lean,Mathlib/Algebra/Order/Monoid/Canonical/Basic.lean,Mathlib/Algebra/Order/Monoid/LocallyFiniteOrder.lean,Mathlib/Algebra/Order/Monoid/Prod.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monovary.lean,Mathlib/Algebra/Order/Positive/Ring.lean,Mathlib/Algebra/Order/Ring/Basic.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/GeomSum.lean,Mathlib/Algebra/Order/Star/Conjneg.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Convex/Between.lean,Mathlib/Analysis/Convex/Function.lean,Mathlib/Analysis/Convex/Jensen.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Convex/Side.lean,Mathlib/Analysis/Convex/Star.lean,Mathlib/Analysis/Convex/Strict.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Combinatorics/Additive/AP/Three/Defs.lean,Mathlib/Combinatorics/Additive/CauchyDavenport.lean,Mathlib/Combinatorics/Enumerative/DoubleCounting.lean,Mathlib/Combinatorics/Optimization/ValuedCSP.lean,Mathlib/Data/Finset/MulAntidiagonal.lean,Mathlib/Data/Multiset/Sum.lean,Mathlib/Geometry/Convex/Cone/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Order.lean,Mathlib/LinearAlgebra/AffineSpace/Ordered.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean,Mathlib/LinearAlgebra/AffineSpace/Slope.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/LinearAlgebra/Ray.lean,Mathlib/LinearAlgebra/RootSystem/Base.lean,Mathlib/ModelTheory/Arithmetic/Presburger/Semilinear/Basic.lean,Mathlib/NumberTheory/Zsqrtd/Basic.lean,Mathlib/Order/Monotone/Odd.lean,Mathlib/RingTheory/MvPowerSeries/Derivative.lean,Mathlib/RingTheory/MvPowerSeries/Inverse.lean,Mathlib/RingTheory/Polynomial/Pochhammer.lean,Mathlib/RingTheory/UniqueFactorizationDomain/NormalizedFactors.lean,Mathlib/Tactic/Linarith/Lemmas.lean,Mathlib/Tactic/LinearCombination/Lemmas.lean,Mathlib/Tactic/Positivity/Finset.lean,Mathlib/Tactic/Ring/Compare.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/Algebra/IsUniformGroup/Order.lean,Mathlib/Topology/Semicontinuity/Basic.lean,MathlibTest/Tactic/LinearCombination.lean |
69 |
34 |
['YaelDillies', 'github-actions', 'homeowmorphism', 'leanprover-radar', 'riccardobrasca'] |
nobody |
5-11694 5 days ago |
5-19278 5 days ago |
6-31560 6 days |
| 42875 |
SnirBroshi author:SnirBroshi |
perf(Order/CompleteLattice/PiLex): exclude `iInf_of_isEmpty` in the `simp` call in `sInf_apply` |
`iInf_of_isEmpty` was tagged `simp` in #38859, which caused this specific proof to go from <10ms to ~2.5 seconds.
[#rss > Significant commits to mathlib4 @ 💬](https://leanprover.zulipchat.com/#narrow/channel/116290-rss/topic/Significant.20commits.20to.20mathlib4/near/616795278)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
2/1 |
Mathlib/Order/CompleteLattice/PiLex.lean |
1 |
7 |
['SnirBroshi', 'github-actions', 'grunweg', 'leanprover-radar'] |
nobody |
5-11143 5 days ago |
6-29358 6 days ago |
6-29346 6 days |
| 42920 |
themathqueen author:themathqueen |
feat(Topology/Algebra/LinearMapCompletion): `f.extend toComplL = f.fromCompletion` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology |
6/0 |
Mathlib/Topology/Algebra/LinearMapCompletion.lean |
1 |
1 |
['github-actions'] |
nobody |
5-10685 5 days ago |
5-11825 5 days ago |
5-11868 5 days |
| 41734 |
IlPreteRosso author:IlPreteRosso |
feat(DiscreteConvolution): add ring convolution definitions and properties |
Continuation of PR #34191
Adds ring convolution and its elementary properties.
Aligns the API with [Day convolution](https://leanprover-community.github.io/mathlib4_docs/Mathlib/CategoryTheory/Monoidal/DayConvolution.html) structure. Although no idea how to bridge them right now. |
t-topology
new-contributor
|
211/27 |
Mathlib/Topology/Algebra/InfiniteSum/DiscreteConvolution.lean |
1 |
20 |
['IlPreteRosso', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts'] |
j-loreaux assignee:j-loreaux |
5-9909 5 days ago |
5-10769 5 days ago |
39-39019 39 days |
| 42072 |
joneugster author:joneugster |
feat(scripts/autolabel): use PR-title to find labels |
If present, use the paths specified in the PR title to determine labels. If this fails, fall back to the existing `git diff` logic.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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 |
28/6 |
.github/workflows/add_label_from_diff.yaml,scripts/autolabel.lean |
2 |
2 |
['SnirBroshi', 'github-actions'] |
nobody |
5-9763 5 days ago |
5-11281 5 days ago |
5-11269 5 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 |
19 |
['Robertboy18', 'SnirBroshi', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] |
eric-wieser assignee:eric-wieser |
5-9040 5 days ago |
5-9040 5 days ago |
13-81341 13 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 |
5-7973 5 days ago |
5-13252 5 days ago |
5-13242 5 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 |
5-7178 5 days ago |
5-7237 5 days ago |
5-7226 5 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 |
5-5469 5 days ago |
5-7035 5 days ago |
27-27728 27 days |
| 40006 |
tautschnig author:tautschnig |
feat(Data/ZMod/Basic): idempotents in ZMod (p^d) are exactly {0, 1} |
Add sq_eq_self_iff_eq_zero_or_one: in ZMod (p^d) for prime p and d > 0, x^2 = x iff x = 0 or x = 1.
This generalises eq_zero_or_one_of_sq_eq_self (which requires CancelMonoidWithZero, i.e., no zero divisors) to the prime-power case. ZMod (p^d) has zero divisors for d >= 2, so the mul_left_injective₀ argument used by the existing lemma does not apply. The proof works by lifting to ℕ, using that if gcd(a, b) = 1 and p^d | a*b then p^d divides one of a or b (by Euclid's lemma), then noting that a = x.val and b = x.val - 1 are consecutive naturals and hence coprime.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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/Data/ZMod/Basic.lean |
1 |
3 |
['Julian-Kuelshammer', 'github-actions'] |
joneugster assignee:joneugster |
5-1747 5 days ago |
86-57259 86 days ago |
86-57942 86 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 |
17 |
['ADedecker', 'CBirkbeck', 'WilliamCoram', 'github-actions', 'mathlib-merge-conflicts', 'sfingali', 'vihdzp', 'wwylele'] |
j-loreaux assignee:j-loreaux |
5-1747 5 days ago |
62-38289 62 days ago |
78-20404 78 days |
| 40081 |
xroblot author:xroblot |
chore(Algebra/Algebra/Subalgebra): lower priority of Module instance |
Lower the priority of `Subalgebra.instModuleSubtypeMem` from default (1000) to `low` (100).
This instance uses `inferInstance`, which re-triggers typeclass synthesis and can be expensive
to succeed. Lowering the priority makes it a fallback when cheaper paths are available.
Benchmark results show no regressions and meaningful speedups on several files
(up to -23% on `Mathlib.LinearAlgebra.TensorProduct.Subalgebra`).
:robot: Prepared with Claude Code |
t-algebra label:t-algebra$ |
1/1 |
Mathlib/Algebra/Algebra/Subalgebra/Basic.lean |
1 |
7 |
['github-actions', 'leanprover-radar', 'plp127', 'xroblot'] |
joneugster assignee:joneugster |
5-1746 5 days ago |
84-19538 84 days ago |
84-19568 84 days |
| 40899 |
mcdoll author:mcdoll |
feat(Data/FunLike): add `abbrev`s for pointwise multiplication |
We add `abbrev`s that provide easy access to instances that involve multiplication as a pointwise operation for `FunLike` classes. This is for example needed for `ZeroAtInftyContinuousMap`
Moreover, we
- move `NatCast` instance for `Pi` to new file `Data/Nat/Cast/Pi`
- rename `IsNatCastApply` to `IsNatCastApplyEqSMul` for the composition variant (same for `IntCast`)
- add `IsNatCast` for pointwise multiplication (same for `IntCast`)
- rename `abbrev` that apply to composition versions to `compSemiring` etc
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
large-import
label:t-algebra$ |
337/71 |
Mathlib.lean,Mathlib/Algebra/Ring/Pi.lean,Mathlib/Data/FunLike/GroupWithZero.lean,Mathlib/Data/FunLike/IsApply.lean,Mathlib/Data/FunLike/Ring.lean,Mathlib/Data/Nat/Cast/Basic.lean,Mathlib/Data/Nat/Cast/Pi.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean |
8 |
5 |
['eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] |
ocfnash assignee:ocfnash |
5-1745 5 days ago |
8-50473 8 days ago |
60-80302 60 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$ |
231/0 |
Mathlib.lean,Mathlib/LinearAlgebra/ExteriorPower/BaseChange.lean |
2 |
2 |
['github-actions', 'grunweg'] |
ocfnash assignee:ocfnash |
5-1743 5 days ago |
43-49542 43 days ago |
61-39431 61 days |
| 40975 |
bwangpj author:bwangpj |
feat(LinearAlgebra): complex structures on real vector spaces |
Define complex structures,i .e. an `ℝ`-linear endomorphism `J` of a real vector space `V` with `J * J = -1`. |
t-algebra label:t-algebra$ |
93/0 |
Mathlib.lean,Mathlib/LinearAlgebra/Complex/Structure.lean |
2 |
5 |
['bwangpj', 'github-actions', 'grunweg', 'themathqueen', 'wwylele'] |
ocfnash assignee:ocfnash |
5-1742 5 days ago |
61-10714 61 days ago |
61-10702 61 days |
| 41260 |
SnirBroshi author:SnirBroshi |
feat(GroupTheory/Exponent): the order of a group divides a power of its exponent |
For finite groups:
- `(Monoid.exponent G).primeFactors = (Nat.card G).primeFactors`
- `Nat.card G ∣ Monoid.exponent G ^ Nat.card G`
---
This requires importing Cauchy's theorem (`GroupTheory.Perm.Cycle.Type`) in `Exponent.lean` which I'm not sure about, but the alternatives are either moving the theorems to `PGroup.lean`, or creating a new file with a strange name like `ExponentLemmas.lean`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-group-theory
large-import
|
27/5 |
Mathlib/GroupTheory/Exponent.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean |
2 |
13 |
['SnirBroshi', 'github-actions', 'ocfnash', 'tb65536'] |
mattrobball assignee:mattrobball |
5-1741 5 days ago |
52-23381 52 days ago |
52-57016 52 days |
| 41809 |
kebekus author:kebekus |
feat: Truncated Counting Function of Value Distribution Theory |
Introduce (and provide API for) the Truncated Logarithmic Counting Functions. These differ from the Logarithmic Counting Function in that they disregard pole orders and count all poles with multiplicity one. The truncated counting function is the quantity through which the Second Main Theorem of Value Distribution Theory is classically stated.
This material is used in [Project VD](https://github.com/kebekus/ProjectVD), formalizing Value Distribution Theory for meromorphic functions on the complex plane. Claude Code was used to create this PR.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology
t-analysis
LLM-generated
|
261/0 |
Mathlib.lean,Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Truncated.lean,Mathlib/Topology/LocallyFinsupp.lean |
3 |
1 |
['github-actions'] |
j-loreaux assignee:j-loreaux |
5-1739 5 days ago |
38-62498 38 days ago |
38-62486 38 days |
| 41961 |
loefflerd author:loefflerd |
feat(NumberTheory/Padics): ring structure on nonarchimedean measures |
Define the Iwasawa algebra of measures on a profinite group G, and show it's an algebra (and commutative if G is).
---
For simplicity, I did not attempt to optimise exactly the minimal typeclass assumptions on `G` required to obtain each typeclass property of `D(G, R)`, as this led to much lengthier code for no clear benefit; I am not aware of interesting examples where `G` is not at a monoid.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-number-theory |
164/0 |
Mathlib.lean,Mathlib/NumberTheory/Padics/Measure/Group.lean |
2 |
2 |
['github-actions'] |
tb65536 assignee:tb65536 |
5-1738 5 days ago |
34-20856 34 days ago |
34-20844 34 days |
| 42744 |
themathqueen author:themathqueen |
feat(Analysis/InnerProductSpace): complexification of Hilbert spaces |
This provides the framework for complexifying inner product spaces and operators on inner product spaces.
In a later PR, we transfer over the continuous functional calculus onto RCLike spaces, allowing the space of operators on `RCLike` Hilbert spaces to be a star ordered 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 |
704/0 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Complexification/Basic.lean,Mathlib/Analysis/InnerProductSpace/Complexification/TensorProduct.lean,docs/references.bib |
4 |
6 |
['github-actions', 'mcdoll', 'themathqueen'] |
j-loreaux assignee:j-loreaux |
5-1737 5 days ago |
8-33052 8 days ago |
8-33040 8 days |
| 42908 |
EtienneC30 author:EtienneC30 |
feat: add Measure.bind_comm |
This lemma is primarily intended to replace `PMF.bind_comm` in #42821.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
26/0 |
Mathlib/MeasureTheory/Measure/Prod.lean |
1 |
1 |
['github-actions'] |
kex-y assignee:kex-y |
5-1736 5 days ago |
5-40299 5 days ago |
5-40287 5 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'] |
kex-y assignee:kex-y |
5-1735 5 days ago |
5-37685 5 days ago |
5-37673 5 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'] |
nobody |
5-845 5 days ago |
50-63815 50 days ago |
50-64338 50 days |
| 29624 |
mcdoll author:mcdoll |
feat(LinearAlgebra/LinearPMap): add definition of resolvent and resolvent identities |
This PR defines the resolvent of an unbounded operator as a linear map. There are slight differences to the way the resolvent is defined in the literature: we use a purely algebraic description, in particular we do not assume that the operator is closed.
We prove the well-known first and second resolvent identities.
---
<!-- The text above the `---` will become the commit message when your
PR is merged. Please leave a blank newline before the `---`, otherwise
GitHub will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
To indicate co-authors, include at least one commit authored by each
co-author among the commits in the pull request. If necessary, you may
create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
When merging, all the commits will be squashed into a single commit listing all co-authors.
If you are moving or deleting declarations, please include these lines at the bottom of the commit message
(that is, before the `---`) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #42423
- [x] depends on: #42425
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-analysis
label:t-algebra$ |
177/0 |
Mathlib/LinearAlgebra/LinearPMap.lean |
1 |
13 |
['github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'mcdoll'] |
kim-em assignee:kim-em |
4-85683 4 days ago |
5-931 5 days ago |
69-62243 69 days |
| 42927 |
NoahW314 author:NoahW314 |
feat(Algebra/Group): prod and pi instances for `IsDedekindFinite` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
10/0 |
Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/Prod.lean |
2 |
2 |
['NoahW314', 'github-actions'] |
nobody |
4-82640 4 days ago |
4-85391 4 days ago |
4-85379 4 days |
| 42354 |
sankalpsthakur author:sankalpsthakur |
doc(Data/Rel): clarify the SetRel representation |
Rewrites the implementation-notes section explaining why `SetRel` represents relations as `Set (α × β)` rather than `α → β → Prop`. The previous text framed the two representations as competing, with the function form as default and `SetRel` mainly justified by dedicated notation. This reframes it around what each representation is *for*: the function form when a relation is primarily applied to arguments, the set-of-pairs form when the relation itself is manipulated as an object — with concrete examples (inverse as preimage, transport as image, union/intersection/complement/subset-order inherited from `Set`). Also fixes a stray double space.
Motivated by #39397.
### Validation
Documentation-only change (module docstring); no executable code touched.
Closes #39397
### AI/LLM disclosure
AI coding tools were used to help draft this change and PR description. I reviewed the complete change and the reasoning before submitting. |
t-data
new-contributor
LLM-generated
|
16/13 |
Mathlib/Data/Rel.lean |
1 |
4 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
4-74768 4 days ago |
4-76754 4 days ago |
21-56946 21 days |
| 42932 |
teorth author:teorth |
feat(Analysis/SumIntegralComparisons): more general integral_le_sum lemmas |
Create slightly more general versions of `AntitoneOn.integral_le_sum` and `MonotoneOn.integral_le_sum` that allow for divergence at one endpoint. (This will be useful in a future PR of the prime number theorem.) Specifically, monotonicity is not needed at the right endpoint as long as the function remains integrable.
---
AI was used to prepare the initial version of the code, which was then golfed and reviewed by myself.
[](https://gitpod.io/from-referrer/)
|
t-analysis |
46/13 |
Mathlib/Analysis/SumIntegralComparisons.lean |
1 |
1 |
['github-actions'] |
nobody |
4-73761 4 days ago |
4-73852 4 days ago |
4-74050 4 days |
| 42883 |
thorimur author:thorimur |
feat: linter for internal constructors |
This PR lints against using internal constructors during elaboration (i.e. those with a name component that starts with `_`, e.g. `_mkInternal`).
This allows us to preserve defeq properties (such as in category theory) and avoid `set_option backward.privateInPublic false` while still preventing uses downstream through `⟨_⟩`.
This linter does not fire in the file in which the internal constructor is defined.
---
*Should* it fire in the file in which the internal constructor is defined, demanding a loud `set_option linter.allowInternalConstructors true`? This just means removing `ctx.env.isImportedConst n`.
Also, should the name of the option be different, so that `false` turns off the linter? Maybe just `linter.internalConstructors`?
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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-linter
|
115/0 |
Mathlib.lean,Mathlib/Init.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/InternalConstructor.lean,MathlibTest/Linter/InternalConstructor/Source.lean,MathlibTest/Linter/InternalConstructor/Target.lean |
6 |
19 |
['Vierkantor', 'github-actions', 'leanprover-radar', 'thorimur'] |
nobody |
4-72877 4 days ago |
4-76186 4 days ago |
5-44488 5 days |
| 42861 |
JovanGerb author:JovanGerb |
feat(Translate): try all translation pairings until one succeeds |
This PR allows `to_dual` to add translations between two sets of constants by trying all possible pairings, instead of only going for the respective pairing. This is possible thanks to #40365, which made `to_dual` validate all translations. This is useful for
- `to_dual (attr := simps)` on e.g. an `Iso` or `Comma`, since the projections `hom`/`inv` and `left`/`right` are dual to eachother.
- `to_dual` on structures where the fields are reordered, such as `Comma`.
I think the tiny slowdown is worth the convenience.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
t-meta
|
75/175 |
Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/CommSq.lean,Mathlib/CategoryTheory/Comma/Basic.lean,Mathlib/CategoryTheory/LiftingProperties/Basic.lean,Mathlib/CategoryTheory/Limits/Cones.lean,Mathlib/CategoryTheory/Limits/IsLimit.lean,Mathlib/CategoryTheory/Limits/Shapes/IsTerminal.lean,Mathlib/CategoryTheory/Limits/Shapes/Terminal.lean,Mathlib/CategoryTheory/NatIso.lean,Mathlib/CategoryTheory/Retract.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Tactic/Translate/Core.lean,MathlibTest/Attribute/ToAdditive/Basic.lean,MathlibTest/Attribute/ToDual.lean |
14 |
5 |
['JovanGerb', 'github-actions', 'leanprover-radar'] |
nobody |
4-67538 4 days ago |
5-40622 5 days ago |
6-44467 6 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'] |
nobody |
4-65286 4 days ago |
27-59854 27 days ago |
28-18875 28 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 |
4-60354 4 days ago |
12-39286 12 days ago |
12-39274 12 days |
| 41485 |
luigi-massacci author:luigi-massacci |
feat: multiplication by a regular function in D^n as a CLM (bilin version) |
Preliminary lemma for multiplication of a classical distribution by a regular function (PR #41634).
The `def` is mutatis mutandis the exact same construction as the existing `ContDiffMapSupportedin.fderivCLM`-> `TestFunction.fderivCLM` topology-wise, and algebra-wise it mirrors the existing API for `TemperedDistribution` (`simp` lemma included).
Note that this is a helper definition not meant to be used directly, hence the regularity assumption in the type for simplicity, as in the existing `ContDiffMapSupprotedIn.bilinLefCLM`. The consumer definitions (`TestFunction.smul`in PR #41531 and `Distribution.smul` in #41634) take junk values instead.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #41324
[](https://gitpod.io/from-referrer/)
|
t-analysis |
34/2 |
Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/TestFunction.lean |
2 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
4-59985 4 days ago |
17-58432 17 days ago |
17-76279 17 days |
| 42936 |
joelriou author:joelriou |
feat(CategoryTheory/Triangulated): applying a homological functor to a spectral object |
In this file, we show that one may obtain a spectral object in an abelian category by applying a homological functor to a triangulated spectral object.
We also fix some (not all) transparency issues with `ComposableArrows`.
---
I think that the `large-import` label can be ignored here.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory
large-import
tech debt
maintainer-merge
|
143/72 |
Mathlib/CategoryTheory/ComposableArrows/Basic.lean,Mathlib/CategoryTheory/ComposableArrows/One.lean,Mathlib/CategoryTheory/ComposableArrows/Two.lean,Mathlib/CategoryTheory/Triangulated/HomologicalFunctor.lean,Mathlib/CategoryTheory/Triangulated/SpectralObject.lean |
5 |
6 |
['github-actions', 'joelriou', 'robin-carlier'] |
nobody |
4-51582 4 days ago |
4-52108 4 days ago |
4-56178 4 days |
| 42937 |
dagurtomas author:dagurtomas |
chore(Condensed): remove problematic lemma |
Needed for nightly#288
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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-condensed
|
1/9 |
Mathlib/Condensed/TopCatAdjunction.lean |
1 |
3 |
['felixpernegger', 'github-actions', 'leanprover-radar'] |
nobody |
4-44558 4 days ago |
4-55292 4 days ago |
4-55280 4 days |
| 42926 |
NoahW314 author:NoahW314 |
feat(Algebra/Order): add `MulLeftMono` implies `IsDedekindFinite` instance |
In the process, generalize an existing lemma that required both `MulLeftMono` and `MulRightMono` into two lemmas that only require one of `MulLeftMono` or `MulRightMono`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
49/26 |
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 |
2 |
['NoahW314', 'github-actions'] |
nobody |
4-42417 4 days ago |
4-45471 4 days ago |
4-69218 4 days |
| 42185 |
wwylele author:wwylele |
feat(combinatorics): pentagonal number theorem for normed ring |
This completes the other half of the theorem.
For the new function `eulerFunction`, I considered the alternative definition using `FormalMultilinearSeries`. However, a lot of things around `FormalMultilinearSeries` are defined for algebra with a base `Fieid` (e.g. `FormalMultilinearSeries.ofScalars`), whereas the new theorem here works for any complete normed rings. Those `FormalMultilinearSeries` lemma might generalize to rings, but ultimately I don't gain anything from using `FormalMultilinearSeries` while increasing the imports, so I decided against it.
I also made change to the forbidden import list, and allow Combinatorics to import MeasureTheory and Probability. This is a somewhat accidental import in the PR (via `Mathlib.Analysis.SpecialFunctions.Log.Summable`, which pull in the integral subtree for results on log), but it does makes sense that Combinatorics should be allow to interact with Probability anyway. (Zulip thread for this [#mathlib4 > Surprise dependency Analysis -> MeasureTheory -> Probability](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Surprise.20dependency.20Analysis.20-.3E.20MeasureTheory.20-.3E.20Probability/with/613206628))
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #42184
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
179/5 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Log/Summable.lean,Mathlib/Combinatorics/Enumerative/Pentagonal/EulerFunction.lean,Mathlib/Combinatorics/Enumerative/Pentagonal/PowerSeries.lean,Mathlib/Combinatorics/Enumerative/Pentagonal/Ring.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,docs/1000.yaml |
7 |
27 |
['CoolRmal', 'copilot-pull-request-reviewer', 'github-actions', 'mathlib-dependent-issues', 'mathlib-splicebot', 'wwylele'] |
nobody |
4-39370 4 days ago |
4-51710 4 days ago |
19-41164 19 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'] |
nobody |
4-36343 4 days ago |
42-11620 42 days ago |
46-15003 46 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 |
4-34398 4 days ago |
4-36729 4 days ago |
58-28997 58 days |
| 42787 |
xroblot author:xroblot |
chore(RingTheory/Ideal/Norm): weaken `Ideal.absNorm` to infinite Dedekind domains |
`Ideal.absNorm` and `Submodule.cardQuot_mul` assumed `Module.Free ℤ S`, where all that is really needed is `Infinite S`. They now assume the latter, which brings in rings that are not finite over `ℤ`. The results genuinely using a `ℤ`-basis are collected in a `section Free`.
Downstream, several lemmas therefore assume `Infinite` where they assumed `Module.Free ℤ`. This is not a real restriction: the instance should hold for every ring these results are applied to, and should simply be added when missing, independently of this PR.
This is the third part of a sequence of PRs generalizing `Ideal.absNorm` away from `Module.Free ℤ`, after #42081 and #42784.
Prepared with Claude Code 🤖
---
- [x] depends on: #42784
- [x] depends on: #42809
|
t-number-theory |
51/27 |
Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/NumberTheory/NumberField/DirichletDensity.lean,Mathlib/NumberTheory/NumberField/FractionalIdeal.lean,Mathlib/NumberTheory/RamificationInertia/Inertia.lean,Mathlib/RingTheory/FractionalIdeal/Norm.lean,Mathlib/RingTheory/Ideal/Int.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/Ideal/Quotient/HasFiniteQuotients/Norm.lean,Mathlib/RingTheory/RamificationInertia/Inertia.lean |
10 |
4 |
['github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'xroblot'] |
nobody |
4-32432 4 days ago |
4-53820 4 days ago |
4-55800 4 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 |
4-31993 4 days ago |
4-34556 4 days ago |
10-652 10 days |
| 42871 |
WilliamCoram author:WilliamCoram |
feat: multivariate gauss norm API and a lemma to discharge hdom in mul_eq_mul |
We add some missing API as well as lemmas that compute explicit values of the gauss norm (e.g. on monomials, X, C). Finally, we add a lemma that will be used to discharge `hdom` in `mul_eq_mul` in applications.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
119/4 |
Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean |
1 |
10 |
['WilliamCoram', 'github-actions', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
4-27688 4 days ago |
6-40328 6 days ago |
6-40316 6 days |
| 41303 |
kebekus author:kebekus |
feat: Invariance of meromorphicity under scaling |
Prove that various notions associated with meromorphic functions are invariant under scaling. Add several missing `fun_prop` tags and normalize comments.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
153/101 |
Mathlib/Analysis/Analytic/Constructions.lean,Mathlib/Analysis/Meromorphic/Basic.lean,Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Meromorphic/NormalForm.lean,Mathlib/Analysis/Meromorphic/Order.lean |
5 |
20 |
['ADedecker', 'github-actions', 'j-loreaux', 'kebekus', 'mathlib-merge-conflicts'] |
nobody |
4-27151 4 days ago |
4-29054 4 days ago |
16-58916 16 days |
| 42349 |
teorth author:teorth |
feat(Analysis/SpecialFunctions/Gamma/Digamma): reflection formula for digamma |
Establishes the Euler reflection formula for the digamma function, by taking the log derivative of the corresponding reflection formula for the Gamma function.
---
Inspired by https://github.com/leanprover-community/mathlib4/pull/41120#discussion_r3695475523
An initial proof of this theorem was generated by an AI, but heavily rewritten by the author.
[](https://gitpod.io/from-referrer/)
|
t-analysis
maintainer-merge
|
18/0 |
Mathlib/Analysis/SpecialFunctions/Gamma/Digamma.lean |
1 |
8 |
['CoolRmal', 'felixpernegger', 'github-actions', 'mathlib-merge-conflicts', 'teorth'] |
nobody |
4-26691 4 days ago |
4-26691 4 days ago |
21-68478 21 days |
| 42867 |
WilliamCoram author:WilliamCoram |
feat: restricted multivariate power series as its own type and some missing API lemmas |
We add some missing API lemmas for restricted multivariate power series, as well as promoting them to their own type `MvPowerSeries.Restricted`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
204/2 |
Mathlib/RingTheory/MvPowerSeries/Restricted.lean |
1 |
13 |
['WilliamCoram', 'github-actions', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
4-26620 4 days ago |
6-44971 6 days ago |
6-44959 6 days |
| 42366 |
vihdzp author:vihdzp |
chore: use `to_dual` for `IsAtom` and `IsCoatom` |
I haven't translated `IsStronglyAtomic` nor anything below in that file. I ran into problems trying to use `to_dual` on that declaration.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [ ] depends on: #42364
[](https://gitpod.io/from-referrer/)
|
t-order |
58/145 |
Mathlib/Order/Atoms.lean,Mathlib/Tactic/Translate/ToDual.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
4-22930 4 days ago |
4-47151 4 days ago |
4-51243 4 days |
| 42832 |
loefflerd author:loefflerd |
feat(NumberTheory/Padics): the Amice transform |
Prove the Amice (aka Leopoldt) transform isomorphism, identifying Zp-valued measures on Zp with the power series ring `ℤ_[p]⟦X⟧`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-number-theory |
193/4 |
Mathlib.lean,Mathlib/Algebra/Group/ForwardDiff.lean,Mathlib/NumberTheory/Padics/Measure/AmiceTransform.lean,Mathlib/NumberTheory/Padics/Measure/Basic.lean |
4 |
2 |
['github-actions'] |
faenuccio assignee:faenuccio |
4-22138 4 days ago |
7-29547 7 days ago |
7-30149 7 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'] |
urkud assignee:urkud |
4-10372 4 days ago |
24-32483 24 days ago |
24-32471 24 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 |
4-2946 4 days ago |
4-18026 4 days ago |
4-85112 4 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 |
4-2092 4 days ago |
5-29868 5 days ago |
12-85357 12 days |
| 42964 |
SnirBroshi author:SnirBroshi |
chore(Combinatorics/SimpleGraph/CycleGraph): golf `cycleGraph_isContained_iff` |
---
`set_option trace.profiler true` reports ~250ms both before and after this change.
This is independent from #41338, which would probably help golf even further.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
18/26 |
Mathlib/Combinatorics/SimpleGraph/CycleGraph.lean |
1 |
1 |
['github-actions'] |
nobody |
4-1802 4 days ago |
4-2455 4 days ago |
4-2443 4 days |
| 40156 |
JovanGerb author:JovanGerb |
perf: reduce priority of `DivisionSemiring.toSemiring` |
This PR reduces the priority of `DivisionSemiring.toSemiring`. This is relevant because a lot of type class search starts at `Semiring`, so we need to ensure that the instances that apply to `Semiring` are tried in a sensible order. In particular, this will now prefer `CommSemiring.toSemiring`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
18/15 |
Mathlib/Algebra/Field/Defs.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/FieldTheory/SeparableClosure.lean,Mathlib/RingTheory/Etale/Field.lean,Mathlib/RingTheory/QuasiFinite/Polynomial.lean,MathlibTest/GalNotation.lean,MathlibTest/Tactic/Ring/Ring.lean |
9 |
8 |
['JovanGerb', 'github-actions', 'kbuzzard', 'leanprover-radar', 'themathqueen'] |
joneugster assignee:joneugster |
4-1747 4 days ago |
80-32251 80 days ago |
80-34004 80 days |
| 41026 |
Thmoas-Guan author:Thmoas-Guan |
feat(LinearAlgebra): exterior algebra of product module |
In this PR, we proved the exterior algebra of product module is isomorphic to graded tensor product of the two exterior algebras.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
151/0 |
Mathlib.lean,Mathlib/LinearAlgebra/ExteriorAlgebra/Basic.lean,Mathlib/LinearAlgebra/ExteriorAlgebra/Product.lean |
3 |
3 |
['eric-wieser', 'github-actions'] |
ocfnash assignee:ocfnash |
4-1743 4 days ago |
59-54040 59 days ago |
59-54028 59 days |
| 41803 |
benjub author:benjub |
feat(Topology/order/IntermediateValue): continuous induction from sSup membership |
Add `mem_of_csSup_mem_of_forall_exists_gt`, that generalizes `IsClosed.mem_of_ge_of_forall_exists_gt` by weakening the closedness hypothesis to membership of the supremum. Derive `IsClosed.mem_of_ge_of_forall_exists_gt` from it.
---
This result was already in essence in `IsClosed.mem_of_ge_of_forall_exists_gt`, which uses closedness only to obtain membership of the supremum.
This new result does not require `[TopologicalSpace α] [OrderTopology α]` (it is purely order-theoretic), but I still placed it next to `IsClosed.mem_of_ge_of_forall_exists_gt`. I am open to moving it to another file if the reviewer sees fit.
There are cases where that more general lemma is needed, because closedness either does not hold or would be longer to prove. For instance, I need that generalization to shorten the proof in the draft PR #41552. |
t-topology
new-contributor
|
21/11 |
Mathlib/Topology/Order/IntermediateValue.lean |
1 |
3 |
['benjub', 'github-actions'] |
ADedecker assignee:ADedecker |
4-1742 4 days ago |
39-3628 39 days ago |
39-3616 39 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'] |
ADedecker assignee:ADedecker |
4-1740 4 days ago |
12-11403 12 days ago |
38-2585 38 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
|
209/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deligne.lean,Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/NumberTheory/LSeries/HardyZ.lean |
4 |
7 |
['github-actions', 'teal-sea', 'wwylele'] |
nobody |
3-86287 3 days ago |
4-6407 4 days ago |
4-6395 4 days |
| 42960 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Trails): an Eulerian walk is chordless |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
4/0 |
Mathlib/Combinatorics/SimpleGraph/Trails.lean |
1 |
2 |
['github-actions'] |
nobody |
3-84674 3 days ago |
3-85251 3 days ago |
4-12678 4 days |
| 40851 |
SnirBroshi author:SnirBroshi |
feat(MeasureTheory/Integral/MeanInequalities): strict Hölder's inequality for Lebesgue integrals |
Prove an iff for the equality case of Hölder's inequality when both norms are finite and non-zero.
---
For both the norm 1 theorems and the finite non-zero theorems I extracted an intermediate lemma to reduce duplication between the inequality and equality cases.
It looks to me like `funMulInvSnorm` is intended to be private, so I made new theorems about it private.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
94/38 |
Mathlib/MeasureTheory/Integral/Lebesgue/Markov.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean |
2 |
13 |
['EtienneC30', 'SnirBroshi', 'github-actions'] |
kex-y assignee:kex-y |
3-82611 3 days ago |
3-82613 3 days ago |
46-74219 46 days |
| 42878 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Star): the nth star graph is contained in a graph iff max degree is at least `n` |
- `starGraph (0 : Fin (n + 1)) ⊑ G ↔ n ≤ G.maxDegree`
- `starGraph v ⊑ starGraph w ↔ Nonempty (V ↪ W)`
- `starGraph v ⊴ starGraph w ↔ Nonempty (V ↪ W)`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
82/1 |
Mathlib/Combinatorics/SimpleGraph/Star.lean |
1 |
1 |
['github-actions'] |
nobody |
3-81878 3 days ago |
6-25068 6 days ago |
6-25056 6 days |
| 42967 |
yuanyi-350 author:yuanyi-350 |
refactor(RingTheory/Localization): restore IsLocalization.surj' |
|
t-algebraic-geometry
easy
|
6/5 |
Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/RingTheory/Localization/InvSubmonoid.lean |
2 |
1 |
['github-actions'] |
nobody |
3-81125 3 days ago |
3-82046 3 days ago |
3-82034 3 days |
| 41723 |
luigi-massacci author:luigi-massacci |
feat: classical distributions induced by a locally integrable function |
Analogous to the results for Tempered Distributions.
Part of a series of PRs about induced distributions.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
119/1 |
Mathlib/Analysis/Distribution/Distribution.lean,Mathlib/Analysis/Distribution/TestFunction.lean,docs/references.bib |
3 |
26 |
['github-actions', 'j-loreaux', 'luigi-massacci'] |
j-loreaux and mcdoll assignee:j-loreaux assignee:mcdoll |
3-62290 3 days ago |
3-62983 3 days ago |
39-41735 39 days |
| 41981 |
YaelDillies author:YaelDillies |
refactor(Algebra/Polynomial): make into an `abbrev` of `AddMonoidAlgebra` |
... and deprecate the declarations that are now tautological (`toFinsupp`/`ofFinsupp` and their API). For some of the `Polynomial` declarations that needed changing, it was simplest to replace them with the corresponding `AddMonoidAlgebra` one. Note that this replacement is far from exhaustive (a majority of the `Polynomial` API could be replaced this way).
Note that `algebraMap R R[X]` has changed defeq.
[Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Reworking.20Finsupp.2C.20MonoidAlgebra.2C.20HahnSeries.2E.20PowerSeries/with/609275708)
Generated through several rounds of manual review with Claude Opus. Heavily edited by hand afterwards.
Assisted-by: Claude Opus 4.8
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
t-algebra
LLM-generated
label:t-algebra$ |
337/533 |
Mathlib/Algebra/MonoidAlgebra/MapDomain.lean,Mathlib/Algebra/MonoidAlgebra/Support.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Basis.lean,Mathlib/Algebra/Polynomial/Cardinal.lean,Mathlib/Algebra/Polynomial/Coeff.lean,Mathlib/Algebra/Polynomial/Degree/Defs.lean,Mathlib/Algebra/Polynomial/Degree/IsMonicOfDegree.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Algebra/Polynomial/Degree/Support.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Eval/Coeff.lean,Mathlib/Algebra/Polynomial/Eval/Defs.lean,Mathlib/Algebra/Polynomial/Eval/Degree.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/GroupRingAction.lean,Mathlib/Algebra/Polynomial/Inductions.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/Monomial.lean,Mathlib/Algebra/Polynomial/OfFn.lean,Mathlib/Algebra/Polynomial/Reverse.lean,Mathlib/Algebra/Polynomial/Splits.lean,Mathlib/Algebra/Polynomial/UnitTrinomial.lean,Mathlib/Algebra/Ring/Subring/IntPolynomial.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/LinearAlgebra/Finsupp/VectorSpace.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/RingTheory/IsAdjoinRoot.lean,Mathlib/RingTheory/KrullDimension/Polynomial.lean,Mathlib/RingTheory/Polynomial/Basic.lean,Mathlib/RingTheory/Polynomial/Opposites.lean,Mathlib/RingTheory/PowerBasis.lean,Mathlib/RingTheory/PowerSeries/Derivative.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean,Mathlib/RingTheory/ZariskisMainTheorem.lean,Mathlib/Tactic/ReduceModChar.lean,MathlibTest/InstanceDiamonds.lean |
40 |
9 |
['NoahW314', 'YaelDillies', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'tb65536'] |
nobody |
3-55177 3 days ago |
3-57048 3 days ago |
30-32469 30 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 |
2 |
['github-actions'] |
nobody |
3-54782 3 days ago |
35-49199 35 days ago |
35-49687 35 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 |
3-54604 3 days ago |
3-56918 3 days ago |
38-21796 38 days |
| 42754 |
xroblot author:xroblot |
feat(GroupTheory/SpecificGroups/Cyclic): comparison and index of subgroups generated by powers |
Add the following results about the subgroups generated by the powers of a fixed element.
- `Subgroup.zpowers_le_zpowers_iff`: `zpowers (g ^ i) ≤ zpowers (g ^ j) ↔ j.gcd (orderOf g) ∣ i.gcd (orderOf g)`
- `Subgroup.index_zpowers_zpow`: if `g` generates, then `(zpowers (g ^ i)).index = i.gcd (orderOf g)`
- `Subgroup.zpowers_eq_zpowers_iff'`: `zpowers (g ^ i) = zpowers (g ^ j) ↔ i.gcd (orderOf g) = j.gcd (orderOf g)`
- `Subgroup.zpowers_zpow_sup`: `zpowers (g ^ i) ⊔ zpowers (g ^ j) = zpowers (g ^ (i.gcd j : ℤ))`
Some supporting lemmas are also added along the way.
Split off from #40597.
:robot: This PR was extracted from the [SKW project](https://github.com/xroblot/SKW) by Claude.
|
t-group-theory |
120/0 |
Mathlib/Algebra/Group/Subgroup/ZPowers/Basic.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/GCD/Basic.lean,Mathlib/Data/ZMod/QuotientGroup.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean |
6 |
16 |
['github-actions', 'plp127', 'tb65536', 'xroblot'] |
nobody |
3-51496 3 days ago |
3-54932 3 days ago |
8-78321 8 days |
| 42912 |
justin-palumbo author:justin-palumbo |
feat(Topology/GDelta): a completely metrizable subspace of a T6 space is Gδ |
Adds TopologicalSpace.IsCompletelyMetrizableSpace.isGδ: a completely metrizable subspace of a T6 space is Gδ
This is one direction of a foundational fact in descriptive set theory --- the Polish subspaces of a Polish space are exactly the Gδ subsets.
The proof here is modeled on the exposition in Anush Tserunyan's descriptive set theory notes https://www.math.mcgill.ca/atserunyan/Teaching_notes/dst_lectures.pdf, with one adjustment; to make the formalization easier and avoid having multiple distance metrics instantiated at the same time, instead of directly defining open `U_n` with `s = ⋂ n, U` define them such that `s = closure s ∩ ⋂ n, U n` and then appeal to the fact closed sets are Gδ in a perfectly normal space.
---
- [ ] depends on: #42896 [which fixes buggy naming present in Topology/Metrizable/CompletelyMetrizable]
This can be viewed as a companion to #42693, which - under the stronger assumption of the ambient space being Polish - establishes the other direction --- a Gδ subspace of a Polish space is itself Polish.
Together, these give Alexandrov's theorem, characterizing the Polish subspaces of an ambient Polish space as exactly the Gδ ones, and (via `Metric.PiNatEmbed.exists_embedding_to_hilbert_cube`) Polish spaces as exactly the Gδ subsets of the Hilbert cube. If and when both these PRs are committed, I anticipate adding these consequences to Topology/MetricSpace/Polish.lean
LLM usage: I wrote the initial version myself, while using Google's free "AI mode" to help me find relevant lemma names in the codebase, and afterward used helped Claude Opus to review, which led to simplifying some of the arguments. I take full responsibility for the code here
|
t-topology
new-contributor
|
91/0 |
Mathlib.lean,Mathlib/Topology/GDelta/CompletelyMetrizable.lean |
2 |
8 |
['github-actions', 'justin-palumbo', 'mathlib-dependent-issues', 'plp127'] |
nobody |
3-51084 3 days ago |
4-44929 4 days ago |
4-45214 4 days |
| 42858 |
YaelDillies author:YaelDillies |
feat(Data/Int): computable shortcut instances |
This avoids `Preorder ℤ` being found from the noncomputable `ConditionallyCompleteLinearOrder ℤ` .
From FormalConjectures
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
4/0 |
Mathlib/Data/Int/Order/Basic.lean |
1 |
4 |
['Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'plp127'] |
nobody |
3-46499 3 days ago |
6-66920 6 days ago |
6-66908 6 days |
| 41898 |
marcinbugaj author:marcinbugaj |
feat(Analysis/Convex): majorization preorder and T-transform decomposition |
Add the majorization preorder and its T-transform decomposition.
**Majorization.** `Majorizes a b` (notation `a ≺ b`) is defined for `a b : ι → M` with `ι` an arbitrary `Fintype` and `M` an ordered additive commutative monoid: the two tuples have equal total sum and, for every `k`, the maximal sum over `k`-element subsets of `a` is at most that of `b` (`maxSubsetSum`). This is classical (Hardy–Littlewood–Pólya / Schur) majorization; it lives on the values, so it is permutation-invariant and needs no order on the index (in particular it is not first-order stochastic dominance). It is shown to be a preorder (`Majorizes.refl`, `Majorizes.trans`, the `Trans` instance), with `majorizes_iff_descPrefixSum` characterizing it via sorted prefix sums, and `comp_perm_majorizes_iff` / `majorizes_comp_perm_iff` recording permutation-invariance.
**T-transforms.** A single T-transform (Robin Hood transfer) is the operation `tTransform a s` for a step `s : TStep ι K` (its two coordinates `k, l` and transfer parameter `t`), over an ordered field `K` . RelatedByTTransform b a` means `b = tTransform a s` for some valid step, and `discrepancy a b` counts the coordinates at which `a` and `b` differ.
**Decomposition.** `majorizes_iff_reflTransGen_relatedByTTransform`: `a ≺ b` iff the decreasing rearrangement of `a` is reachable from that of `b` by a finite chain of T-transforms. The chain is also produced as explicit data: `majorizesTStepList` is a `def` returning the concrete `List (TStep …)` bundled with a proof that it is a valid chain folding sorted `b` to sorted `a`, of length at most `discrepancy`; `majorizes_exists_tStepList` is the existence form, and the `ReflTransGen` characterization is derived from it. The construction is computable: over a computable ordered field such as `ℚ` the step list evaluates to a concrete value.
|
t-analysis
new-contributor
|
960/0 |
Mathlib.lean,Mathlib/Analysis/Convex/Majorization.lean,docs/references.bib |
3 |
13 |
['YaelDillies', 'github-actions', 'marcinbugaj'] |
nobody |
3-41425 3 days ago |
30-49036 30 days ago |
35-46511 35 days |
| 42950 |
EtienneC30 author:EtienneC30 |
chore: deprecate Measure.MeasureSpace |
Deprecate the file removed in #42949.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #42949
[](https://gitpod.io/from-referrer/)
|
tech debt
t-measure-probability
|
18/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean |
2 |
3 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
3-41397 3 days ago |
3-42088 3 days ago |
3-43066 3 days |
| 42171 |
YaelDillies author:YaelDillies |
chore: don't inductively define sets |
Instead define them as `Set.ofPred` of inductively-defined predicates. This avoids abusing the defeq `Set α := α → Prop`. In cases where the set was barely used, I have inlined the definition instead.
Generated by Claude Opus, then reviewed and cherry-picked line-by-line by myself.
Assisted-by: Claude Opus 4.8
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data
LLM-generated
maintainer-merge
|
266/158 |
Mathlib/Combinatorics/Hindman.lean,Mathlib/Computability/EpsilonNFA.lean,Mathlib/Data/Set/Constructions.lean,Mathlib/LinearAlgebra/Projectivization/Subspace.lean,Mathlib/MeasureTheory/Measure/SeparableMeasure.lean,Mathlib/MeasureTheory/PiSystem.lean,Mathlib/MeasureTheory/SetAlgebra.lean,Mathlib/Topology/Category/Compactum.lean |
8 |
13 |
['EtienneC30', 'YaelDillies', 'felixpernegger', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] |
nobody |
3-41168 3 days ago |
3-52614 3 days ago |
20-61456 20 days |
| 42966 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Hasse): smaller path graphs are contained in bigger ones |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
25/1 |
Mathlib/Combinatorics/SimpleGraph/Hasse.lean |
1 |
1 |
['github-actions'] |
nobody |
3-37330 3 days ago |
3-37924 3 days ago |
3-38615 3 days |
| 42916 |
0x00b1 author:0x00b1 |
feat(Analysis/Numerical): add (real-valued) bisection method |
Bisection method for real-valued functions on closed intervals. This is an exact, non-computable real-number formalization rather than a floating-point implementation. Nevertheless, I did try to make everything sufficiently flexible to simplify changes if floating-point is eventually added to mathlib4!
The core API represents each bisection state with endpoints in `Set.Icc a b`, ensuring that the function is never evaluated outside its domain. I provided a convenience API for functions `ℝ → ℝ` (on top of the interval-restricted core API). Degenerate intervals are also supported. I listed all the results that I think are important in the comments.
This is my first contribution to mathlib4 so please let me know if you have suggestions on improving either of the APIs and please let me know if you want me to add any real-valued theorems! Likewise, any suggestions on rewriting`dist_midpoint_step_midpoint` to feel less nasty would be appreciated.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
757/0 |
Mathlib.lean,Mathlib/Analysis/Numerical/Bisection.lean |
2 |
4 |
['0x00b1', 'github-actions', 'luigi-massacci'] |
luigi-massacci assignee:luigi-massacci |
3-36234 3 days ago |
5-21069 5 days ago |
5-21057 5 days |
| 42734 |
FrankieNC author:FrankieNC |
chore(Probability/Martingale): remove defeq options in OptionalStopping |
Remove all 5 `set_option backward.isDefEq.respectTransparency` occurrences in `Mathlib/Probability/Martingale/OptionalStopping.lean`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
t-measure-probability
maintainer-merge
|
28/41 |
Mathlib/Probability/Martingale/Basic.lean,Mathlib/Probability/Martingale/OptionalStopping.lean,Mathlib/Probability/Process/Stopping.lean |
3 |
16 |
['EtienneC30', 'FrankieNC', 'github-actions'] |
EtienneC30 assignee:EtienneC30 |
3-35071 3 days ago |
5-26352 5 days ago |
9-60094 9 days |
| 42165 |
bocowgill author:bocowgill |
feat(Probability/HasCondDistrib): characterize independence using conditional distributions |
This PR uses conditional distributions to characterize independence of two random variables.
It adds eight public declarations to `Mathlib/Probability/HasCondDistrib.lean`, which is the only file modified:
- `indepFun_iff_hasCondDistrib_const_of_hasLaw`: characterizes independence using a constant conditional-distribution kernel when the laws are specified.
- `indepFun_iff_hasCondDistrib_const`: specializes this characterization to the marginal laws `P.map X` and `P.map Y`.
- `IndepFun.hasCondDistrib_const`: the forward implication of the preceding equivalence.
- `HasCondDistrib.indepFun_of_const`: the reverse implication.
- `hasCondDistrib_condDistrib`: shows that the regular conditional distribution `condDistrib Y X P` satisfies `HasCondDistrib`.
- `hasCondDistrib_iff_condDistrib_ae_eq`: characterizes finite kernels satisfying `HasCondDistrib` by almost-everywhere equality with `condDistrib`.
- `indepFun_iff_condDistrib_ae_eq_const_of_hasLaw`: characterizes independence by almost-everywhere equality of `condDistrib` with the constant kernel at the specified law.
- `indepFun_iff_condDistrib_ae_eq_const`: specializes this characterization to the marginal laws.
The PR adds no new file and makes no change to the root `Mathlib.lean` imports.
---
### Motivation
These results provide a basic building block for formalizing randomized experiments and causal identification. The main result provides a starting point for later ignorability and conditional-independence results in causal inference.
### LLM disclosure
For theorem planning and Lean implementation, I substantially used Codex by OpenAI. I also used it for suggestions around naming and documentation, for iterating on the proofs, and for validating my commits locally.
I manually searched for the best locations and earlier results to build upon. I personally reviewed both the mathematical statements and Lean code (line-by-line), as well as the suggestions around naming and API choices. I also reviewed and confirmed that I can explain each step of the results (both Mathematics and Lean syntax).
To validate the change, I directly compiled the modified file and ran a targeted build. I also ran the style linter, and completed a full `lake build` and a full `lake test`.
Please note: This is one of my first mathlib contributions. I welcome corrections or suggestions about all aspects of this PR. I'm prepared to revise it as necessary, and to learn from the review.
|
t-measure-probability
LLM-generated
new-contributor
large-import
maintainer-merge
|
73/3 |
Mathlib/Probability/HasCondDistrib.lean |
1 |
29 |
['CoolRmal', 'EtienneC30', 'bocowgill', 'github-actions', 'leanprover-radar'] |
kex-y assignee:kex-y |
3-34484 3 days ago |
3-79152 3 days ago |
26-71032 26 days |
| 42814 |
xroblot author:xroblot |
feat(NumberTheory/FundamentalDiscriminant): fundamental discriminants |
An integer `D` is a fundamental discriminant if `D ≡ 0, 1 (mod 4)`, no odd prime square divides it, and it is not `4` times an integer `≡ 0, 1 (mod 4)`. This PR adds `Int.IsFundamentalDiscr` in a new file, together with the squarefree characterisation `Int.isFundamentalDiscr_iff_squarefree` and its specialisations to `4m + 1` and `4m`.
It is the arithmetic input of a later PR, showing that `QuadraticAlgebra ℤ a b` is the integral closure of `ℤ` in its fraction ring `QuadraticAlgebra ℚ a b` exactly when `discr a b` is a fundamental discriminant.
It also adds a few supporting lemmas to existing files.
Prepared with Claude Code 🤖
---
- [x] depends on: #42751
|
t-number-theory |
113/0 |
Mathlib.lean,Mathlib/Data/Nat/Prime/Basic.lean,Mathlib/Data/Nat/Squarefree.lean,Mathlib/NumberTheory/FundamentalDiscriminant.lean,Mathlib/RingTheory/Coprime/Basic.lean |
5 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
3-29489 3 days ago |
3-31414 3 days ago |
3-49085 3 days |
| 42247 |
marcelolynch author:marcelolynch |
chore(Analysis/Asymptotics/Defs): scope and rename variable `E'''` |
The variable block at the top of the file declares `E'''` and `[SeminormedAddGroup E''']`. Only `isBigO_iff'` and `isBigO_iff''` use them. The instance binder is a candidate in every typeclass search in the file.
This PR moves the type and the instance into a section around the two theorems. The section calls the type `F`.
The two statements do not change. A dump of all constant types in the module shows that every other declaration keeps its exact type. The two theorems keep the same hypotheses, and neither one has explicit arguments. Only the name and the position of the implicit type change.
Standalone elaboration of the file does not change measurably: 3.700 s here against 3.696 s on master, as medians of 6 interleaved runs.
Same mechanism as #42214 and #42238.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-analysis |
9/4 |
Mathlib/Analysis/Asymptotics/Defs.lean |
1 |
7 |
['github-actions', 'grunweg', 'marcelolynch', 'mathlib-merge-conflicts'] |
nobody |
3-29383 3 days ago |
3-30822 3 days ago |
8-60025 8 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 |
3-28869 3 days ago |
11-77973 11 days ago |
11-77961 11 days |
| 42845 |
homeowmorphism author:homeowmorphism |
feat(Order/Monoid/Unbundled/Basic): left multiplication is strictly monotone if and only if it is monotone and left-cancellative |
Factored out of #41505.
---
Use of AI: the original code was written by Claude Fable, but it was discussed and rewritten by humans in the course of the evolving PR it was factored of.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
maintainer-merge
label:t-algebra$ |
20/1 |
Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean |
1 |
6 |
['YaelDillies', 'github-actions', 'homeowmorphism'] |
nobody |
3-26167 3 days ago |
6-25608 6 days ago |
6-29880 6 days |
| 42322 |
EtienneC30 author:EtienneC30 |
refactor: change the default value of `Measure.map` to a Dirac mass |
[`MeasureTheory.Measure.map`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Measure/Map.html#MeasureTheory.Measure.map)`f µ` is currently defined to be `0` if `f` is not a.e.-measurable. This PR changes it to be an arbitrary Dirac mass (except when `µ = 0`, where it is still defined to be `0` to keep [MeasureTheory.Measure.map_zero](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Measure/Map.html#MeasureTheory.Measure.map_zero)).
This allows to have an instance saying that mapping a probability measure yields a probability measure, which in turns allows to define [MeasureTheory.ProbabilityMeasure.map](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Measure/ProbabilityMeasure.html#MeasureTheory.ProbabilityMeasure.map) without requiring a measurability hypothesis while still enjoying [MeasureTheory.ProbabilityMeasure.toMeasure_map](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Measure/ProbabilityMeasure.html#MeasureTheory.ProbabilityMeasure.toMeasure_map) as a simp lemma.
In order to do the change `Measure.dirac` must be available before `Measure.map` in the import chain. To do that we split the current `Measure.Dirac` file in two files, one containing the definition and very basic API in order to prove that it is a probability measure, the other containing the remainder.
This change also required to add some measurability hypotheses along the way, which is the main part of the diff. The main one is probably [MeasureTheory.Measure.map_smul](https://leanprover-community.github.io/mathlib4_docs/Mathlib/MeasureTheory/Measure/Map.html#MeasureTheory.Measure.map_smul) which now requires measurability of the map. We also replaced the definition of [MeasureTheory.pdf.IsUniform](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Probability/Distributions/Uniform.html#MeasureTheory.pdf.IsUniform) to use `HasLaw`, and added an `aemeasurable` field in `HasGaussianLaw`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
file-removed
large-import
|
477/500 |
Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Mathlib.lean,Mathlib/Analysis/Convolution.lean,Mathlib/Dynamics/Ergodic/MeasurePreserving.lean,Mathlib/Geometry/Euclidean/Volume/Measure.lean,Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean,Mathlib/MeasureTheory/Group/Convolution.lean,Mathlib/MeasureTheory/Group/Defs.lean,Mathlib/MeasureTheory/Group/MeasurableEquiv.lean,Mathlib/MeasureTheory/Group/Measure.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Map.lean,Mathlib/MeasureTheory/Integral/Prod.lean,Mathlib/MeasureTheory/Measure/AEMeasurable.lean,Mathlib/MeasureTheory/Measure/CharacteristicFunction/TaylorExpansion.lean,Mathlib/MeasureTheory/Measure/Count.lean,Mathlib/MeasureTheory/Measure/Dirac/Basic.lean,Mathlib/MeasureTheory/Measure/Dirac/Def.lean,Mathlib/MeasureTheory/Measure/FiniteMeasure.lean,Mathlib/MeasureTheory/Measure/FiniteMeasureProd.lean,Mathlib/MeasureTheory/Measure/GiryMonad.lean,Mathlib/MeasureTheory/Measure/Haar/Disintegration.lean,Mathlib/MeasureTheory/Measure/Haar/InnerProductSpace.lean,Mathlib/MeasureTheory/Measure/Haar/MulEquivHaarChar.lean,Mathlib/MeasureTheory/Measure/Haar/Unique.lean,Mathlib/MeasureTheory/Measure/IntegralCharFun.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/Lebesgue/EqHaar.lean,Mathlib/MeasureTheory/Measure/Map.lean,Mathlib/MeasureTheory/Measure/ProbabilityMeasure.lean,Mathlib/MeasureTheory/Measure/Prod.lean,Mathlib/MeasureTheory/Measure/Prokhorov.lean,Mathlib/MeasureTheory/Measure/QuasiMeasurePreserving.lean,Mathlib/MeasureTheory/Measure/Tight.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Finite.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Probability.lean,Mathlib/MeasureTheory/Measure/Typeclasses/ZeroOne.lean,Mathlib/MeasureTheory/Measure/WithDensity.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean,Mathlib/Probability/CDF.lean,Mathlib/Probability/Density.lean,Mathlib/Probability/Distributions/Bernoulli.lean,Mathlib/Probability/Distributions/Binomial.lean,Mathlib/Probability/Distributions/Fernique.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Basic.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Def.lean,Mathlib/Probability/Distributions/Gaussian/IsGaussianProcess/Basic.lean,Mathlib/Probability/Distributions/Gaussian/Multivariate.lean,Mathlib/Probability/Distributions/Gaussian/Real.lean,Mathlib/Probability/Distributions/Poisson/Basic.lean,Mathlib/Probability/Distributions/Uniform.lean,Mathlib/Probability/HasCondDistrib.lean,Mathlib/Probability/HasLaw.lean,Mathlib/Probability/Independence/Basic.lean,Mathlib/Probability/Independence/Conditional.lean,Mathlib/Probability/Independence/InfinitePi.lean,Mathlib/Probability/Kernel/CondDistrib.lean,Mathlib/Probability/Kernel/Condexp.lean,Mathlib/Probability/Kernel/IonescuTulcea/Traj.lean,Mathlib/Probability/Moments/Basic.lean,Mathlib/Probability/ProbabilityMassFunction/Basic.lean,Mathlib/Probability/ProductMeasure.lean,Mathlib/Probability/StrongLaw.lean |
63 |
11 |
['D-Thomine', 'EtienneC30', 'github-actions', 'leanprover-radar', 'mathlib-bors', 'mathlib-merge-conflicts'] |
RemyDegenne assignee:RemyDegenne |
3-20580 3 days ago |
3-22382 3 days ago |
22-39426 22 days |
| 42980 |
YaelDillies author:YaelDillies |
feat(Data/Sym/Sym2): the first element of `s(x, x)` is `x` |
This is useful for simp.
From FormalConjectures
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
4/0 |
Mathlib/Data/Sym/Sym2.lean |
1 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
3-19523 3 days ago |
3-45259 3 days ago |
3-45247 3 days |
| 42371 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Basic): `Infinite V → Infinite (SimpleGraph V)` |
Matches the existing `Finite V → Finite (SimpleGraph V)`.
---
I wonder if there's an easier/shorter 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/)
|
t-combinatorics
maintainer-merge
|
5/0 |
Mathlib/Combinatorics/SimpleGraph/Basic.lean |
1 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
3-19465 3 days ago |
21-38254 21 days ago |
21-38242 21 days |
| 40185 |
lua-vr author:lua-vr |
feat(Order/Closure): closure_sup_le and sup_closure_le |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
6/0 |
Mathlib/Order/Closure.lean |
1 |
3 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
3-19418 3 days ago |
81-39071 81 days ago |
81-39059 81 days |
| 41890 |
Ljon4ik4 author:Ljon4ik4 |
feat: semidirect product of Lie algebras - adding simp lemmas for toProd.symm and toProdl.symm |
As an `R`-module the semidirect product of two Lie algebras ` K ⋊⁅ψ⁆ L` is isomorphic to ` K × L`.
The simp lemmas for the reverse direction of this isomorphisms were missing and are added in this PR.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
maintainer-merge
label:t-algebra$ |
5/1 |
Mathlib/Algebra/Lie/SemiDirect.lean |
1 |
3 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
3-19357 3 days ago |
36-41495 36 days ago |
36-41483 36 days |
| 39907 |
Hagb author:Hagb |
feat(Order/InititalSeg): `PrincipalSeg` is trichotomous for well orders |
For any two well orders, one is a principal segment of the other, or they are isomorphic.
Suggested by @vihdzp in the review of #39545
https://github.com/leanprover-community/mathlib4/pull/39545#discussion_r3262466782. It may slightly simplify the proof of `infinite_iff_nonempty_relEmbedding_of_isWellOrder`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
7/0 |
Mathlib/Order/InitialSeg.lean |
1 |
2 |
['Ruben-VandeVelde', 'github-actions', 'vihdzp'] |
nobody |
3-19284 3 days ago |
88-74207 88 days ago |
88-74195 88 days |
| 42739 |
FrankieNC author:FrankieNC |
chore(Order/Interval): define `Unique (Iic 0)` directly, drop a defeq option in Traj |
The instance `Unique (Iic (0 : ℕ))` was defined by `rw [← Nat.bot_eq_zero]; infer_instance`, which hides `default` behind a cast, so `↑(default : Iic 0)` does not reduce to `0`. Defining the instance directly fixes this, and allows to remove the `set_option backward.isDefEq.respectTransparency` in `Mathlib/Probability/Kernel/IonescuTulcea/Traj.lean`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
maintainer-merge
|
3/4 |
Mathlib/Order/Interval/Finset/Nat.lean,Mathlib/Probability/Kernel/IonescuTulcea/Traj.lean |
2 |
2 |
['Ruben-VandeVelde', 'github-actions', 'plp127'] |
nobody |
3-19245 3 days ago |
10-34407 10 days ago |
10-34395 10 days |
| 42970 |
yuanyi-350 author:yuanyi-350 |
refactor(Data/Multiset): rename map_filter' |
The deprecated alias was removed in https://github.com/leanprover-community/mathlib4/pull/21271. |
t-data
easy
maintainer-merge
|
4/3 |
Mathlib/Data/Multiset/Filter.lean |
1 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
3-18968 3 days ago |
3-80673 3 days ago |
3-80661 3 days |
| 41800 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Paths): `IsTrail` `concat` iff |
---
Also golf and fix the name of `concat_isPath_iff`.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
maintainer-merge
|
15/5 |
Mathlib/Combinatorics/SimpleGraph/Paths.lean |
1 |
2 |
['Ruben-VandeVelde', 'github-actions'] |
nobody |
3-17162 3 days ago |
39-11111 39 days ago |
39-11099 39 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
|
112/53 |
Mathlib/Analysis/Matrix/Normed.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Condensed/Light/TopCatAdjunction.lean,Mathlib/Condensed/TopCatAdjunction.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/Basic.lean,Mathlib/Topology/Algebra/Group/Matrix.lean,Mathlib/Topology/Algebra/Group/Torsor.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 |
29 |
10 |
['DavidLedvinka', 'JovanGerb', 'gasparattila', 'github-actions', 'j-loreaux', 'lecopivo', 'mathlib-merge-conflicts'] |
nobody |
3-16010 3 days ago |
3-16010 3 days ago |
3-15998 3 days |
| 41811 |
YaelDillies author:YaelDillies |
chore(CategoryTheory): use the new `↧` notation in concrete categories |
... as well as the corresponding delaborator. Also remove one extra line break added by the previous PR.
Generated by Claude Opus, reviewed line-by-line by myself.
Assisted-by: Claude Opus 4.8
---
- [x] depends on: #41810
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory
LLM-generated
|
377/278 |
Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/BoolRing.lean,Mathlib/Algebra/Category/CommAlgCat/Basic.lean,Mathlib/Algebra/Category/Grp/Zero.lean,Mathlib/Algebra/Category/ModuleCat/Semi.lean,Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Algebra/Category/MonCat/Basic.lean,Mathlib/Algebra/Category/Ring/Adjunctions.lean,Mathlib/Algebra/Category/Ring/Basic.lean,Mathlib/Algebra/Category/Ring/Colimits.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/Category/Ring/Limits.lean,Mathlib/Algebra/Category/Ring/Small.lean,Mathlib/Algebra/Category/Ring/Topology.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplexCohomology.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicGeometry/AffineSpace.lean,Mathlib/AlgebraicGeometry/AlgClosed/Basic.lean,Mathlib/AlgebraicGeometry/Cover/Open.lean,Mathlib/AlgebraicGeometry/GammaSpecAdjunction.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Subscheme.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/AlgebraicGeometry/Morphisms/Proper.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/AlgebraicGeometry/ResidueField.lean,Mathlib/AlgebraicGeometry/Scheme.lean,Mathlib/AlgebraicGeometry/Sites/ConstantSheaf.lean,Mathlib/AlgebraicGeometry/Spec.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/AlgebraicGeometry/ValuativeCriterion.lean,Mathlib/AlgebraicGeometry/ZariskisMainTheorem.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Product.lean,Mathlib/AlgebraicTopology/TopologicalSimplex.lean,Mathlib/CategoryTheory/ConcreteCategory/Notation.lean,Mathlib/CategoryTheory/Extensive.lean,Mathlib/CategoryTheory/FintypeCat.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Cat.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Ring.lean,Mathlib/CategoryTheory/Presentable/CardinalDirectedPoset.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/Basic.lean,Mathlib/Condensed/Light/TopCatAdjunction.lean,Mathlib/Condensed/TopCatAdjunction.lean,Mathlib/Geometry/Manifold/Sheaf/Basic.lean,Mathlib/Geometry/Manifold/Sheaf/LocallyRingedSpace.lean,Mathlib/Geometry/Manifold/Sheaf/Smooth.lean,Mathlib/Geometry/RingedSpace/LocallyRingedSpace.lean,Mathlib/Geometry/RingedSpace/OpenImmersion.lean,Mathlib/Geometry/RingedSpace/PresheafedSpace.lean,Mathlib/Geometry/RingedSpace/SheafedSpace.lean,Mathlib/Order/Category/BddDistLat.lean,Mathlib/Order/Category/BddLat.lean,Mathlib/Order/Category/BddOrd.lean,Mathlib/Order/Category/BoolAlg.lean,Mathlib/Order/Category/CompleteLat.lean,Mathlib/Order/Category/DistLat.lean,Mathlib/Order/Category/FinBddDistLat.lean,Mathlib/Order/Category/FinBoolAlg.lean,Mathlib/Order/Category/FinPartOrd.lean,Mathlib/Order/Category/Frm.lean,Mathlib/Order/Category/HeytAlg.lean,Mathlib/Order/Category/Lat.lean,Mathlib/Order/Category/LinOrd.lean,Mathlib/Order/Category/NonemptyFinLinOrd.lean,Mathlib/Order/Category/OmegaCompletePartialOrder.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/Category/PartOrdEmb.lean,Mathlib/Order/Category/Preord.lean,Mathlib/Order/Category/Semilat.lean,Mathlib/Order/NonemptyFiniteChains.lean,Mathlib/RingTheory/Etale/Finite.lean,Mathlib/RingTheory/PicardGroup.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Basic.lean,Mathlib/Topology/Category/CompHaus/Basic.lean,Mathlib/Topology/Category/CompHausLike/Basic.lean,Mathlib/Topology/Category/CompactlyGenerated.lean,Mathlib/Topology/Category/Compactum.lean,Mathlib/Topology/Category/FinTopCat.lean,Mathlib/Topology/Category/Profinite/Basic.lean,Mathlib/Topology/Category/Sequential.lean,Mathlib/Topology/Category/Stonean/Adjunctions.lean,Mathlib/Topology/Category/TopCat/Basic.lean,Mathlib/Topology/Category/TopCat/Limits/Basic.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,Mathlib/Topology/Category/TopCat/Monoidal.lean,Mathlib/Topology/Category/TopCat/Opens.lean,Mathlib/Topology/Category/TopCat/ULift.lean,Mathlib/Topology/Category/TopCommRingCat.lean,Mathlib/Topology/Category/TopPair.lean,Mathlib/Topology/Category/UniformSpace.lean,Mathlib/Topology/Convenient/Category.lean,Mathlib/Topology/Gluing.lean,Mathlib/Topology/Order/Category/AlexDisc.lean,Mathlib/Topology/Order/Category/FrameAdjunction.lean |
105 |
4 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
3-15946 3 days ago |
3-17943 3 days ago |
3-20150 3 days |
| 42678 |
mo271 author:mo271 |
feat(SetTheory/Cardinal/Arithmetic): properties of `sdiff` |
ported from Formal Conjectures ForMathlib original pr:
https://github.com/google-deepmind/formal-conjectures/pull/1496
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/)
|
t-set-theory
maintainer-merge
|
32/4 |
Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean |
2 |
10 |
['Ruben-VandeVelde', 'github-actions', 'mo271', 'plp127', 'vihdzp', 'vlad902'] |
nobody |
3-15037 3 days ago |
9-63784 9 days ago |
11-61914 11 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 |
3-13077 3 days ago |
3-14229 3 days ago |
3-19789 3 days |
| 39802 |
vihdzp author:vihdzp |
feat: more theorems on `toBoolRing` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
maintainer-merge
label:t-algebra$ |
24/0 |
Mathlib/Algebra/Ring/BooleanRing.lean |
1 |
14 |
['Ruben-VandeVelde', 'github-actions', 'plp127', 'themathqueen', 'vihdzp'] |
nobody |
3-12209 3 days ago |
21-80860 21 days ago |
56-3343 56 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 |
3-10758 3 days ago |
3-11739 3 days ago |
7-36707 7 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 |
3-2606 3 days ago |
3-86142 3 days ago |
3-86130 3 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 |
345/2 |
Mathlib.lean,Mathlib/CategoryTheory/Profunctor/Basic.lean,Mathlib/CategoryTheory/Profunctor/Comp.lean |
3 |
20 |
['adamtopaz', 'dagurtomas', 'github-actions', 'mathlib-dependent-issues', 'mathlib-splicebot', 'robin-carlier'] |
riccardobrasca assignee:riccardobrasca |
3-1748 3 days ago |
51-54402 51 days ago |
99-17224 99 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 |
38 |
['ADedecker', 'ChiCubed', 'github-actions', 'themathqueen', 'wwylele'] |
ocfnash assignee:ocfnash |
3-1744 3 days ago |
18-83202 18 days ago |
69-11325 69 days |
| 40973 |
certik author:certik |
feat: multiplicative automatic continuity on ℝ |
This PR adds the multiplicative companion of the existing additive automatic-continuity theorem `AddMonoidHom.continuous_of_measurable`. See the git commit descriptions for all the details.
Depends on https://github.com/leanprover-community/mathlib4/pull/40976.
AI usage disclosure: I used Claude Opus 4.8 to create the theorems and proofs in my own Lean project, then extracted them into this PR since I think they are general purpose and would be useful for other people. I iterated on the proofs until they are as simple as I could get them. I am new to Lean, so if something should be reworked, please let me know. Lean is amazing, I was able to use it to prove various theorems and check my derivations. This is my little contribution back to the project. |
t-measure-probability
LLM-generated
new-contributor
|
159/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/Haar/AutomaticContinuity.lean |
2 |
10 |
['certik', 'github-actions', 'mathlib-merge-conflicts', 'wwylele'] |
RemyDegenne assignee:RemyDegenne |
3-1743 3 days ago |
57-65673 57 days ago |
60-2958 60 days |
| 41523 |
Harmenszoon author:Harmenszoon |
feat(Analysis/SpecialFunctions): add the Chase-Lovett diagonal reduction for binEntropy |
This PR adds the two-variable entropy inequality of Chase and Lovett ([arXiv:2211.11689](https://arxiv.org/abs/2211.11689), Lemma 2.2): for `x, y ∈ [0, 1]`,
```
x * binEntropy y + y * binEntropy x ≤ 2 * sqrt (x * y) * binEntropy (sqrt (x * y))
```
in a new leaf file `Mathlib/Analysis/SpecialFunctions/BinaryEntropy/Diagonal.lean`, together with its `negMulLog (1 - ·)` half (`Real.mul_negMulLog_one_sub_add_le`) and a `private` concavity layer for the comparison function `η u = exp u * negMulLog (1 - exp (-u))`. Two entries are added to `docs/references.bib` (Chase–Lovett arXiv:2211.11689, Boppana arXiv:2301.09664).
**Motivation.** This inequality is the reusable reduction step behind the recent entropic lower bounds for Frankl's union-closed sets conjecture (Gilmer; Alweiss–Huang–Sellke; Chase–Lovett; Sawin; Boppana): it reduces two-variable inequalities of Boppana type `K * (x * h y + y * h x) ≤ h (x * y)` to one-variable inequalities `2 * K * t * h t ≤ h (t ^ 2)`. `Mathlib/Analysis/SpecialFunctions/BinaryEntropy.lean` currently contains calculus basics for `binEntropy` only, and no inequality of this family; I checked current master for collisions before opening this. A kernel-checked downstream application — a complete Lean formalization of the union-closed lower bound at the constant `(3 - √5)/2` that uses exactly this reduction — is public at https://github.com/demonstrandum-research/artifacts (the `UCFrankl` development), which I maintain.
**Proof shape** (one page of calculus): substituting `x = exp (-u)`, the inequality becomes midpoint concavity of `η` on `[0, ∞)`; the `negMulLog (x * y)` parts of the two sides cancel exactly, the `negMulLog (1 - ·)` parts transfer to `η` via the identity `x * η (-log x) = negMulLog (1 - x)`, and `η'' ≤ 0` reduces to `log t ≤ t - 1`. Stating `η` through `negMulLog` absorbs the `0 * log 0` boundary behaviour, so no separate edge-case argument is needed at `x = 1`.
**Design notes / open questions for reviewers.**
- Hypotheses are stated as `0 ≤ x`/`x ≤ 1` pairs rather than `x ∈ Set.Icc 0 1`; happy to convert if the membership form is preferred.
- The `η`-machinery is `private`; it could be exposed if judged independently useful.
- File placement: a new `BinaryEntropy/Diagonal.lean` leaf keeps the import footprint of `BinaryEntropy.lean` unchanged (the proof needs `Analysis.Convex.Deriv`); merging into the main file is also possible if preferred.
- Naming: `mul_binEntropy_add_mul_binEntropy_le` / `mul_negMulLog_one_sub_add_le` follow the conclusion-based convention but I am glad to rename.
**AI disclosure** (per the [mathlib AI policy](https://leanprover-community.github.io/contribute/index.html)): the Lean code in this PR was generated by LLM agents (Anthropic's Claude, running in an agent pipeline that I operate under the name Demonstrandum), and was then compile-verified against mathlib and reviewed by me. This PR description was also prepared with AI assistance and reviewed by me. The proof is elementary calculus as summarized above; I understand it and take full responsibility for the contribution. I am adding the `LLM-generated` label as required. The downstream `UCFrankl` development linked above (kernel-checked, axioms `[propext, Classical.choice, Quot.sound]` only) is the evidence that the lemma carries real weight in applications.
---
- [x] depends on: nothing
|
t-analysis
LLM-generated
new-contributor
|
227/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/BinaryEntropy/Diagonal.lean,docs/references.bib |
3 |
5 |
['Harmenszoon', 'Timeroot', 'github-actions'] |
urkud assignee:urkud |
3-1742 3 days ago |
45-76048 45 days ago |
45-76036 45 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
|
102/0 |
Mathlib.lean,Mathlib/Topology/Covering/FundamentalGroupCircle.lean |
2 |
2 |
['github-actions'] |
ADedecker assignee:ADedecker |
3-1741 3 days ago |
37-50885 37 days ago |
37-50977 37 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'] |
dagurtomas assignee:dagurtomas |
3-1736 3 days ago |
5-51161 5 days ago |
7-66236 7 days |
| 42972 |
EtienneC30 author:EtienneC30 |
feat: the Dirac measure and Measure.real |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
10/0 |
Mathlib/MeasureTheory/Measure/Dirac.lean |
1 |
1 |
['github-actions'] |
urkud assignee:urkud |
3-1735 3 days ago |
3-61003 3 days ago |
3-60991 3 days |
| 42979 |
EtienneC30 author:EtienneC30 |
chore: rename measurable_pi_lambda to Measurable.of_eval |
Also rename `aemeasurable_pi_lambda` to `AEMeasurable.of_eval`. Zulip topic: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Renaming.20measurable_pi_lambda.20to.20Measurable.2Eof_eval/with/617676093
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
50/53 |
Mathlib/Analysis/Fourier/AddCircleMulti.lean,Mathlib/Analysis/Matrix/MeasurableSpace.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/ContinuousLinearMap.lean,Mathlib/MeasureTheory/Constructions/Cylinders.lean,Mathlib/MeasureTheory/Constructions/Pi.lean,Mathlib/MeasureTheory/Constructions/Projective.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/MeasureTheory/MeasurableSpace/Embedding.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/PolarCoord.lean,Mathlib/Probability/BrownianMotion/Basic.lean,Mathlib/Probability/IdentDistribIndep.lean,Mathlib/Probability/Independence/Basic.lean,Mathlib/Probability/Independence/BoundedContinuousFunction.lean,Mathlib/Probability/Independence/Process/Basic.lean,Mathlib/Probability/Kernel/IonescuTulcea/Maps.lean,Mathlib/Probability/Process/FiniteDimensionalLaws.lean |
17 |
2 |
['gaetanserre', 'github-actions'] |
urkud assignee:urkud |
3-1734 3 days ago |
3-45970 3 days ago |
3-45958 3 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'] |
nobody |
3-1068 3 days ago |
55-81414 55 days ago |
55-81483 55 days |
| 31135 |
kckennylau author:kckennylau |
feat(RingTheory): is localization iff is localization on saturation |
In this PR we show that `A` is a localization of `R` on the submonoid `S` iff it is so on the saturation of `S`.
Crucially, the saturation of `S` is precisely the elements that become a unit in `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.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on 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: #31132
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
53/0 |
Mathlib.lean,Mathlib/RingTheory/Localization/Saturation.lean |
2 |
20 |
['alreadydone', 'chrisflav', 'github-actions', 'kckennylau', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] |
nobody |
3-846 3 days ago |
46-53421 46 days ago |
93-53555 93 days |
| 41312 |
EtienneC30 author:EtienneC30 |
feat: the indicator of a set is a Bernoulli 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]
-->
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
large-import
maintainer-merge
|
36/0 |
Mathlib/Probability/Distributions/Bernoulli.lean |
1 |
6 |
['CoolRmal', 'EtienneC30', 'FrankieNC', 'github-actions'] |
nobody |
3-844 3 days ago |
51-61707 51 days ago |
51-62201 51 days |
| 42994 |
WenrongZou author:WenrongZou |
feat(LocalField): instance `Finite (𝒪[K] ⧸ 𝓂[K] ^ n)` |
For a nonarchimedean local field `K`, we prove an instance `Finite (𝒪[K] ⧸ 𝓂[K] ^ n)`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-number-theory |
6/0 |
Mathlib/NumberTheory/LocalField/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
2-79270 2 days ago |
2-79876 2 days ago |
2-79864 2 days |
| 42996 |
deancureton author:deancureton |
feat(MeasureTheory): absolute continuity preserved by Lipschitz postcomposition |
Adds `LipschitzOnWith.comp_absolutelyContinuousOnInterval` and its global `LipschitzWith` specialization.
---
[](https://gitpod.io/from-referrer/) |
t-measure-probability
new-contributor
|
23/0 |
Mathlib/MeasureTheory/Function/AbsolutelyContinuous.lean |
1 |
3 |
['github-actions'] |
nobody |
2-75377 2 days ago |
2-76048 2 days ago |
2-76036 2 days |
| 41127 |
TJHeeringa author:TJHeeringa |
feat(Analysis/InnerProductSpace/Reproducing): add sum of two RKHS |
Add the sum of two RKHS. This space comes equipped with the norm
$$
\\|f\\|^2 = \inf \\{ \\|f_1\\| + \\|f_1\\| : f_1\in H_1, f_2\in H_2 \text{ s.t. } f(x) = f_1(x) + f_2(x) \quad \forall x\in X \\}
$$
This quotient norm is realized by defining the space as the quotient of `WithLp 2 (H × H₁)` with the kernel of the map `WithLp 2 (H × H₁) →L[𝕜] (X → V), (f,g) ↦ ↑f + ↑f` and defining the `coeCLM` of the RKHS accordingly.
---
I am doubting whether `generator` and `sumSpace` are good names.
This sum of two RKHs `sumSpace` is not a direct sum or a Hilbert sum, but the sum from interpolation theory. Once that is properly implemented the construction of `sumSpace` should likely be altered accordingly.
#### AI usage:
I used AI for a previous attempt in which I defined `sumSpace` as
```lean4
abbrev sumSpace := (generator H H₁).range
```
instead of
```lean4
abbrev sumSpace := WithLp 2 (H × H₁) ⧸ (generator H H₁).ker
```
However, that lead to instance collisions.
Additionally, I used an LLM to help with the proof of `linearIsometry_surjective`.
#### Mathematical details
These can be found in e.g. theorem 5.4 of Paulsen, Vern I. and Raghupathi, Mrinal,
*An introduction to the theory of reproducing kernel Hilbert spaces*.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
- [x] depends on: #41149
[](https://gitpod.io/from-referrer/)
|
t-analysis |
338/1 |
Mathlib.lean,Mathlib/Analysis/InnerProductSpace/Reproducing.lean,Mathlib/Analysis/InnerProductSpace/Reproducing/Operations.lean,Mathlib/Analysis/InnerProductSpace/Reproducing/Operations2.lean |
4 |
16 |
['Maldooor', 'TJHeeringa', 'github-actions', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
2-68096 2 days ago |
2-68749 2 days ago |
33-4359 33 days |
| 41618 |
joelriou author:joelriou |
chore(Order/Relseries): cleaning up a proof |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
14/45 |
Mathlib/Order/RelSeries.lean |
1 |
4 |
['Ruben-VandeVelde', 'Whysoserioushah', 'chenson2018', 'github-actions'] |
nobody |
2-64840 2 days ago |
42-40313 42 days ago |
43-45345 43 days |
| 42998 |
WenrongZou author:WenrongZou |
feat(Padics): add an instance `IsValuativeTopology ℚ_[p]` |
In this PR, we prove an instance `IsValuativeTopology ℚ_[p]`. Then we have the instance `IsNonarchimedeanLocalField ℚ_[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-number-theory
large-import
|
35/1 |
Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/Padics/ValuativeRel.lean |
2 |
1 |
['github-actions'] |
nobody |
2-61551 2 days ago |
2-62802 2 days ago |
2-62790 2 days |
| 42833 |
YaelDillies author:YaelDillies |
feat(Combinatorics/SimpleGraph/Connnectivity): efficient decidability instances |
Currently, the `DecidableRel G.Reachable` instance provided by mathlib works by enumerating *all* walks from `u` to `v` of length less than `Fintype.card V`, which takes time exponential in the number of vertices. Currently also, the `Decidable G.Preconnected` and `Decidable G.Connected` instances build on the `DecidableRel G.Reachable` one and suffer from the same exponential slowdown.
This PR reworks those instances to use breadth-first search, which is polynomial in the number of vertices. Since the BFS doesn't depend on the starting vertex, we wrap it in `Trunc` to cut down an unnecessary factor of `Fintype.card V` (this makes a difference only if the graph is NOT preconnected).
This showed up in FormalConjectures because a contributor used `decide +native` to prove that some concrete graph on 11 vertices was connected. Their proof timed out while I was bumping the repo to v4.30.
Also make `G` implicit in a bunch of non-rewriting lemmas.
From FormalConjectures
Generated by Claude Opus following my idea, largely rewritten manually afterwards.
Assisted-by: Claude Opus 4.8
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
LLM-generated
|
138/31 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Tutte.lean |
2 |
1 |
['github-actions'] |
nobody |
2-59888 2 days ago |
7-30024 7 days ago |
7-30187 7 days |
| 43002 |
mathlib-splicebot author:mathlib-splicebot |
feat: lemmas about HasLaw |
The law of a random variable is given by the push-forward measure.
Lemmas related to integration.
---
This PR was automatically created from PR #42999 by @EtienneC30 via a [review comment](https://github.com/leanprover-community/mathlib4/pull/42999#discussion_r3828838113) by @EtienneC30. |
t-measure-probability |
24/0 |
Mathlib/Probability/HasLaw.lean |
1 |
1 |
['github-actions'] |
nobody |
2-58048 2 days ago |
2-58737 2 days ago |
2-58725 2 days |
| 41533 |
YaelDillies author:YaelDillies |
refactor: notation for `EventuallyEq` on `Set` |
Introduce definitions `EventuallyEqSet`, `EventuallySubset` as the `Set` versions of `EventuallyEq` and `EventuallyLE`. Make the notations `x =ᶠ[l] y`, `x ≤ᶠ[l] y` `x =ᵐ[μ] y`. elaborate to either the `Set` or functiion version depending on the expected type of the argument.
In mathlib, we currently use the function predicates for sets, which abuses the `Set α := α → Prop` defeq and which will break once we make `Set` a one-field structure.
Generated by Claude Opus, reviewed line by line by myself, with a large amount of manual edits and further Claude prompting to polish the angles.
Assisted-by: Claude Opus 4.8
---
~~Note that some simp lemmas aren't in simp normal form anymore because `(· ∈ someSetConstruction)` simplifies already. We might want to make the above into actual definitions instead of notation to avoid this.~~ EDIT: I have done so
We will want to do the same for `EventuallyConst`, but it is more subtle since it doesn't have notation we could hide the difference in, and I do not what the correct name for the `Set` definition would be.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
t-measure-probability
maintainer-merge
tech debt
|
721/341 |
Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/FDeriv/Congr.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/VectorField.lean,Mathlib/Dynamics/Ergodic/Conservative.lean,Mathlib/Dynamics/Ergodic/Ergodic.lean,Mathlib/Dynamics/Ergodic/RadonNikodym.lean,Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/ContMDiff/Defs.lean,Mathlib/Geometry/Manifold/IsManifold/ExtChartAt.lean,Mathlib/Geometry/Manifold/LocalInvariantProperties.lean,Mathlib/Geometry/Manifold/MFDeriv/Basic.lean,Mathlib/Geometry/Manifold/VectorField/LieBracket.lean,Mathlib/MeasureTheory/Covering/LiminfLimsup.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/AEMeasurable.lean,Mathlib/MeasureTheory/Function/ConvergenceInMeasure.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/AEStronglyMeasurable.lean,Mathlib/MeasureTheory/Group/Action.lean,Mathlib/MeasureTheory/Group/FundamentalDomain.lean,Mathlib/MeasureTheory/Integral/Bochner/Set.lean,Mathlib/MeasureTheory/Integral/CurveIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/Layercake.lean,Mathlib/MeasureTheory/MeasurableSpace/EventuallyMeasurable.lean,Mathlib/MeasureTheory/Measure/AEMeasurable.lean,Mathlib/MeasureTheory/Measure/Basic.lean,Mathlib/MeasureTheory/Measure/Comap.lean,Mathlib/MeasureTheory/Measure/ContinuousPreimage.lean,Mathlib/MeasureTheory/Measure/EverywherePos.lean,Mathlib/MeasureTheory/Measure/Interval.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/NullMeasurable.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Finite.lean,Mathlib/MeasureTheory/OuterMeasure/AE.lean,Mathlib/MeasureTheory/OuterMeasure/BorelCantelli.lean,Mathlib/NumberTheory/WellApproximable.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/CardinalInter.lean,Mathlib/Order/Filter/CountableInter.lean,Mathlib/Order/Filter/Defs.lean,Mathlib/Order/Filter/Finite.lean,Mathlib/Order/Filter/IndicatorFunction.lean,Mathlib/Probability/BorelCantelli.lean,Mathlib/Probability/Distributions/Fernique.lean,Mathlib/Probability/Process/LocalProperty.lean,Mathlib/Topology/Baire/BaireMeasurable.lean,Mathlib/Topology/ContinuousOn.lean,Mathlib/Topology/NhdsWithin.lean,Mathlib/Topology/OpenPartialHomeomorph/Continuity.lean,Mathlib/Topology/Separation/Basic.lean |
55 |
20 |
['EtienneC30', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'mcdoll', 'themathqueen'] |
urkud assignee:urkud |
2-54278 2 days ago |
2-56613 2 days ago |
37-56511 37 days |
| 42973 |
gdies author:gdies |
feat(CategoryTheory/Adhesive): coslices of adhesive categories are adhesive |
---
Adding the coslice case in adhesive2004 proposition (ii):
If **C** is adhesive then so are **C**/C and C/**C** for any object C of **C**
done as a (sub)project at the Utrecht summers school 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/)
|
t-category-theory
new-contributor
|
6/4 |
Mathlib/CategoryTheory/Adhesive/Over.lean |
1 |
3 |
['github-actions', 'mathlib-bors'] |
nobody |
2-53863 2 days ago |
2-54690 2 days ago |
3-47043 3 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 |
2-53023 2 days ago |
2-55970 2 days ago |
7-10939 7 days |
| 39703 |
YaelDillies author:YaelDillies |
chore: create a `Basic` top folder |
Move a select few folders from `Logic` to a new `Basic` folder.
The goal is to finally move the material misplaced in the `Data` and `Logic` folder and to clarify the various expectations of each folder. Ultimately:
* the `Basic` folder will be about basic predicates on types and basic mathematical types not fitting in any other folder;
* the `Data` folder will be about data structures, instead of the current mix of data structures and basic mathematical types not fitting in any other folder;
* the `Logic` folder will be about advanced logic results not fitting in either `ModelTheory` or `SetTheory`, instead of the current mix of basic predicates on types and advanced logic results.
Many more files (~1000) could be moved, so I will do it in several PRs. Not all files should move to `Basic`. Some files should go to `Algebra.Order` instead (eg `Data.Nat.Lattice`) and some should be straight out deprecated (eg `Data.Analysis`).
[Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/345428-mathlib-reviewers/topic/Basic.20folder/with/597151406)
---
This PR stems from discussions at the MI retreat 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/)
|
file-removed
t-data
|
176/98 |
Counterexamples/Girard.lean,Mathlib.lean,Mathlib/Algebra/CharZero/Defs.lean,Mathlib/Algebra/Group/Irreducible/Defs.lean,Mathlib/Algebra/Group/Nat/Units.lean,Mathlib/Algebra/Group/Pi/Basic.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Group/WithOne/Defs.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/Module/Presentation/Free.lean,Mathlib/Algebra/Module/Projective.lean,Mathlib/Algebra/NeZero.lean,Mathlib/Basic/Denumerable.lean,Mathlib/Basic/ExistsUnique.lean,Mathlib/Basic/IsEmpty.lean,Mathlib/Basic/IsEmpty/Basic.lean,Mathlib/Basic/IsEmpty/Defs.lean,Mathlib/Basic/Logic/Basic.lean,Mathlib/Basic/Logic/Lemmas.lean,Mathlib/Basic/Nonempty.lean,Mathlib/Basic/Nontrivial/Basic.lean,Mathlib/Basic/Nontrivial/Defs.lean,Mathlib/Basic/README.md,Mathlib/Basic/Unique.lean,Mathlib/Basic/UnivLE.lean,Mathlib/CategoryTheory/EssentiallySmall.lean,Mathlib/CategoryTheory/Limits/Types/Colimits.lean,Mathlib/CategoryTheory/Limits/Types/Limits.lean,Mathlib/CategoryTheory/UnivLE.lean,Mathlib/Combinatorics/Quiver/Path.lean,Mathlib/Computability/Primrec/Basic.lean,Mathlib/Data/Bool/Basic.lean,Mathlib/Data/FunLike/Basic.lean,Mathlib/Data/Int/Order/Basic.lean,Mathlib/Data/List/Basic.lean,Mathlib/Data/List/GetD.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/MaxPowDiv.lean,Mathlib/Data/Option/Basic.lean,Mathlib/Data/Quot.lean,Mathlib/Data/README.md,Mathlib/Data/Rat/Denumerable.lean,Mathlib/Data/TwoPointing.lean,Mathlib/Lean/Meta/CongrTheorems.lean,Mathlib/LinearAlgebra/Matrix/Defs.lean,Mathlib/Logic/Embedding/Basic.lean,Mathlib/Logic/Equiv/Defs.lean,Mathlib/Logic/Equiv/List.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/Logic/README.md,Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/RelClasses.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/Coprime/Basic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Defs.lean,Mathlib/SetTheory/Cardinal/UnivLE.lean,Mathlib/SetTheory/ZFC/Rank.lean,Mathlib/Tactic/CancelDenoms/Core.lean,Mathlib/Tactic/CongrExclamation.lean,Mathlib/Tactic/ITauto.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean,Mathlib/Tactic/Nontriviality/Core.lean,Mathlib/Tactic/Push.lean,Mathlib/Tactic/Subsingleton.lean,Mathlib/Tactic/Tauto.lean,Mathlib/Testing/Plausible/Testable.lean,Mathlib/Topology/Order/UpperLowerSetTopology.lean,MathlibTest/Linter/PrivateModule/ImportOnly.lean,scripts/autolabel.lean,scripts/noshake.json |
72 |
46 |
['SnirBroshi', 'TwoFX', 'YaelDillies', 'github-actions', 'grunweg', 'j-loreaux', 'joneugster', 'mathlib-merge-conflicts', 'themathqueen'] |
eric-wieser and j-loreaux assignee:eric-wieser assignee:j-loreaux |
2-51210 2 days ago |
2-54651 2 days ago |
73-19301 73 days |
| 42993 |
D-Thomine author:D-Thomine |
feat(UniformIntegrable): definitions of `UnifTail` and `UnifLpTail` |
This PR mainly **adds two definitions** to `MeasureTheory.Function.UniformIntegrable`:
* `UnifTail f μ`: the measure of the set `{ x | M ≤ ‖f i x‖ₑ }` vanishes when `M` goes to infinity, uniformly in `i`.
* `UnifLpTail f p μ`: the `ELpNorm` carried by the set `{ x | M ≤ ‖f i x‖ₑ }` vanishes when `M` goes to infinity, uniformly in `i`.
`UnifLpTail` gives a name to a statement which appears repeatedly in the file:
`∀ ε > 0, ∃ C : ℝ≥0, ∀ i, eLpNorm ({ x | C ≤ ‖f i x‖₊ }.indicator (f i)) p μ ≤ ε`
`UnifTail` is exactly the difference between `UnifLpTail` and `UnifIntegrable`, so having this notion at hand will be extremely helpful to manage the passage from one statement to the other.
In addition, `UniformIntegrable` **becomes a structure**, and the related lemmas such as `UniformIntegrable.unifIntegrable`, which became redundant, are removed.
The boundedness in `UniformIntegrable` is expressed more directly, without coercions. This is the point which required to fix some downstream files (and to deprecate `Submartingale.eLpNorm_stoppedAbove_le'`, whose sole purpose was to manage a coercion which does not exist anymore). Note that the use of `< ∞` instead of `≠ ∞` in hypotheses is a voluntary one: this helps passing arguments from one lemma to another, and these hypotheses are usually proven by working with inequalities anyway.
I have also **added some basic lemmas** about `UnifTail` and `UnifLpTail`. I have slightly changed the structure of the file, so that the basic lemmas for all four objects defined in the file are in the same section.
On a more minor side, I have **removed an hypothesis** in `UnifSpace.add`, and **renamed** `UnifIntegrable.mk_iff` to `unifIntegrable_mk_iff` since the statement did not benefit from the dot notation.
These new notions do not see much use for the remainder of `MeasureTheory.Function.UniformIntegrable` for now. This depends on other PRs, and will be done later so as keep each PR at a manageable level.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
302/177 |
Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/Probability/Kernel/Disintegration/Density.lean,Mathlib/Probability/Martingale/BorelCantelli.lean,Mathlib/Probability/Martingale/Convergence.lean,Mathlib/Probability/Process/Filtration.lean |
6 |
1 |
['github-actions'] |
nobody |
2-51123 2 days ago |
2-51123 2 days ago |
2-51111 2 days |
| 41310 |
SnirBroshi author:SnirBroshi |
feat(Algebra/Group/Subgroup/ZPowers/Lemmas): generalize from pairs to `Finset`s |
Generalize `closure_eq_zmultiples`/`zmultiples_sup`/`zmultiples_inf` from pairs to `Finset`s. For `s : Finset ℤ`:
- `closure (s : Set ℤ) = zmultiples (s.gcd id)`
- `s.sup zmultiples = zmultiples (s.gcd id)`
- `s.inf zmultiples = zmultiples (s.lcm id)`
---
If the large imports aren't okay we could have a new `ZPowers/Finset.lean` or `ZPowers/FinsetLemmas.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: #41261
[](https://gitpod.io/from-referrer/)
|
t-algebra
large-import
maintainer-merge
label:t-algebra$ |
28/3 |
Mathlib/Algebra/Group/Subgroup/ZPowers/Lemmas.lean |
1 |
8 |
['Ruben-VandeVelde', 'github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mattrobball'] |
nobody |
2-48707 2 days ago |
46-72634 46 days ago |
46-74743 46 days |
| 42938 |
vasnesterov author:vasnesterov |
feat(Tactic/ComputeAsymptotics/Multiseries): introduce `MultiseriesExpansion.leadingMonomial` |
* Introduce `MultiseriesExpansion.leadingMonomial`
* Prove `IsEquivalent_leadingMonomial`: if a multiseries is "well-formed", then its function is asymptotically equivalent to its leading monomial.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
This is a part of the `compute_asymptotics` tactic (#28291).
[](https://gitpod.io/from-referrer/)
|
t-meta |
317/1 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Monomial/LeadingMonomial.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Trimming.lean |
4 |
2 |
['github-actions', 'joneugster'] |
nobody |
2-47415 2 days ago |
4-50376 4 days ago |
4-50485 4 days |
| 42939 |
vasnesterov author:vasnesterov |
feat(Tactic/ComputeAsymptotics/Multiseries/Operations): define `mulConst` |
* Define `mulConst` (multiplication by a constant) operation on multiseries and `neg` as `mulConst (-1)`.
* Prove structural lemmas on its relationship with `toFun` and `seq`.
* Prove that they respect `Sorted` and `Approximates` predicates.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
This is a part of the `compute_asymptotics` tactic (#28291).
[](https://gitpod.io/from-referrer/)
|
t-meta |
257/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Operations/MulConst.lean |
3 |
2 |
['github-actions', 'joneugster'] |
nobody |
2-47410 2 days ago |
4-50491 4 days ago |
4-50479 4 days |
| 42637 |
kim-em author:kim-em |
ci: keep the nightly toolchain when merging master into nightly-testing |
This PR restores `lean-toolchain` from `nightly-testing` after the daily merge of `master`, so that a toolchain bump on `master` no longer drags `nightly-testing` onto a stable release.
Since #40257 the merge resolves conflicts in favour of `master`. That is the right call for source files, but `lean-toolchain` is the one file where `master` must never win: on every day that `master` bumps its toolchain the two sides conflict, and `nightly-testing` silently ends up on the release toolchain. It happened this morning, where the merge replaced `nightly-2026-08-10` with `v4.33.0` and the build then failed with `Unknown identifier ite_eq_right` and friends in `Mathlib/Data/Nat/BinaryRec.lean`:
https://github.com/leanprover-community/mathlib4-nightly-testing/actions/runs/31447213372
`nightly_bump_and_merge.yml` puts a nightly back within three hours, so the cost is a wasted CI run and a spurious failure report on Zulip rather than anything lasting, but there is no reason to pay it. The merge runs with `--no-commit`, so `HEAD` is still the tip of `nightly-testing` and `git checkout HEAD -- lean-toolchain` is enough; it runs before `lake update` so that the dependency resolution also happens against the nightly.
🤖 Prepared with Claude Code |
CI
easy
maintainer-merge
|
9/1 |
.github/workflows/nightly_merge_master.yml |
1 |
2 |
['github-actions', 'joneugster'] |
joneugster assignee:joneugster |
2-44719 2 days ago |
12-64211 12 days ago |
12-64199 12 days |
| 39113 |
sgouezel author:sgouezel |
feat: integration by parts for stieltjes vector measures |
Consider two bounded variation functions `f` and `g`. We give several versions of the integration by parts formula `∫_a^b f dg = f b * g b - f a * g a - ∫_a^b g df`.
Note that the formula as written is wrong in case of discontinuities : one should use left limits and right limits, and pay attention as to whether `a` and `b` are included in the integrals.
Therefore, we give 4 versions, on `Icc` and `Ioc` and `Ico` and `Ioo`. They all follow from a formula on a general set `s`, where the boundary contribution is the integral on `s` of the vector measure associated to the bounded variation function `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: #39614
- [x] depends on: #39615
- [x] depends on: #39616
- [x] depends on: #39652
- [x] depends on: #39862
- [x] depends on: #40100
- [x] depends on: #40101
- [x] depends on: #40102
- [x] depends on: #40103
- [x] depends on: #40104
- [x] depends on: #40106
- [x] depends on: #40187
- [x] depends on: #40188
- [x] depends on: #40198
- [x] depends on: #40285
- [x] depends on: #40330
- [x] depends on: #40384
- [x] depends on: #40602
- [x] depends on: #40603
- [x] depends on: #40808
- [x] depends on: #40811
- [x] depends on: #41079
- [x] depends on: #41080
- [x] depends on: #41099
- [x] depends on: #41153
- [x] depends on: #41154
- [x] depends on: #41155
- [x] depends on: #41195
- [x] depends on: #41209
- [x] depends on: #41386
- [x] depends on: #41418
- [x] depends on: #41421
- [x] depends on: #41546
- [x] depends on: #41891
- [x] depends on: #42841
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
404/12 |
Mathlib.lean,Mathlib/Analysis/BoundedVariation.lean,Mathlib/MeasureTheory/VectorMeasure/BoundedVariation.lean,Mathlib/MeasureTheory/VectorMeasure/IntegrationByParts.lean,Mathlib/MeasureTheory/VectorMeasure/Prod.lean |
5 |
28 |
['EtienneC30', 'github-actions', 'lua-vr', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'sgouezel'] |
EtienneC30 assignee:EtienneC30 |
2-43699 2 days ago |
2-43699 2 days ago |
3-55414 3 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 |
2-42025 2 days ago |
2-42382 2 days ago |
2-42370 2 days |
| 42713 |
martinwintermath author:martinwintermath |
feat(Logic/Function): define predicate for constant function |
Adds
* `Function.IsConst`
as a canonical way to express that a function is constant without specifying its value.
Currently, this can be expressed by any of
* `∀ x y, f x = f y`
* `∃ b, f = const α b`
* `∃ b, ∀ x, f x = b`
We propose to use the first one since it also works for functions where both domain and codomain are empty.
We also add
```lean4
theorem eq_const_iff {f : α → β} {b : β} : f = const α b ↔ ∀ a : α, f a = b
```
to Function.Basic.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-logic
maintainer-merge
|
124/0 |
Mathlib.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/Logic/Function/Const.lean |
3 |
40 |
['SnirBroshi', 'YaelDillies', 'YanYablonovskiy', 'gasparattila', 'github-actions', 'martinwintermath', 'themathqueen'] |
nobody |
2-41457 2 days ago |
2-45163 2 days ago |
10-23046 10 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
|
202/86 |
Cache/Main.lean,Cache/Query.lean,Cache/Requests.lean,Cache/Test.lean,Cache/Warning.lean |
5 |
1 |
['github-actions'] |
nobody |
2-39666 2 days ago |
26-23708 26 days ago |
26-23696 26 days |
| 42703 |
artie2000 author:artie2000 |
refactor(Data/SetLike): make second parameter of `IsConcreteLE` implicit |
* Make second argument of `IsConcreteLE` implicit
`IsConcreteLE` takes a `SetLike A B` typeclass, in which `B`, being an `outParam`, is determined by `A`. Therefore we do not need to pass `B` explicitly.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
16/16 |
Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/AlgebraicTopology/SimplicialComplex/Basic.lean,Mathlib/Data/SetLike/Basic.lean,Mathlib/Order/Atoms.lean |
4 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
2-38134 2 days ago |
2-41028 2 days ago |
7-43416 7 days |
| 42904 |
grunweg author:grunweg |
fix(autolabel): auto-label PRs touching bors.toml as CI |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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
easy
maintainer-merge
|
1/0 |
scripts/autolabel.lean |
1 |
2 |
['github-actions', 'joneugster'] |
joneugster assignee:joneugster |
2-37632 2 days ago |
5-42388 5 days ago |
5-42376 5 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 |
2-34567 2 days ago |
5-9543 5 days ago |
5-9816 5 days |
| 42901 |
grunweg author:grunweg |
doc: remove suggestion of self-introduction from new contributor welcome comment |
I'm not sure we always want to encourage this (and it's mostly not followed in practice anyway).
---
- [x] depends on: #42900
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
RFC
CI
maintainer-merge
|
1/2 |
.github/workflows/label_new_contributor.yml |
1 |
5 |
['github-actions', 'grunweg', 'joneugster', 'mathlib-dependent-issues'] |
joneugster assignee:joneugster |
2-34199 2 days ago |
4-44925 4 days ago |
4-45780 4 days |
| 42562 |
SnirBroshi author:SnirBroshi |
chore(Tactic/Linter/TextBased/UnicodeLinter): update abbrevations |
Ran the script on the latest commit (`5a25e6a`) of `vscode-lean4`, updated the dates and the commit reference.
https://github.com/leanprover/vscode-lean4/commit/9ca2a826c07ab07ea2a79e0d66105de0b7e33349 added auto-closing abbrevations for existing characters which only caused stuff to shift around. The three new characters are `❰❱` from https://github.com/leanprover/vscode-lean4/commit/7af7fa92a3883aeedb350e79a7925ca78c430658 and `⦂` from https://github.com/leanprover/vscode-lean4/commit/00a05fe2a7076e431cad7af1ad24cd14452145d0.
Also verified that all 97 chars in `othersInMathlib` are still in use.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
maintainer-merge
|
82/82 |
Mathlib/Tactic/Linter/TextBased/UnicodeLinter.lean |
1 |
3 |
['github-actions', 'joneugster'] |
joneugster assignee:joneugster |
2-34012 2 days ago |
15-72207 15 days ago |
15-72195 15 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'] |
nobody |
2-32845 2 days ago |
3-36455 3 days ago |
3-36443 3 days |
| 39915 |
mkaratarakis author:mkaratarakis |
feat(Analysis/CStarAlgebra): complex-analytic lemmas for Perron–Frobenius |
Add `Mathlib/Analysis/CStarAlgebra/PerronFrobenius.lean`: complex-analytic tools used in the spectral-dominance chain.
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 |
268/0 |
Mathlib.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Analysis/Complex/Arg.lean,Mathlib/Analysis/Complex/Norm.lean,Mathlib/Analysis/Complex/TriangleEquality.lean,Mathlib/Analysis/Convex/TriangleEquality.lean,Mathlib/LinearAlgebra/Ray.lean |
7 |
7 |
['github-actions', 'themathqueen', 'wwylele'] |
nobody |
2-30155 2 days ago |
2-34725 2 days ago |
2-44856 2 days |
| 42666 |
artie2000 author:artie2000 |
refactor(Data/SetLike): generalise `IsConcreteLE` |
* Generalise `IsConcreteLE` typeclass from `SetLike` to `Membership`
* Generalise the API where possible
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
65/40 |
Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/AlgebraicTopology/SimplicialComplex/Basic.lean,Mathlib/Data/SetLike/Basic.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean |
4 |
1 |
['github-actions'] |
nobody |
2-30150 2 days ago |
2-34804 2 days ago |
2-40406 2 days |
| 38821 |
Jun2M author:Jun2M |
feat(Data/List): rotation of sublist is sublist of rotation |
This PR proves `(∃ L₁ : List α, L ~r L₁ ∧ L₁ <+ L') ↔ (∃ L₂ : List α, L <+ L₂ ∧ L₂ ~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-data |
10/0 |
Mathlib/Data/List/Rotate.lean |
1 |
7 |
['SnirBroshi', 'Vierkantor', 'eric-wieser', 'github-actions', 'plp127'] |
Vierkantor assignee:Vierkantor |
2-28658 2 days ago |
28-1914 28 days ago |
114-19068 114 days |
| 42804 |
j-loreaux author:j-loreaux |
refactor: use `Set.Pairwise s Commute` for commutativity of subobject closures |
Given the subobject `closure s` generated by a set `s`, to ensure `IsMulCommutative s`, Mathlib assumed `∀ x ∈ s, ∀ y ∈ s, x * y = y * x`, but it suffices to prove `s.Pairwise Commute` and this gives us access to some API. This PR switches those hypotheses.
For star algebras, we switch from `∀ x ∈ s, ∀ y ∈ s, x * y = y * x` and `∀ x ∈ s, ∀ y ∈ s, x * star y = star y * x` to a collection of three hypotheses: `∀ x ∈ s, IsStarNormal x`, `s.Pairwise Commute` and `s.Pairwise (Commute · <| ·)`. Even though this is three separate hypotheses, we claim that in practice these are the more natural conditions (except in the trivial case when the ambient algebra is commutative, but that's not the point of `IsMulCommutative` anyway).
Moreover, we use Fuglede's theorem to conclude `s.Pairwise (Commute · <| star ·)` from the other two hypotheses in C⋆-algebras.
Along the way, we add a variety of convenience lemmas for `Set.Pairwise`, including its various interactions with commutativity and `star`. In particular, we characterize `(s ∪ star s).Pairwise Commute` as the conjunction of `s.Pairwise Commute`, `s.Pairwise (Commute · <| ·)` and `∀ x ∈ s, IsStarNormal x`. This allows for a few simplifications.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
126/88 |
Counterexamples/GrothendieckPower.lean,Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Lattice.lean,Mathlib/Algebra/Group/Center.lean,Mathlib/Algebra/HierarchyDesign.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Algebra/Star/Subalgebra.lean,Mathlib/Analysis/CStarAlgebra/Fuglede.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/GroupTheory/Subgroup/Centralizer.lean,Mathlib/GroupTheory/Submonoid/Centralizer.lean,Mathlib/GroupTheory/Subsemigroup/Centralizer.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean |
18 |
6 |
['eric-wieser', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts'] |
nobody |
2-28225 2 days ago |
2-39670 2 days ago |
6-79920 6 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 |
2-26843 2 days ago |
4-15391 4 days ago |
4-15379 4 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 |
2-26797 2 days ago |
2-30691 2 days ago |
45-73759 45 days |
| 41521 |
BryceT233 author:BryceT233 |
chore(Algebra/Order/Antidiag): relax an assumption in the definition of `HasAntidiagonal` |
This PR relaxes the typeclass requirement for `HasAntidiagonal` from `AddMonoid A` to `Add A`, which is useful for defining multiplications in `TotalMonoidAlgebra`(#41472).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
maintainer-merge
label:t-algebra$ |
16/17 |
Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Algebra/Order/Antidiag/Tendsto.lean |
2 |
8 |
['BryceT233', 'eric-wieser', 'github-actions', 'leanprover-radar', 'themathqueen'] |
nobody |
2-26073 2 days ago |
7-2281 7 days ago |
45-78559 45 days |
| 42982 |
lua-vr author:lua-vr |
chore(Module/WeakDual): outdated metrizability todos in docstring |
`WeakDual.metrizable_of_isCompact` and `WeakDual.isSeqCompact_closedBall` were added in #31656 (the latter appears in the module docstring) but the todos remained.
While at it, also added a "main result" bullet list for `WeakDual.metrizable_of_isCompact`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
easy
|
4/4 |
Mathlib/Analysis/Normed/Module/WeakDual.lean |
1 |
2 |
['github-actions', 'lua-vr'] |
nobody |
2-24540 2 days ago |
3-41014 3 days ago |
3-41002 3 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 |
335/0 |
Mathlib.lean,Mathlib/Combinatorics/Quiver/Cyclic.lean |
2 |
2 |
['github-actions', 'or4nge19'] |
nobody |
2-23724 2 days ago |
2-24792 2 days ago |
88-51577 88 days |
| 43028 |
j-loreaux author:j-loreaux |
feat(Analysis/CStarAlgebra): `@[congr]` lemmas for `cfc` |
This PR adds variants of `cfc_congr`/`cfcₙ_congr` that use the `∀ x ∈ _, ...` spelling instead of `Set.EqOn` and marks them `@[congr]` so that they can be used with `simp`, `conv` and `congr!`. There is some minor fallout, but I think it is net positive (and by some margin > ε).
The lemmas `cfc_zero` and `cfcₙ_zero` are no longer marked `@[simp]` because it can now prove them.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis |
71/65 |
Mathlib/Analysis/CStarAlgebra/ApproximateUnit.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Instances.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/NonUnital.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/RealImaginaryPart.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Restrict.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/CStarAlgebra/Unitary/Connected.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/ExpLog/Basic.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/PosPart/Basic.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/IntegralRepresentation.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/RingInverseOrder.lean |
13 |
1 |
['github-actions'] |
nobody |
2-22186 2 days ago |
2-23336 2 days ago |
2-23633 2 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 |
18/0 |
Mathlib/Data/List/Count.lean |
1 |
3 |
['chenson2018', 'github-actions', 'mkaratarakis'] |
nobody |
2-20448 2 days ago |
2-23671 2 days ago |
76-9165 76 days |
| 41132 |
owenpkent author:owenpkent |
feat(Analysis/SpecialFunctions/Gamma/Digamma): reflection, iterated recurrence, and duplication for digamma |
This PR adds three standard identities for `Complex.digamma` to `Mathlib/Analysis/SpecialFunctions/Gamma/Digamma.lean`:
- the iterated recurrence `digamma (s + n) = digamma s + ∑ k ∈ Finset.range n, (s + k)⁻¹` (`digamma_apply_add_nat`),
- the reflection formula `digamma (1 - s) - digamma s = π * cot (π * s)` (`digamma_reflection`),
- the duplication (doubling) formula `digamma (2 * s) = (1 / 2) * (digamma s + digamma (s + 1 / 2)) + log 2` (`digamma_two_mul`).
These are the natural digamma companions to results already in Mathlib:
- the single-step recurrence `Complex.digamma_apply_add_one` (the iterated form is its finite-induction closure);
- the Gamma reflection formula `Complex.Gamma_mul_Gamma_one_sub` (the digamma reflection is its logarithmic derivative);
- the Legendre duplication formula `Complex.Gamma_mul_Gamma_add_half` (the digamma duplication is its logarithmic derivative).
The proofs use only existing Mathlib API (the `Gamma_mul_Gamma_*` product formulas together with the `logDeriv` calculus lemmas). No new imports are required: the dependencies are already transitively available in `Digamma.lean`. Each new theorem has a docstring and is listed under the module's `## Main statements`.
The three theorems build green against current master, and `#print axioms` for each is exactly `[propext, Classical.choice, Quot.sound]` (no `sorry`, no `native_decide`).
---
**AI use disclosure** (per Mathlib's contribution guidelines): these identities were formalized in a personal research project with the help of an AI coding agent (Claude Code). The agent assisted in developing the original proofs and in porting them onto current Mathlib master (transplanting the verified proofs, adapting the imports to the new module system, and confirming the build is green with `#print axioms` clean). The underlying results are standard and the proofs use 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-analysis
new-contributor
LLM-generated
|
104/0 |
Mathlib/Analysis/SpecialFunctions/Gamma/Digamma.lean |
1 |
14 |
['SnirBroshi', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'owenpkent'] |
j-loreaux assignee:j-loreaux |
2-19048 2 days ago |
2-19048 2 days ago |
21-26093 21 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 |
2-18279 2 days ago |
2-78508 2 days ago |
2-78496 2 days |
| 42945 |
paulcadman author:paulcadman |
feat(Tactic/ModuleNF): add module_nf, a normalization tactic for module expressions |
add `module_nf`, a normalization tactic companion to `match_scalars` and `module`. It normalizes module expressions at targeted locations or at the goal and can be used non-terminally. It reuses the `module` tactic's [`parse`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Tactic/Module.html#Mathlib.Tactic.Module.parse) function to perform normalization.
`module_nf` works under functions `≤`, conjunctions etc:
```lean4
import Mathlib.Tactic.ModuleNF
variable {R M : Type*} [CommRing R] [AddCommGroup M] [Module R M]
example (f : M → M) (a b : R) (x : M) : f (a • x + b • x) = f ((a + b) • x) := by
module_nf
example (s : Set M) (a : R) (x v w : M) (h : x + a • (v + w) ∈ s) :
x + (a • v + a • w) ∈ s := by
module_nf at h ⊢
exact h
example [Preorder M] (a b : R) (x y : M) (h : (a + b) • x ≤ y) : a • x + b • x ≤ y := by
module_nf
exact h
example (a b : R) (x y : M) (h₁ : (a + b) • x = 0) (h₂ : (a + b) • y = 0) :
(a • x + b • x = 0) ∧ (b • y + a • y = 0) := by
module_nf
exact ⟨h₁, h₂⟩
```
Contexts involving scalar towers are also supported:
```lean4
example {S : Type*} [CommRing S] [Algebra R S] [Module S M] [IsScalarTower R S M]
(a b : R) (u : S) (x y : M) (P : M → Prop) (h : P (b • x + y)) :
P (a • x + u • y + (1 - u) • y - (a - b) • x) := by
module_nf
exact h
```
A `with` form of the tactic can be used to specify a common scalar ring directly:
```lean4
example [AddCommGroup M] (x : M) (P : M → Prop) (h : P ((2 : ℤ) • x)) :
P (x + x) ∧ P ((2 : ℤ) • x) := by
module_nf with ℤ
exact ⟨h, h⟩
```
## Other changes
The module tactic's `match_scalars` preprocessing is changed to clear the `* 1` factors added by module's parser.
Non-throwing variants of `RingNF.evalExpr` and `Abel.evalExpr` are added.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
-->
- [ ] depends on: #42770
[](https://gitpod.io/from-referrer/) |
t-meta |
625/42 |
Mathlib.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/Analysis/Calculus/UniformLimitsDeriv.lean,Mathlib/Analysis/Complex/Poisson.lean,Mathlib/Analysis/InnerProductSpace/OfNorm.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/Ray.lean,Mathlib/LinearAlgebra/RootSystem/Finite/Nondegenerate.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Module.lean,Mathlib/Tactic/ModuleNF.lean,Mathlib/Tactic/Ring/RingNF.lean,Mathlib/Util/AtLocation.lean,MathlibTest/AtLocation.lean,MathlibTest/ModuleNF.lean,MathlibTest/module.lean |
16 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
2-15335 2 days ago |
2-18287 2 days ago |
2-24737 2 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 |
2-11444 2 days ago |
13-57992 13 days ago |
13-57981 13 days |
| 43019 |
tb65536 author:tb65536 |
refactor(Analysis/Normed/Unbundled/SpectralNorm): extract, generalize, and golf `algNormFromConst` |
This PR extracts `algNormFromConst` 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]
-->
- [x] depends on: #43022
[](https://gitpod.io/from-referrer/)
|
t-analysis |
26/12 |
Mathlib/Analysis/Normed/Unbundled/AlgebraNorm.lean,Mathlib/Analysis/Normed/Unbundled/RingSeminorm.lean,Mathlib/Analysis/Normed/Unbundled/SeminormFromConst.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean |
4 |
3 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
2-11031 2 days ago |
2-11083 2 days ago |
2-11072 2 days |
| 41936 |
homeowmorphism author:homeowmorphism |
feat(Group Theory/Presentation): define group presentations |
`Group.Presentation` packages a chosen presentation of a given group `G`: a generating family together with relators (words `r`, each read as `r = 1`) whose generated normal subgroup is exactly the kernel of `FreeGroup.lift val : FreeGroup α →* G`. This the complementary to `PresentedGroup rels`, which constructs the group presented by a set of generators and relations.
---
- [x] depends on: #42437
PR #33233 by @jazzits previously was made to implement this feature but I am making a new PR due to inactivity. I have credited the original author.
Claude Fable was very helpful in making this API. Originally, I had it generate the API, but then I used my [mathlib-api](https://github.com/homeowmorphism/mathlib-api) and [pair-programming](https://github.com/homeowmorphism/pair-programming) skills to rewrite it with more thoughtful design decisions (some of the original code remained when it was deemed of sufficiently high quality).
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
142/2 |
Mathlib.lean,Mathlib/GroupTheory/Generators.lean,Mathlib/GroupTheory/Presentation.lean |
3 |
32 |
['github-actions', 'homeowmorphism', 'kbuzzard', 'mathlib-bors', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'tb65536'] |
tb65536 assignee:tb65536 |
2-11014 2 days ago |
2-13912 2 days ago |
17-31063 17 days |
| 42986 |
tb65536 author:tb65536 |
feat(Topology/Separation/Hausdorff): add `tendsto_nhds_unique_of_forall` |
This PR adds the variant `tendsto_nhds_unique_of_forall` and switches a few occurrences of `tendsto_nhds_unique` to a more appropriate variant (either `tendsto_nhds_unique_of_forall` or `tendsto_nhds_unique_of_eventuallyEq`).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology |
35/47 |
Counterexamples/TopologistsSineCurve.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Continuity.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/Complex/Liouville.lean,Mathlib/Analysis/InnerProductSpace/l2Space.lean,Mathlib/Analysis/Normed/Unbundled/SeminormFromConst.lean,Mathlib/Analysis/SpecialFunctions/ArithmeticGeometricMean.lean,Mathlib/MeasureTheory/Integral/CircleAverage.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/MeasureTheory/Measure/Stieltjes.lean,Mathlib/Topology/Separation/Hausdorff.lean |
12 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
2-9259 2 days ago |
2-11834 2 days ago |
3-19235 3 days |
| 42196 |
ADedecker author:ADedecker |
feat: `IsLocallyClosedAt` predicate |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
245/49 |
Mathlib/Data/Set/Basic.lean,Mathlib/Order/Lattice.lean,Mathlib/Topology/Defs/Filter.lean,Mathlib/Topology/LocallyClosed.lean |
4 |
3 |
['ADedecker', 'github-actions', 'themathqueen'] |
themathqueen assignee:themathqueen |
2-9122 2 days ago |
2-12435 2 days ago |
19-3895 19 days |
| 41554 |
felixpernegger author:felixpernegger |
chore: remove `noncomputable section` when only theorems in file |
Removes `noncomputable section` whenever no def/abbrev/instances appear in the section.
This is not the most important change, but prepares for a more general cleanup around `noncomputable`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
|
10/245 |
Mathlib/Algebra/GroupWithZero/Range.lean,Mathlib/Algebra/MvPolynomial/Coeff.lean,Mathlib/Algebra/Polynomial/Degree/Domain.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/Degree/Monomial.lean,Mathlib/Algebra/Polynomial/Degree/Support.lean,Mathlib/Algebra/Polynomial/Degree/Units.lean,Mathlib/Algebra/Polynomial/Eval/Algebra.lean,Mathlib/Algebra/Polynomial/Eval/Irreducible.lean,Mathlib/Algebra/Polynomial/Splits.lean,Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/BoxIntegral/DivergenceTheorem.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/Comp.lean,Mathlib/Analysis/Calculus/ContDiff/Deriv.lean,Mathlib/Analysis/Calculus/ContDiff/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/RCLike.lean,Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Bilinear.lean,Mathlib/Analysis/Calculus/FDeriv/Comp.lean,Mathlib/Analysis/Calculus/FDeriv/Congr.lean,Mathlib/Analysis/Calculus/FDeriv/Const.lean,Mathlib/Analysis/Calculus/FDeriv/Equiv.lean,Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/Analysis/Calculus/FDeriv/RestrictScalars.lean,Mathlib/Analysis/Calculus/ParametricIntegral.lean,Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/Analysis/Complex/ReImTopology.lean,Mathlib/Analysis/Fourier/PoissonSummation.lean,Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Analysis/InnerProductSpace/Continuous.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Analysis/SpecialFunctions/ExpDeriv.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/PoissonSummation.lean,Mathlib/Analysis/SpecialFunctions/JapaneseBracket.lean,Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean,Mathlib/Analysis/SpecialFunctions/Pow/Asymptotics.lean,Mathlib/Analysis/SpecialFunctions/Pow/Continuity.lean,Mathlib/Analysis/SpecialFunctions/Pow/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/ArctanDeriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Complex.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/ComplexDeriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/InverseDeriv.lean,Mathlib/CategoryTheory/Limits/EssentiallySmall.lean,Mathlib/CategoryTheory/Limits/Preserves/Opposites.lean,Mathlib/CategoryTheory/Sites/CoverPreserving.lean,Mathlib/Data/Finsupp/PointwiseSMul.lean,Mathlib/Data/W/Cardinal.lean,Mathlib/Dynamics/Ergodic/Conservative.lean,Mathlib/FieldTheory/AxGrothendieck.lean,Mathlib/FieldTheory/MvRatFunc/Rank.lean,Mathlib/FieldTheory/PurelyInseparable/Tower.lean,Mathlib/Geometry/Euclidean/Angle/Oriented/RightAngle.lean,Mathlib/Geometry/Euclidean/Angle/Sphere.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/RightAngle.lean,Mathlib/Geometry/Euclidean/Basic.lean,Mathlib/Geometry/Euclidean/Triangle.lean,Mathlib/Geometry/Manifold/MFDeriv/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/FDeriv.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean,Mathlib/Geometry/Manifold/MFDeriv/UniqueDifferential.lean,Mathlib/Geometry/Manifold/SmoothApprox.lean,Mathlib/Geometry/Manifold/SmoothEmbedding.lean,Mathlib/LinearAlgebra/Charpoly/ToMatrix.lean,Mathlib/LinearAlgebra/Dimension/ErdosKaplansky.lean,Mathlib/LinearAlgebra/Finsupp/Span.lean,Mathlib/LinearAlgebra/LinearIndependent/Basic.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/FiniteField.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Minpoly.lean,Mathlib/LinearAlgebra/Matrix/Diagonal.lean,Mathlib/LinearAlgebra/PerfectPairing/Restrict.lean,Mathlib/LinearAlgebra/RootSystem/Finite/Lemmas.lean,Mathlib/LinearAlgebra/RootSystem/GeckConstruction/Relations.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Indicator.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Indicator.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Monotonicity.lean,Mathlib/MeasureTheory/Function/LpSeminorm/SMul.lean,Mathlib/MeasureTheory/Function/SpecialFunctions/RCLike.lean,Mathlib/MeasureTheory/Integral/ExpDecay.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/ContDiff.lean,Mathlib/MeasureTheory/Integral/Layercake.lean,Mathlib/MeasureTheory/Integral/Prod.lean,Mathlib/MeasureTheory/MeasurableSpace/Pi.lean,Mathlib/MeasureTheory/MeasurableSpace/Prod.lean,Mathlib/MeasureTheory/Measure/Decomposition/RadonNikodym.lean,Mathlib/MeasureTheory/Measure/Portmanteau.lean,Mathlib/MeasureTheory/OuterMeasure/Basic.lean,Mathlib/NumberTheory/AbelSummation.lean,Mathlib/NumberTheory/LSeries/SumCoeff.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/Summable.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/IsBoundedAtImInfty.lean |
124 |
6 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts'] |
nobody |
2-8995 2 days ago |
2-11005 2 days ago |
41-27052 41 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/Data/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 |
13 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'tb65536'] |
nobody |
2-7789 2 days ago |
2-11601 2 days ago |
14-81926 14 days |
| 42245 |
plp127 author:plp127 |
chore(FreeRing): use `MonoidAlgebra ℤ` instead of `FreeAbelianGroup` |
Replace `FreeAbelianGroup` with `MonoidAlgebra ℤ` in the definition of `FreeRing` and `FreeCommRing`. The intent is to deprecate and remove the multiplication on `FreeAbelianGroup` so it can be `@[to_additive]`-ized.
---
- [x] depends on: #42239
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
large-import
|
79/83 |
Mathlib/RingTheory/FreeCommRing.lean,Mathlib/RingTheory/FreeRing.lean,Mathlib/SetTheory/Cardinal/Free.lean |
3 |
3 |
['github-actions', 'mathlib-dependent-issues', 'vlad902'] |
nobody |
2-6688 2 days ago |
2-10146 2 days ago |
2-11206 2 days |
| 43003 |
kim-em author:kim-em |
feat(Tactic/NormNum): run simp's default simprocs inside norm_num |
This PR makes `norm_num` run simp's default simprocs.
`norm_num` builds its own `Simp.Methods` rather than going through `Simp.mkDefaultMethods`, and passes an empty `SimprocsArray` to `Simp.preDefault`/`Simp.postDefault`. Simprocs were only folded into `preDefault`/`postDefault` in Lean v4.6.0; in v4.4 and v4.5 those functions had signature `(e) (discharge?)` and knew nothing about simprocs, and `norm_num` did not pick them up by any other route either. So no simproc has ever fired inside `norm_num`, which is surprising given that `norm_num` is documented as using `simp` to simplify the goal.
The user-visible consequence is that `norm_num` cannot do arithmetic in any type whose arithmetic is implemented by simprocs rather than by `norm_num` extensions or simp lemmas. All of the following fail on master and succeed here:
```lean
example : (2 : Fin 7) + 6 = 1 := by norm_num
example : (3 : Fin 7) * 5 = 1 := by norm_num
example : (2 : Fin 7) < 5 := by norm_num
example : (⟨3, by omega⟩ : Fin 7) = 3 := by norm_num
example : (5 : UInt8) + 3 = 8 := by norm_num
example : (200 : UInt8) + 100 = 44 := by norm_num
example : (5 : Int8) * 3 = 15 := by norm_num
example : (0xff : BitVec 8) &&& 0x0f = 0x0f := by norm_num
```
The simproc set is threaded through `getSimpContext`, `deriveSimp` and `methods`, mirroring core's `mkSimpContext`: plain `norm_num` gets `Simp.getSimprocs`, `norm_num only` gets the empty set exactly as `simp only` does, and `norm_num1` is unaffected since it does not call `simp` at all. `NormNum.discharge` keeps its current simproc-free behaviour by default, so `reduce_mod_char` is unchanged.
🤖 Prepared with Claude Code
|
t-meta |
31/18 |
Mathlib/Tactic/CancelDenoms/Core.lean,Mathlib/Tactic/NormNum/Core.lean,MathlibTest/Tactic/NormNum/Basic.lean |
3 |
4 |
['github-actions', 'kim-em', 'leanprover-radar'] |
nobody |
2-3683 2 days ago |
2-3683 2 days ago |
2-3671 2 days |
| 39387 |
marcelolynch author:marcelolynch |
feat(Tactic/Linter): add superfluousExpose linter |
Dual of `privateModule`: lints against modules with `@[expose] public section` where no declaration needs its body visible downstream. Suggests removing the `@[expose]` modifier. The removal hides the bodies of the section and does not change downstream typechecking.
A declaration 'benefits from exposure' iff its body matters to downstream typechecking: plain `def`, plain `inductive`, `@[match_pattern]` def, `@[irreducible]` def / `irreducible_def`, `@[reducible]` def, or a `@[to_additive]`-decorated def. A hidden body of a `@[reducible]` def breaks even same-file public `rfl` proofs, so only `abbrev` carries its own exposure. Theorems, abbrevs, classes, structures, instances, `unsafe`/`partial` defs, compiler-generated auxiliaries, projections, matchers, and notation-generated parser entries do not.
The linter is a stateful linter (leanprover/lean4#14357). It tracks maximal regions of commands whose scope is public and carries the `expose` attribute, and it classifies the declarations of each command while the scopes of that command are still active. Two properties follow. A file with several expose sections gets one verdict per section, so one exposed-body `def` no longer masks a sibling section. And `scoped instance` and `local instance` declarations classify correctly, which an end-of-file check cannot do: after the `end`, those declarations look like plain defs.
The linter is conservative: known limitations produce a false negative, never a false positive that would break downstream builds. The module docstring lists them. The main case is tactic-implementation defs, such as the defs behind `elab` or `simproc_decl`, which count as ordinary defs.
Includes test files covering positive and negative cases, one file per case. A companion cleanup applies the suggestions to mathlib: #39388.
Relevant Zulip thread: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Removing.20unnecessary.20.60.40.5Bexpose.5D.60/with/595180230
|
t-linter
LLM-generated
|
1063/0 |
Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/SuperfluousExpose.lean,MathlibTest/Linter/SuperfluousExpose.lean,MathlibTest/Linter/SuperfluousExpose/Negative_ExposeInBlockComment.lean,MathlibTest/Linter/SuperfluousExpose/Negative_ExposeOnNonPublicSection.lean,MathlibTest/Linter/SuperfluousExpose/Negative_Inductive.lean,MathlibTest/Linter/SuperfluousExpose/Negative_InstPrefixedDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_IrreducibleDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_MatchPattern.lean,MathlibTest/Linter/SuperfluousExpose/Negative_NoExposeSection.lean,MathlibTest/Linter/SuperfluousExpose/Negative_PlainDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_ReducibleDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_TermPrefixedDef.lean,MathlibTest/Linter/SuperfluousExpose/Negative_ToAdditive.lean,MathlibTest/Linter/SuperfluousExpose/Positive_AbbrevOnly.lean,MathlibTest/Linter/SuperfluousExpose/Positive_ClassOnly.lean,MathlibTest/Linter/SuperfluousExpose/Positive_LocalInstance.lean,MathlibTest/Linter/SuperfluousExpose/Positive_MultiSection.lean,MathlibTest/Linter/SuperfluousExpose/Positive_Notation.lean,MathlibTest/Linter/SuperfluousExpose/Positive_PartialDef.lean,MathlibTest/Linter/SuperfluousExpose/Positive_Recursors.lean,MathlibTest/Linter/SuperfluousExpose/Positive_ScopedInstance.lean,MathlibTest/Linter/SuperfluousExpose/Positive_TheoremOnly.lean,MathlibTest/Linter/SuperfluousExpose/Positive_UnsafeDef.lean |
25 |
3 |
['eric-wieser', 'github-actions', 'marcelolynch'] |
thorimur assignee:thorimur |
2-1746 2 days ago |
12-11183 12 days ago |
12-11171 12 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 |
14 |
['TheGoedeDoel', 'chrisflav', 'github-actions'] |
joneugster assignee:joneugster |
2-1745 2 days ago |
73-9769 73 days ago |
82-9801 82 days |
| 40182 |
Thmoas-Guan author:Thmoas-Guan |
feat(RingTheory): add lemma for span rank of maximal ideal under surjection |
In this PR, we added the following result : for noetherian local ring `(R, m, k)`, the span rank of maximal ideal of `R/I` adding `k` dimension of `I+m^2/m^2` is equal to span rank of maximal ideal of `R`.
This would be useful when dealing with regular local ring and quotient within `m^2`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
52/0 |
Mathlib/Algebra/Module/SpanRankOperations.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/LocalRing/ResidueField/Basic.lean |
3 |
1 |
['github-actions'] |
joneugster assignee:joneugster |
2-1744 2 days ago |
81-44674 81 days ago |
81-44662 81 days |
| 40197 |
plp127 author:plp127 |
feat: valuation of an algebraic element |
We prove that if `x` is algebraic over `K` then there exists some `n ≠ 0` such that the valuation of `x` raised to the `n`-th power is equal to the valuation of some element of `K`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory |
67/0 |
Mathlib.lean,Mathlib/RingTheory/Valuation/Algebraic.lean |
2 |
1 |
['github-actions'] |
joneugster assignee:joneugster |
2-1743 2 days ago |
81-21002 81 days ago |
81-20990 81 days |
| 40579 |
jcreinhold author:jcreinhold |
feat(Algebra/Category/Ring): preserve limits to CommMonCat |
Adds the missing instance saying that forgetting a commutative ring to its multiplicative commutative monoid preserves limits. |
t-algebra
new-contributor
label:t-algebra$ |
7/0 |
Mathlib/Algebra/Category/Ring/Limits.lean |
1 |
8 |
['felixpernegger', 'github-actions', 'jcreinhold'] |
joneugster assignee:joneugster |
2-1742 2 days ago |
70-55057 70 days ago |
70-63519 70 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 |
2-1740 2 days ago |
34-84398 34 days ago |
34-84386 34 days |
| 42186 |
marcelolynch author:marcelolynch |
refactor(Tactic/Linter/MinImports): make the minImports linter stateful |
This PR rewrites the `minImports` linter as a stateful linter (leanprover/lean4#14357). The linter behavior does not change. The existing tests in `MathlibTest/MinImports.lean` pass without changes. The PR adds one test section that sets `Elab.async true` explicitly: it checks that the linter accumulates imports correctly under parallel elaboration, and that `#import_bumps` keeps parallel elaboration on.
The old implementation kept the cumulative imports in a global `IO.Ref`. The ref is not safe under parallel elaboration. For this reason, `#import_bumps` set `Elab.async false` for the rest of the file. The new implementation keeps the same data in the linter state. The elaborator threads the state through the commands of the file, and the data stays correct under parallel elaboration. `#import_bumps` does not disable `Elab.async` anymore.
Implementation notes:
- The `#reset_min_imports` elaborator does nothing. The linter detects the command syntax and clears its own state. The reset works also when the linter option is off, as before.
- The post phase removes `set_option ... in` prefixes with `withSetOptionIn` from core. leanprover/lean4#14581 generalizes the result type of that function, so it accepts the phase of a stateful linter and not only a `CommandElab`. The generalization ships in v4.34.0-rc1.
- The state type `ImportState` and the linter handle are public. A follow-up can pass the computed import set to the `upstreamableDecl` linter, which computes the same data a second time today.
Measurements on synthetic files (Apple Silicon, 18 cores, medians of 3 runs):
- Proof-heavy file (150 commands, about 120 ms each), linter on: 20.0 s before, 8.8 s after. The old version serialized elaboration of the whole file. The new version keeps elaboration parallel and runs the lint chain next to it.
- The old version with `Elab.async true` emits 123 warning lines instead of the correct 11, because parallel lint tasks race on the ref. The new version emits the correct 11 lines.
- Linter off (2000 trivial commands): the added cost is about 45 microseconds per command.
`registerStatefulLinter` shipped in v4.34.0-rc1
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-linter
LLM-generated
|
149/78 |
Mathlib/Tactic/Linter/MinImports.lean,MathlibTest/MinImports.lean |
2 |
1 |
['github-actions'] |
thorimur assignee:thorimur |
2-1739 2 days ago |
12-12776 12 days ago |
12-12764 12 days |
| 42369 |
SnirBroshi author:SnirBroshi |
fix: remove `DecidableEq Prop` instance |
Convert the `LinearOrder Prop` and `CompleteLinearOrder Prop` instances into `def`s, to avoid providing a global `DecidableEq Prop` instance.
We can convert them back when the decidability fields are removed from `LinearOrder`, but very few places need `LinearOrder Prop` so this seems like a good fix until that happens.
Note that the `DecidableEq Prop` instance causes diamonds with [`instDecidableEqOfIff`](https://leanprover-community.github.io/mathlib4_docs/Init/Core.html#instDecidableEqOfIff).
See [#mathlib4 > leaked `DecidableEq Prop`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/leaked.20.60DecidableEq.20Prop.60/with/564769361)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt |
47/9 |
Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Data/Fintype/Sets.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Nat/Periodic.lean,Mathlib/Order/CompleteLattice/Basic.lean,Mathlib/Order/PropInstances.lean,Mathlib/RingTheory/Norm/Transitivity.lean,Mathlib/Topology/OmegaCompletePartialOrder.lean,Mathlib/Topology/Order/LowerUpperTopology.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Separation/LinearUpperLowerSetTopology.lean,MathlibTest/Instances/DecidableEqProp.lean |
12 |
1 |
['github-actions'] |
JovanGerb assignee:JovanGerb |
2-1738 2 days ago |
21-40232 21 days ago |
21-40220 21 days |
| 42781 |
alreadydone author:alreadydone |
feat(Algebra/Category): `AddCommGrpCat` is monoidal closed |
Co-authored-by: Aristotle (Harmonic) [aristotle-harmonic@harmonic.fun](mailto:aristotle-harmonic@harmonic.fun)
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-category-theory
label:t-algebra$ |
196/43 |
Mathlib.lean,Mathlib/Algebra/Category/Grp/Monoidal.lean,Mathlib/Algebra/Category/Grp/Yoneda.lean,Mathlib/Algebra/Category/Grp/ZModuleEquivalence.lean,Mathlib/CategoryTheory/Monoidal/Closed/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean |
6 |
14 |
['alreadydone', 'github-actions', 'joelriou', 'robin-carlier'] |
kim-em assignee:kim-em |
2-1737 2 days ago |
5-64208 5 days ago |
6-26031 6 days |
| 42992 |
deancureton author:deancureton |
feat(MeasureTheory): basic lemmas for absolute continuity |
Adds congruence and reflexivity lemmas for `AbsolutelyContinuousOnInterval`. (see `UniformContinuousOn.congr` and `IntervalIntegrable.refl`)
---
[](https://gitpod.io/from-referrer/) |
t-measure-probability
new-contributor
|
16/0 |
Mathlib/MeasureTheory/Function/AbsolutelyContinuous.lean |
1 |
2 |
['github-actions'] |
EtienneC30 assignee:EtienneC30 |
2-1736 2 days ago |
3-26 3 days ago |
3-14 3 days |
| 43001 |
EtienneC30 author:EtienneC30 |
feat: lemmas about MemLp |
A function is in the `Lp` space of the sum of two measures if and only if it is in each `Lp` space.
A function is in the `Lp` space of a Dirac mass.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
large-import
t-measure-probability
|
85/0 |
Mathlib/Analysis/MeanInequalitiesPow.lean,Mathlib/MeasureTheory/Function/EssSup.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Defs.lean,Mathlib/Order/LiminfLimsup.lean |
5 |
1 |
['github-actions'] |
kex-y assignee:kex-y |
2-1735 2 days ago |
2-59651 2 days ago |
2-59639 2 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 |
2-846 2 days ago |
23-55763 23 days ago |
23-60521 23 days |
| 43032 |
SnirBroshi author:SnirBroshi |
chore(Order/Fin/Basic): add missing simp lemmas for coercing order embeddings into functions |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-order |
24/1 |
Mathlib/Order/Fin/Basic.lean |
1 |
1 |
['github-actions'] |
nobody |
1-83320 1 day ago |
2-1272 2 days ago |
2-4026 2 days |
| 43035 |
kim-em author:kim-em |
chore: use simp instead of norm_num where simp suffices |
This PR replaces `norm_num` with `simp` at 226 call sites where `simp` already closes the goal on its own.
Most of these are `(by norm_num)` discharging a trivial side condition, for example `pow_le_pow_of_le_one (by norm_num) (by norm_num)`, `pow_pos (by norm_num) _`, or `logb_le_logb (b := 2) (by norm_num) _`. `norm_num` runs the full default simp set and then dispatches its extensions on every subterm it visits, so where `simp` suffices the extension dispatch is pure overhead.
The motivation is readability rather than speed. `!bench` on the first revision reported no significant results overall, so this should be taken as a consistency cleanup, not a performance improvement.
Every site was found mechanically and verified individually: each `norm_num` token was replaced in isolation and the containing file recompiled, and a site was kept only when the file compiled with no errors and no warnings, so linter complaints about now-unused simp arguments count against a site rather than for it. Sites in the four files that do not compile standalone were excluded. The 369 sites where `simp` does not suffice are untouched; those are doing real rational arithmetic such as `(3 / 2 : ℝ) < 2` or `(↑10 ^ 2) = 100`.
`Mathlib/Analysis/Calculus/FDeriv/Measurable.lean` was included in the first revision and has been reverted: `!bench` flagged it at +790.0M (+1.23%) instructions, the only regression in the change.
This is independent of https://github.com/leanprover-community/mathlib4/pull/43003; the same sites are replaceable with or without it, confirmed by running the sweep against both trees.
🤖 Prepared with Claude Code
|
|
216/216 |
Mathlib/Algebra/Homology/AlternatingConst.lean,Mathlib/Algebra/Order/Round.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/Analysis/Analytic/Binomial.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/Complex/ExponentialBounds.lean,Mathlib/Analysis/Complex/Poisson.lean,Mathlib/Analysis/Complex/SqrtDeriv.lean,Mathlib/Analysis/Complex/Tietze.lean,Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/Convex/Cone/Extension.lean,Mathlib/Analysis/Distribution/Sobolev.lean,Mathlib/Analysis/Fourier/AddCircle.lean,Mathlib/Analysis/InnerProductSpace/Defs.lean,Mathlib/Analysis/InnerProductSpace/Symmetric.lean,Mathlib/Analysis/InnerProductSpace/l2Space.lean,Mathlib/Analysis/Normed/Algebra/TrivSqZeroExt.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Analysis/Polynomial/Norm.lean,Mathlib/Analysis/Real/Pi/Bounds.lean,Mathlib/Analysis/Real/Pi/Wallis.lean,Mathlib/Analysis/SpecialFunctions/ArithmeticGeometricMean.lean,Mathlib/Analysis/SpecialFunctions/BinaryEntropy.lean,Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean,Mathlib/Analysis/SpecialFunctions/Complex/Log.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogBounds.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Order.lean,Mathlib/Analysis/SpecialFunctions/Elliptic/Weierstrass.lean,Mathlib/Analysis/SpecialFunctions/Integrability/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean,Mathlib/Analysis/SpecialFunctions/Sigmoid.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Bounds.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/ChebyshevGauss.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Extremal.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/Orthogonality.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/Combinatorics/Enumerative/Catalan/Basic.lean,Mathlib/Combinatorics/Enumerative/Partition/Glaisher.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Lemma.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean,Mathlib/Computability/AkraBazzi/SumTransform.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/Nat/Choose/Central.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Geometry/Euclidean/Angle/Bisector.lean,Mathlib/Geometry/Euclidean/Angle/Oriented/Affine.lean,Mathlib/Geometry/Euclidean/NinePointCircle.lean,Mathlib/Geometry/Euclidean/Similarity.lean,Mathlib/Geometry/Euclidean/Sphere/OrthRadius.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/GroupTheory/CommutingProbability.lean,Mathlib/GroupTheory/Descent.lean,Mathlib/GroupTheory/Exponent.lean,Mathlib/GroupTheory/GroupAction/Jordan.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/Combination.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean,Mathlib/GroupTheory/Perm/Sign.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/Simple.lean,Mathlib/LinearAlgebra/Matrix/FixedDetMatrices.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Projectivization/Collinear.lean,Mathlib/LinearAlgebra/RootSystem/Finite/G2.lean,Mathlib/MeasureTheory/Function/BorelGrowth.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/AbsolutelyContinuousFun.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/NumberTheory/Bernoulli.lean,Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/NumberTheory/LSeries/HurwitzZetaOdd.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/NumberTheory/Modular.lean,Mathlib/NumberTheory/ModularForms/Basic.lean,Mathlib/NumberTheory/ModularForms/Discriminant.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/Basic.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/Transform.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/QExpansion.lean,Mathlib/NumberTheory/ModularForms/LevelOne/DimensionFormula.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/ConvexBody.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/FundamentalCone.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Basic.lean,Mathlib/NumberTheory/NumberField/Discriminant/Basic.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Basic.lean,Mathlib/NumberTheory/Padics/Hensel.lean,Mathlib/NumberTheory/Padics/PadicNumbers.lean,Mathlib/NumberTheory/Pell.lean,Mathlib/NumberTheory/PythagoreanTriples.lean,Mathlib/NumberTheory/Real/GoldenRatio.lean,Mathlib/NumberTheory/Wilson.lean,Mathlib/Probability/Distributions/Beta.lean,Mathlib/Probability/Distributions/Exponential.lean |
124 |
5 |
['github-actions', 'kim-em', 'leanprover-radar'] |
nobody |
1-78112 1 day ago |
1-79884 1 day ago |
1-80942 1 day |
| 43037 |
kim-em author:kim-em |
feat(Tactic/NormNum): add `norm_num_simproc` and use it for `Nat.fib` |
This PR adds a `norm_num_simproc` command that declares a `norm_num` extension and registers it as a simproc in the given simproc sets from a single declaration. We then try this out for `Nat.fib`, converting the existing `norm_num` extension.
```lean
norm_num_simproc [simp, seval] evalNatFib (Nat.fib _) where
eval {_ _} e := ...
```
declares `evalNatFib : NormNumExt` tagged `@[norm_num Nat.fib _]`, plus `evalNatFib.simproc` registered under `[simp, seval]`. Registering in `seval` makes the procedure reachable from `grind`, which previously could not evaluate `Nat.fib` at all. (`simp` couldn't either.)
`NormNum.derive` walks the extension `DiscrTree` and performs no traversal of its own, so an extension is responsible for normalising its own operands via a recursive `derive`. Consumers that call `derive` directly rather than through `simp` (in particular `ring`, `positivity`, `field_simp`'s discharger, `interval_cases`, and `reduce_mod_char`) depend on that. A simproc only rewrites the expression it is handed, so generating the extension from a simproc instead would silently fail for those consumers as soon as the operands are not already literals. `MathlibTest/Tactic/NormNum/NatFib.lean` verifies that we still get this right with `positivity` on `0 < Nat.fib (Nat.sqrt 144)`.
`Nat.fib` is a deliberately conservative first case. `proveNatFib` is fast doubling, so evaluation is O(log n) big-number multiplications: `Nat.fib 50000` takes 126µs and the only thing that grows is the resulting literal, which is the answer the caller asked for. Around 30 further extensions are candidates for the same treatment, but several of them (e.g. `Nat.factorial`, `Nat.Prime`, the Jacobi and Legendre symbols) are not bounded that way, and a globally registered `[simp]` simproc runs on every `simp` call in the library. Those want per-extension `[simp]` versus `[seval]` decisions and their own benchmarks.
🤖 Prepared with Claude Code
|
t-meta |
78/9 |
Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/NormNum/NatFib.lean,MathlibTest/Tactic/NormNum/NatFib.lean |
3 |
1 |
['github-actions'] |
nobody |
1-71212 1 day ago |
1-73493 1 day ago |
1-75833 1 day |
| 42962 |
grunweg author:grunweg |
chore(Archive/Imo): convert to the module system |
Split out from #42242 to keep the diff at smaller size; same motivations as 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/)
|
IMO
tech debt
maintainer-merge
|
359/182 |
Archive/Imo/Imo1959Q1.lean,Archive/Imo/Imo1959Q2.lean,Archive/Imo/Imo1960Q1.lean,Archive/Imo/Imo1960Q2.lean,Archive/Imo/Imo1961Q3.lean,Archive/Imo/Imo1962Q1.lean,Archive/Imo/Imo1962Q4.lean,Archive/Imo/Imo1963Q5.lean,Archive/Imo/Imo1964Q1.lean,Archive/Imo/Imo1969Q1.lean,Archive/Imo/Imo1972Q5.lean,Archive/Imo/Imo1975Q1.lean,Archive/Imo/Imo1977Q6.lean,Archive/Imo/Imo1981Q3.lean,Archive/Imo/Imo1982Q1.lean,Archive/Imo/Imo1982Q3.lean,Archive/Imo/Imo1985Q2.lean,Archive/Imo/Imo1986Q5.lean,Archive/Imo/Imo1987Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo1997Q3.lean,Archive/Imo/Imo1998Q2.lean,Archive/Imo/Imo2000Q2.lean,Archive/Imo/Imo2001Q2.lean,Archive/Imo/Imo2001Q3.lean,Archive/Imo/Imo2001Q4.lean,Archive/Imo/Imo2001Q5.lean,Archive/Imo/Imo2001Q6.lean,Archive/Imo/Imo2002Q3.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2005Q4.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2006Q5.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2010Q5.lean,Archive/Imo/Imo2011Q3.lean,Archive/Imo/Imo2011Q5.lean,Archive/Imo/Imo2013Q1.lean,Archive/Imo/Imo2013Q5.lean,Archive/Imo/Imo2015Q6.lean,Archive/Imo/Imo2019Q1.lean,Archive/Imo/Imo2019Q2.lean,Archive/Imo/Imo2019Q4.lean,Archive/Imo/Imo2020Q2.lean,Archive/Imo/Imo2021Q1.lean,Archive/Imo/Imo2024Q1.lean,Archive/Imo/Imo2024Q2.lean,Archive/Imo/Imo2024Q3.lean,Archive/Imo/Imo2024Q5.lean,Archive/Imo/Imo2024Q6.lean,Archive/Imo/Imo2025Q3.lean |
54 |
7 |
['JovanGerb', 'github-actions', 'grunweg'] |
jsm28 assignee:jsm28 |
1-68227 1 day ago |
3-29844 3 days ago |
3-82749 3 days |
| 42997 |
loefflerd author:loefflerd |
refactor(Analysis/Asymptotics): split long file Defs.lean |
Split this > 1500 line file into:
- a bare-minimum Defs.lean (204 lines)
- Basic.lean: congruence & filter operations (the longest chunk, 534 lines)
- Arith.lean: interaction with `+`, `-`, constants (465)
- Ring.lean: interaction with `*`, `/` (261)
- Prod.lean: cartesian products (171)
Also move the definition of `IsEquivalent` from `Defs.lean` into `AsymptoticEquivalent.lean`, since it is much less used in the library than IsBigO and IsLittleO.
---
_AI disclosure_: An AI agent did much of the grunt work; I (a human being) devised the split and instructed the agent which lemmas to put where, proof-read the output, spruced up the autogenerated file-level docstrings, and made careful verification checks.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them 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-analysis
LLM-generated
|
1458/1333 |
Mathlib.lean,Mathlib/Analysis/Asymptotics/Arith.lean,Mathlib/Analysis/Asymptotics/AsymptoticEquivalent.lean,Mathlib/Analysis/Asymptotics/Basic.lean,Mathlib/Analysis/Asymptotics/Defs.lean,Mathlib/Analysis/Asymptotics/Lemmas.lean,Mathlib/Analysis/Asymptotics/Prod.lean,Mathlib/Analysis/Asymptotics/Ring.lean,Mathlib/Analysis/Asymptotics/Theta.lean,Mathlib/Analysis/Normed/Operator/Asymptotics.lean,Mathlib/Analysis/Normed/Operator/BoundedLinearMaps.lean,Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean |
12 |
2 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
1-66405 1 day ago |
1-67512 1 day ago |
2-46624 2 days |
| 43010 |
loefflerd author:loefflerd |
refactor(Topology/Algebra/Group): split long file Basic.lean |
Split into 7 files:
- `Topology.Algebra.Group.Basic` (438 lines): translations, conjugation, compactness
- `Topology.Algebra.Group.ContinuousDiv` (150 lines): continuous division and subtraction
- `Topology.Algebra.Group.ContinuousInv` (268 lines): continuous inversion and negation
- `Topology.Algebra.Group.Neighborhood` (310 lines): neighborhood filters, bases, open maps
- `Topology.Algebra.Group.Order`(131 lines): ordered topological groups
- `Topology.Algebra.Group.Subgroup` (193 lines): closures and topology of subgroups
- `Topology.Algebra.Group.ZPow` (70 lines): continuity of integer powers
Some material on unit groups (153 lines) was moved to the existing file `Topology.Algebra.Group.Units`. This split achieves significant import reductions for many downstream files.
---
_AI disclosure_: An AI agent did much of the grunt work; I (a human being) devised the split and instructed the agent which lemmas to put where, proof-read the output, spruced up the autogenerated file-level docstrings, and made careful verification checks.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology
tech debt
LLM-generated
|
1255/1118 |
Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/MeanValue.lean,Mathlib/Analysis/Complex/CoveringMap.lean,Mathlib/NumberTheory/Cyclotomic/CyclotomicCharacter.lean,Mathlib/Tactic/ComputeAsymptotics/Lemmas.lean,Mathlib/Topology/Algebra/Field.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Algebra/Group/ContinuousDiv.lean,Mathlib/Topology/Algebra/Group/ContinuousInv.lean,Mathlib/Topology/Algebra/Group/Matrix.lean,Mathlib/Topology/Algebra/Group/Neighborhood.lean,Mathlib/Topology/Algebra/Group/Order.lean,Mathlib/Topology/Algebra/Group/Pointwise.lean,Mathlib/Topology/Algebra/Group/Subgroup.lean,Mathlib/Topology/Algebra/Group/SubmonoidClosure.lean,Mathlib/Topology/Algebra/Group/TopologicalAbelianization.lean,Mathlib/Topology/Algebra/Group/Units.lean,Mathlib/Topology/Algebra/Group/ZPow.lean,Mathlib/Topology/Algebra/InfiniteSum/NatInt.lean,Mathlib/Topology/Algebra/IsOpenUnits.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean,Mathlib/Topology/Algebra/Module/ContinuousLinearMap/Basic.lean,Mathlib/Topology/Algebra/Order/Field.lean,Mathlib/Topology/Algebra/Order/LiminfLimsup.lean,Mathlib/Topology/Algebra/Ring/Basic.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/ContinuousMap/Units.lean,Mathlib/Topology/Instances/AddCircle/Defs.lean |
28 |
1 |
['github-actions'] |
nobody |
1-65574 1 day ago |
2-49485 2 days ago |
2-50512 2 days |
| 43021 |
loefflerd author:loefflerd |
refactor(MeasureTheory/Integral): split long file SetToL1.lean |
Split this file, currently 1500 - ɛ lines, into 5 pieces as follows:
- `Mathlib.MeasureTheory.Integral.SetToL1.SimpleFunc` (338 lines): extension from sets to L¹ simple functions
- `Mathlib.MeasureTheory.Integral.SetToL1.L1` (274 lines): extension to continuous linear maps on L¹
- `Mathlib.MeasureTheory.Integral.SetToL1.Function` (355 lines): extension to integrable functions
- `Mathlib.MeasureTheory.Integral.SetToL1.ChangeMeasure` (287 lines): compatibility with changes of measure
- `Mathlib.MeasureTheory.Integral.SetToL1.DominatedConvergence` (343 lines): convergence and measurability results for the extension
---
_AI disclosure:_ An AI agent did much of the grunt work; I (a human being) devised the split and instructed the agent which lemmas to put where, proof-read the output, spruced up the autogenerated file-level docstrings, and made careful verification checks.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
tech debt
LLM-generated
|
1612/1491 |
Mathlib.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Integral/Bochner/L1.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean,Mathlib/MeasureTheory/Integral/SetToL1/ChangeMeasure.lean,Mathlib/MeasureTheory/Integral/SetToL1/DominatedConvergence.lean,Mathlib/MeasureTheory/Integral/SetToL1/Function.lean,Mathlib/MeasureTheory/Integral/SetToL1/L1.lean,Mathlib/MeasureTheory/Integral/SetToL1/SimpleFunc.lean,Mathlib/MeasureTheory/VectorMeasure/Integral.lean |
10 |
1 |
['github-actions'] |
nobody |
1-65517 1 day ago |
2-35847 2 days ago |
2-35835 2 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 |
1-64733 1 day ago |
15-62200 15 days ago |
15-74835 15 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 |
1-63098 1 day ago |
1-64255 1 day ago |
1-64243 1 day |
| 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 |
333/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 |
26 |
['D-Thomine', 'github-actions', 'mathlib-merge-conflicts', 'mcdoll'] |
mcdoll assignee:mcdoll |
1-59855 1 day ago |
1-62163 1 day ago |
39-6627 39 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
|
318/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 |
17 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'plp127', 'sgouezel'] |
nobody |
1-59760 1 day ago |
2-34373 2 days ago |
2-68137 2 days |
| 40663 |
Vierkantor author:Vierkantor |
feat: solve equalities of instances in `convert` |
This PR sets the `preTransparency` of `convert` to `.instances`, which means it will not run congruence on goals that already are equal at `.instances` transparency. In other words, `convert` (without exclamation) should leave no goals of the form `instA.toC = instB.toC`.
There are 387 (~ 8.5%) additional `convert!` calls in Mathlib that could become `convert` after this change, in addition to 2626 (~ 57,8%) where `convert` already succeeds at reducible transparency. I found no cases where `postTransparency := .instances` would be needed instead.
Full breakdown of stats, according to the test script below and passing the captured log messages to `sort | uniq -c`:
* 2626 `convert` would work
* 1513 `convert!` (i.e. `convert (postTransparency := .default)`) is required
* 387 `convert (preTransparency := .instances)` is required
* 16 cause an error in the test script
The test script consists of replacing the elaborator for `convert` with:
```lean
def sameGoals (gs₁ gs₂ : List MVarId) : MetaM Bool := do
if gs₁.length == gs₂.length then
try
(gs₁.zip gs₂).allM fun (g₁, g₂) => do
-- Check that they agree on the set of free variables, otherwise we get errors.
-- We assume the context in the `convert` case is a subset of the `convert!` case
-- since `convert!` can more agressively unfold and introduce more variables.
if !(← g₁.getDecl).lctx.isSubPrefixOf (← g₂.getDecl).lctx then return false
g₂.withContext <| withReducible <| isDefEq (← g₁.getType) (← g₂.getType)
catch _ => return false
else
return false
elab_rules : tactic
| `(tactic| convert $[!%$expensive]? $cfg $[←%$sym]? $term $[using $n]? $[with $ps?*]?) =>
withMainContext do
let actualConfig ← Convert.elabConfig expensive.isSome cfg
let cheapConfig ← Convert.elabConfig false cfg
let redConfig := { cheapConfig with
preTransparency := .reducible, postTransparency := .reducible }
let preInstConfig := { cheapConfig with
preTransparency := .instances, postTransparency := .reducible }
let postInstConfig := { cheapConfig with
postTransparency := .instances, preTransparency := .reducible }
let patterns := (ps?.getD #[]).toList
let expectedType ← mkFreshExprMVar (mkSort (← getLevel (← getMainTarget)))
let (e, gs) ← elabTermForConvert term expectedType
liftMetaTactic fun g ↦ do
-- Don't retain metavar assignments but do retain messages.
let msgs ← withoutModifyingState do
try
let actualGoals ← g.convert e sym.isSome (n.map (·.getNat)) actualConfig patterns
let redGoals ← g.convert e sym.isSome (n.map (·.getNat)) redConfig patterns
if ← sameGoals actualGoals redGoals then
logInfo m!"convert(reducible)"
else
let preInstGoals ← g.convert e sym.isSome (n.map (·.getNat)) preInstConfig patterns
if ← sameGoals actualGoals preInstGoals then
logInfo m!"convert(preInst)"
else
let postInstGoals ← g.convert e sym.isSome (n.map (·.getNat)) postInstConfig patterns
if ← sameGoals actualGoals postInstGoals then
logInfo m!"convert(postInst)"
else if expensive.isSome then
logInfo m!"convert(expensive)"
else
logInfo m!"convert(error)"
catch e =>
logInfo m!"convert(error {e.toMessageData})"
pure ()
Core.getMessageLog
Core.setMessageLog msgs
return (← g.convert e sym.isSome (n.map (·.getNat)) actualConfig patterns) ++ gs
```
---
Ideally we'd run a benchmark on this PR, or even better one that compares `preTransparency` and `postTransparency`. But we don't have a lot of calls to plain `convert` yet, since I'd want to wait for the migration until #38071 is merged.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-meta |
46/7 |
Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Analysis/SpecialFunctions/Log/InvLog.lean,Mathlib/Geometry/Euclidean/Incenter.lean,Mathlib/NumberTheory/ClassNumber/AdmissibleCardPowDegree.lean,Mathlib/Tactic/Convert.lean,MathlibTest/Tactic/Convert/Instances.lean |
6 |
21 |
['JovanGerb', 'Vierkantor', 'github-actions', 'joneugster', 'leanprover-radar'] |
JovanGerb assignee:JovanGerb |
1-56282 1 day ago |
6-36850 6 days ago |
42-38467 42 days |
| 42443 |
grunweg author:grunweg |
feat: add `mvfderivWithin_eq_fderivWithin` and `mvfderiv_eq_fderiv` |
This provides missing basic API for `mvfderiv`, fully analogous to their `mfderiv` analogues.
Unlike the `mfderiv` versions, the new lemmas are type-correct: they don't implicitly use the identification of the tangent space at a vector space with the vector space. For this reason, we derive the mfderiv lemmas from their mvfderiv versions --- and move them to `MFDeriv/NormedSpace.lean` to do so.
---
Extracted from #42037. As @scholzhannah independently needed the same lemma for her thesis, doing explicit computations for manifolds with boundary, let's PR it now.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-differential-geometry |
36/19 |
Mathlib/Geometry/Manifold/Instances/Icc.lean,Mathlib/Geometry/Manifold/MFDeriv/FDeriv.lean,Mathlib/Geometry/Manifold/MFDeriv/NormedSpace.lean |
3 |
11 |
['github-actions', 'grunweg', 'mathlib-merge-conflicts', 'scholzhannah'] |
scholzhannah assignee:scholzhannah |
1-50912 1 day ago |
2-45813 2 days ago |
3-78170 3 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 |
1-45742 1 day ago |
1-46373 1 day ago |
1-47038 1 day |
| 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'] |
nobody |
1-45741 1 day ago |
1-47659 1 day ago |
1-47647 1 day |
| 42924 |
D-Thomine author:D-Thomine |
chore(MeasureTheory): generalize hypotheses to `NullMeasurableSet` |
This PR generalizes many statements in `Mathlib.MeasureTheory` from `MeasurableSet s` to `NullMeasurableSet s μ`.
This is particularly useful for lemmas around uniform integrability. A few technical statements which existed only to work around issues of measurability are deprecated thanks to this: `MemLp.eLpNorm_indicator_le_of_meas`, `UniformIntegrable.spec'`, `MemLp.uniformIntegrable_of_identDistrib_aux`. This PR is a preliminary (and necessary) work before a much more thorough refactor of `MeasureTheory.Function.UniformIntegrable`.
I have chosen to change the hypotheses in place (generalizing the lemmas) instead of adding variants with the new hypothesis, in order to limit quasi-duplicates. There are some limits to this strategy, and a few lemmas have now both `MeasurableSet` and `NullMeasurableSet` versions:
* either if the `MeasurableSet` version was tagged as `simp`;
* or `integrable_indicator_iff₀`, `setLIntegral_congr_fun_ae₀`, `setLIntegral_congr_fun₀`, `setLIntegral_eq_zero₀`, `lintegral_add_compl₀`, `setLIntegral_compl₀`.
The latter 6 lemmas account for the largest potential downstream effects of this PR. If I did not keep the former versions of these 6 lemmas, this PR would have affected five time as many files, including files in e.g. `Geometry` or `NumberTheory`. It seems reasonable that, for quality of life purposes, we keep a few files with `MeasurableSet` hypotheses which are widely used in settings where measurability is essentially a given.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-measure-probability |
239/211 |
Mathlib/Analysis/Normed/Lp/SmoothApprox.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/AEMeasurable.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean,Mathlib/MeasureTheory/Function/EssSup.lean,Mathlib/MeasureTheory/Function/LpSeminorm/CompareExp.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Indicator.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Monotonicity.lean,Mathlib/MeasureTheory/Function/LpSpace/Indicator.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/AEStronglyMeasurable.lean,Mathlib/MeasureTheory/Function/UnifTight.lean,Mathlib/MeasureTheory/Function/UniformIntegrable.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Integral/PeakFunction.lean,Mathlib/MeasureTheory/Measure/Decomposition/Lebesgue.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/Probability/IdentDistrib.lean,Mathlib/Probability/Kernel/Condexp.lean,Mathlib/Probability/Process/Stopping.lean |
20 |
6 |
['felixpernegger', 'github-actions', 'sgouezel'] |
EtienneC30 and sgouezel assignee:sgouezel assignee:EtienneC30 |
1-42298 1 day ago |
5-2700 5 days ago |
5-2688 5 days |
| 40345 |
imalinowskip author:imalinowskip |
feat(Probability): Cramér-Wold |
|
t-measure-probability
new-contributor
|
114/1 |
Mathlib.lean,Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean,Mathlib/MeasureTheory/Measure/CharacteristicFunction/Basic.lean,Mathlib/MeasureTheory/Measure/LevyConvergence.lean,Mathlib/Probability/CramerWold.lean |
5 |
78 |
['EtienneC30', 'RemyDegenne', 'felixpernegger', 'github-actions', 'imalinowskip', 'mathlib-merge-conflicts', 'wwylele'] |
EtienneC30 assignee:EtienneC30 |
1-42009 1 day ago |
1-42484 1 day ago |
51-2320 51 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/)
cc @or4nge19 for review
|
t-combinatorics |
528/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 |
10 |
['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'mkaratarakis', 'or4nge19'] |
nobody |
1-40920 1 day ago |
1-41470 1 day ago |
1-45393 1 day |
| 36327 |
themathqueen author:themathqueen |
feat(Analysis/CStarAlgebra/Extreme): a C⋆-algebra is unital iff there exists an extreme point in the closed unit ball |
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 |
212/2 |
Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/CStarAlgebra/Extreme.lean |
2 |
21 |
['eric-wieser', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
1-40664 1 day ago |
10-25555 10 days ago |
10-26268 10 days |
| 41827 |
mpacholski author:mpacholski |
feat(LinearAlgebra/TensorProduct): port lifts API from PiTensorProduct |
Port the `lifts` API from `PiTensorProduct` to the binary `TensorProduct` in `Mathlib/LinearAlgebra/TensorProduct/Basic.lean`.
This API provides the necessary machinery to represent any tensor element as a formal sum of pure generators in the free monoid, which is a key prerequisite for defining and proving properties of the binary projective seminorm.
It is a direct reflection of lifts API in `Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean`.
Specifically, add:
- `FreeAddMonoid.toTensorProduct`: proves that the image of a free monoid element is the sum of its pure tensor components.
- `lifts`: defines the set of all valid monoid representations of a given tensor.
- `nonempty_lifts`: proves that every tensor has at least one representation.
- `lifts_zero`, `lifts_add`, `lifts_smul`: establish the algebraic behavior of lifts under addition, zero, and scalar 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/)
- [x] depends on: #41731 |
t-algebra
new-contributor
label:t-algebra$ |
62/0 |
Mathlib/LinearAlgebra/TensorProduct/Basic.lean |
1 |
15 |
['github-actions', 'mathlib-dependent-issues', 'mpacholski', 'themathqueen'] |
nobody |
1-36879 1 day ago |
1-37107 1 day ago |
12-69949 12 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 |
113/0 |
Mathlib.lean,Mathlib/Data/Dyadic/OrderedRing.lean |
2 |
1 |
['github-actions'] |
nobody |
1-36691 1 day ago |
1-42149 1 day ago |
1-42787 1 day |
| 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`
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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/13 |
Mathlib.lean,Mathlib/Order/RelSeries.lean,Mathlib/Order/RelSeries/Lemmas.lean |
3 |
1 |
['github-actions'] |
nobody |
1-32803 1 day ago |
1-77693 1 day ago |
1-79055 1 day |
| 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 |
1-31161 1 day ago |
2-23473 2 days ago |
4-59933 4 days |
| 43046 |
teorth author:teorth |
feat(Analysis/Distribution): compactly supported functions are dense in Schwartz space |
This file adds `SchwartzMap.dense_hasCompactSupport`: the compactly supported
Schwartz functions are dense in `𝓢(E, F)` (for `E` a finite-dimensional real
normed space).
The proof goes through smooth truncation, and some API for such truncations is provided.
----
This material will be used in a forthcoming PR on the prime number theorem.
AI was used to generate initial code, which was then heavily golfed and reviewed by the author. |
t-analysis |
187/0 |
Mathlib.lean,Mathlib/Analysis/Distribution/SchwartzSpace/CompactSupport.lean |
2 |
1 |
['github-actions'] |
nobody |
1-26558 1 day ago |
1-29926 1 day ago |
1-29914 1 day |
| 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 |
1 |
['github-actions'] |
nobody |
1-25843 1 day ago |
2-33502 2 days ago |
2-33490 2 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 |
39/1 |
Mathlib/Algebra/Group/WithOne/Defs.lean,Mathlib/RingTheory/Valuation/Extension.lean |
2 |
7 |
['faenuccio', 'github-actions', 'plp127', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
1-22522 1 day ago |
78-45819 78 days ago |
87-81827 87 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 |
20 |
['YaelDillies', 'felixpernegger', 'github-actions', 'jsm28', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'peakpoint'] |
nobody |
1-21510 1 day ago |
1-26053 1 day ago |
148-1093 148 days |
| 31768 |
Thmoas-Guan author:Thmoas-Guan |
feat(Homology): `Ext` under restrict scalars by `RingEquiv` |
In this PR, we proved that `Ext` commute with ulift functor in `ModuleCat`.
Further more, we provided compatibility with (semi-)linear equiv of general universe.
---
<!-- 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: #39133
[](https://gitpod.io/from-referrer/)
|
t-algebra
t-category-theory
label:t-algebra$ |
97/0 |
Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Category/ModuleCat/Ext/RingEquiv.lean |
3 |
41 |
['Thmoas-Guan', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] |
riccardobrasca assignee:riccardobrasca |
1-21421 1 day ago |
73-76939 73 days ago |
95-34479 95 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 |
1-19432 1 day ago |
1-21565 1 day ago |
1-21553 1 day |
| 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 |
1-19140 1 day ago |
1-20518 1 day ago |
1-71987 1 day |
| 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 |
1-14723 1 day ago |
1-17365 1 day ago |
1-17393 1 day |
| 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 |
1-14542 1 day ago |
1-15695 1 day ago |
36-43809 36 days |
| 39438 |
SnirBroshi author:SnirBroshi |
chore(Order/WellFounded): use `to_dual` |
Creates `argmax`/`argmaxOn` duals to the existing `argmin`/`argminOn`,
and `WellFoundedLT.min`/`WellFoundedGT.max` in order to properly dualize `WellFounded.min_le`.
Some theorems about `WellFounded{LT/GT}` which didn't have a dual before have to be renamed to make room,
e.g. `StrictMono.range_inj` is renamed to `StrictMono.range_inj_of_wellFoundedLT`.
---
This is blocking dualizing things in `ConditionallyCompleteLattice/Basic.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
maintainer-merge
|
93/48 |
Mathlib/Data/Finset/Sort.lean,Mathlib/FieldTheory/CardinalEmb.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Bird/Correctness.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/Hom/Set.lean,Mathlib/Order/SuccPred/Basic.lean,Mathlib/Order/UpperLower/Basic.lean,Mathlib/Order/WellFounded.lean,Mathlib/SetTheory/Cardinal/Cofinality/Enum.lean,Mathlib/SetTheory/Ordinal/Enum.lean |
10 |
20 |
['JovanGerb', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'riccardobrasca', 'vihdzp'] |
nobody |
1-13334 1 day ago |
1-65841 1 day ago |
96-69970 96 days |
| 41534 |
qdiazblanco author:qdiazblanco |
feat(Geometry/Manifold): add ContMDiffConstSMul typeclass |
Add `ContMDiffConstSMul I n Γ M` and its additive version `ContMDiffConstVAdd I n Γ M`,
stating that for each `γ : Γ` the map `fun x : M ↦ γ • x` is Cⁿ. This is the manifold
analogue of `ContinuousConstSMul`.
Unlike `ContMDiffSMul` (added in #38565), this class requires no topology or charted space structure on `Γ`, so it covers actions to which `ContMDiffSMul` does not apply: in particular actions of discrete groups, such as the properly discontinuous actions used to construct quotient manifolds. This addresses the note in the module docstring of `Mathlib Geometry/Manifold/Algebra/SMul.lean` saying the class could be added later given such examples.
I believe this class is needed in order to complete [#40727](https://github.com/leanprover-community/mathlib4/pull/40727) by @pepamontero .
Claude was used as an aid to update the existing docstrings and write the new ones.
Co-authored-by: Pepa Montero <pepamonterojimena@gmail.com>
Co-authored-by: Archie Browne <ajb421@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-differential-geometry |
146/9 |
Mathlib/Geometry/Manifold/Algebra/SMul.lean |
1 |
11 |
['github-actions', 'grunweg', 'mathlib-merge-conflicts', 'qdiazblanco', 'sgouezel'] |
sgouezel assignee:sgouezel |
1-11376 1 day ago |
1-11376 1 day ago |
10-3525 10 days |
| 42404 |
Robertboy18 author:Robertboy18 |
chore(downstream_repos): add TorchLean |
This PR adds [TorchLean](https://github.com/lean-dojo/TorchLean) to `scripts/downstream_repos.yml`!
TorchLean is the first unified Lean 4 framework for neural-network specification,
execution, training, and formal verification. It depends on Mathlib and maintains
build and documentation workflows on its default branch! Let me know if something else is needed:)
|
CI
new-contributor
|
7/0 |
scripts/downstream_repos.yml |
1 |
2 |
['copilot-pull-request-reviewer', 'github-actions'] |
nobody |
1-7982 1 day ago |
18-1115 18 days ago |
18-1103 18 days |
| 42969 |
teorth author:teorth |
feat(MeasureTheory/Integral, Analysis/SpecialFunctions): exp/log substitutions and the log-Cauchy integral |
`IntegralEqImproper.lean` has the change-of-variables lemmas `integral_comp_exp_Ioi` and
`integral_comp_log_Ioi`, relating integrals over `Ioi a` to integrals over `Ioi (exp a)`
and `Ioi (log a)` for `0 < a`. This PR adds the missing endpoint versions, relating integrals over `Ioi 0` to
integrals over the whole line.
As an application, the improper integrals of `(1 + (b * x) ^ 2)⁻¹` and `(t * (1 + (b * log t) ^ 2))⁻¹` (on the right half-line) are evaluated.
---
This PR was initially generated with AI assistance, but then reviewed by the author.
The API here will be used in a forthcoming PR for the prime number theorem.
[](https://gitpod.io/from-referrer/)
|
t-measure-probability
LLM-generated
|
51/0 |
Mathlib/Analysis/SpecialFunctions/ImproperIntegrals.lean,Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean |
2 |
9 |
['EtienneC30', 'github-actions', 'teorth'] |
EtienneC30 assignee:EtienneC30 |
1-5922 1 day ago |
1-6561 1 day ago |
3-21966 3 days |
| 36428 |
wrenna-robson author:wrenna-robson |
feat(Logic/Equiv/Fin): Streamline equiv definitions using mkDivMod |
This PR uses Fin.mkDivMod to streamline the related equivalence and introduces Nat.mkDivMod to a similar end.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
64/67 |
Mathlib/Analysis/SpecialFunctions/Complex/Arctan.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Series.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Logic/Equiv/Fin/Basic.lean,Mathlib/NumberTheory/Height/MvPolynomial.lean,Mathlib/Order/Partition/Equipartition.lean |
6 |
6 |
['JovanGerb', 'github-actions', 'mathlib-merge-conflicts', 'wrenna-robson'] |
joneugster assignee:joneugster |
1-1748 1 day ago |
39-56299 39 days ago |
67-10628 67 days |
| 39366 |
akiezun author:akiezun |
feat(Data/Nat): add prime divisibility for ascFactorial and choose |
Adds two prime-divisibility lemmas for natural-number factorial/binomial APIs.
The first characterizes when a prime divides an ascending factorial:
`Nat.Prime.dvd_ascFactorial_iff`.
The second applies this to binomial coefficients:
`Nat.Prime.dvd_choose_add_sub_one_iff`, using
`Nat.ascFactorial_eq_factorial_mul_choose'` and cancellation of the `n!` factor
when `n < 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-data
new-contributor
large-import
|
46/0 |
Mathlib.lean,Mathlib/Data/Nat/Choose/Consecutive.lean,Mathlib/Data/Nat/Factorial/BigOperators.lean |
3 |
9 |
['SnirBroshi', 'akiezun', 'github-actions', 'wwylele'] |
Vierkantor assignee:Vierkantor |
1-1746 1 day ago |
97-26023 97 days ago |
101-36390 101 days |
| 39368 |
gasparattila author:gasparattila |
feat: homogenization of an affine space |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
* Alternative to #39431
[](https://gitpod.io/from-referrer/)
|
t-algebra label:t-algebra$ |
405/0 |
Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/Homogenization.lean,docs/references.bib |
3 |
27 |
['eric-wieser', 'gasparattila', 'github-actions', 'themathqueen'] |
YaelDillies assignee:YaelDillies |
1-1745 1 day ago |
61-25796 61 days ago |
100-56175 100 days |
| 40857 |
BryceT233 author:BryceT233 |
feat(RingTheory/Radical): radical of principal ideals in a UFD |
This PR resolves the "TODO" in `RingTheory/Radical/Basic.lean` by connecting `UniqueFactorizationMonoid.radical` with `Ideal.radical`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
large-import
|
44/4 |
Mathlib/RingTheory/Radical/Basic.lean |
1 |
1 |
['github-actions'] |
mattrobball assignee:mattrobball |
1-1745 1 day ago |
63-76549 63 days ago |
63-76537 63 days |
| 41646 |
grunweg author:grunweg |
chore: convenience constructor for `IsImmersionAtOfComplement` |
Add a version of `mk_of_continuousAt` specialized to the preferred chart at each point.
This avoids boilerplate in a few locations.
---
- [x] depends on: #41203
Open questions:
- should we get also a version with e.g. just the domain/or codomain chart being specified?
- Should we have the same for IsImmersionAt? This is not used in practice --- so would make for more predictable API, but not for shorter mathlib 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-differential-geometry |
16/14 |
Mathlib/Geometry/Manifold/Immersion.lean |
1 |
3 |
['github-actions', 'grunweg', 'mathlib-dependent-issues'] |
sgouezel assignee:sgouezel |
1-1744 1 day ago |
3-41949 3 days ago |
3-42101 3 days |
| 42210 |
seewoo5 author:seewoo5 |
feat(NumberTheory/ModularForms): `E₂` is 1-periodic |
Add `E2_T_transform`, `E2_T_smul` and `E2_periodic`. Used in Sphere packing project; written with 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-number-theory
LLM-generated
sphere-packing
|
22/0 |
Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/Transform.lean |
1 |
3 |
['MichaelStollBayreuth', 'github-actions', 'seewoo5'] |
loefflerd assignee:loefflerd |
1-1743 1 day ago |
25-83999 25 days ago |
25-83987 25 days |
| 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
|
177/0 |
Mathlib.lean,Mathlib/Dynamics/Ergodic/KrylovBogolyubov.lean |
2 |
4 |
['github-actions', 'mathlib-bors'] |
sgouezel assignee:sgouezel |
1-1741 1 day ago |
3-40485 3 days ago |
3-40790 3 days |
| 42276 |
yuanyi-350 author:yuanyi-350 |
feat(IMO): archive IMO 2026 Q5 |
|
IMO |
196/0 |
Archive.lean,Archive/Imo/Imo2026Q5.lean |
2 |
8 |
['felixpernegger', 'github-actions'] |
nobody |
1-846 1 day ago |
22-38429 22 days ago |
24-65276 24 days |
| 43056 |
plp127 author:plp127 |
chore(Data/PFunctor): fix defeq abuse in `PFunctor.Obj` |
Fix defeq abuse with `PFunctor.Obj` by using explicit constructors and destructors.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
t-data
|
186/207 |
Mathlib/Control/Functor.lean,Mathlib/Data/PFunctor/Univariate/Basic.lean,Mathlib/Data/PFunctor/Univariate/M.lean,Mathlib/Data/QPF/Univariate/Basic.lean |
4 |
1 |
['github-actions'] |
nobody |
0-83430 23 hours ago |
0-86108 23 hours ago |
1-2735 1 day |
| 43047 |
JX-Mo author:JX-Mo |
fix(RepresentationTheory): move `Equiv.coe_invFun` to the correct symm notion to fit the statement as it suggests |
The current statement of `lemma coe_invFun : φ.invFun = φ.symm := rfl` actually reads `φ.symm` as`⇑φ.toLinearEquiv.symm`. However the context tends to make `Representation.Equiv` as the simp normal form, not `φ.toLinearEquiv`. We move it to where `Representation.Equiv.symm` has been defined so that the RHS has the correct form to get access to other API lemmas more directly.
|
new-contributor
t-algebra
easy
label:t-algebra$ |
2/2 |
Mathlib/RepresentationTheory/Intertwining.lean |
1 |
4 |
['JX-Mo', 'Whysoserioushah', 'github-actions'] |
nobody |
0-75945 21 hours ago |
1-23653 1 day ago |
1-23641 1 day |
| 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 |
0-74908 20 hours ago |
0-75529 20 hours ago |
39-31029 39 days |
| 43054 |
wwylele author:wwylele |
feat(Geometry/Euclidean): cross section perpendicular to the altitude of the simplex |
Extracted from #37910. This sets up affine geometry lemma for calculating the volume.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
75/2 |
Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean,Mathlib/Analysis/InnerProductSpace/Projection/Submodule.lean,Mathlib/Geometry/Euclidean/Altitude.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Shift.lean |
6 |
1 |
['copilot-pull-request-reviewer', 'github-actions'] |
jsm28 assignee:jsm28 |
0-74609 20 hours ago |
1-3086 1 day ago |
1-10273 1 day |
| 42434 |
kebekus author:kebekus |
chore: rename files |
Rename files in `Mathlib/Analysis/SpecialFunctions/Integrability` and `Mathlib/Analysis/SpecialFunctions/Integrals` to better reflect their contents, and update docstrings. The current file names are somewhat unsystematic, very specialized, and will be seen as misleading once more material is added.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
file-removed
t-analysis
|
116/62 |
Mathlib.lean,Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Complex/ValueDistribution/Proximity/Basic.lean,Mathlib/Analysis/Complex/ValueDistribution/Proximity/IntegralPresentation.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/SpecialFunctions/Integrability/Log.lean,Mathlib/Analysis/SpecialFunctions/Integrability/PosLog.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Log.lean,Mathlib/Analysis/SpecialFunctions/Integrals/PosLog.lean |
9 |
5 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-71671 19 hours ago |
0-72330 20 hours ago |
17-19668 17 days |
| 42951 |
xroblot author:xroblot |
feat(Algebra/QuadraticAlgebra): algebra homomorphisms between quadratic algebras |
An `R`-algebra homomorphism `f : QuadraticAlgebra R a b →ₐ[R] QuadraticAlgebra R a' b'` is determined by the image of `ω`, and its determinant `(f ω).im` decides everything: `f` is injective if and only if `(f ω).im` is regular, bijective if and only if it is a unit, and an injective `f` preserves the trace, the conjugation and the norm.
Prepared with Claude Code 🤖
|
t-algebra label:t-algebra$ |
135/0 |
Mathlib.lean,Mathlib/Algebra/QuadraticAlgebra/AlgHom.lean,Mathlib/Algebra/QuadraticAlgebra/Basic.lean,Mathlib/Algebra/QuadraticAlgebra/Defs.lean |
4 |
7 |
['SnirBroshi', 'Whysoserioushah', 'github-actions'] |
nobody |
0-69846 19 hours ago |
3-60752 3 days ago |
3-82984 3 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/Basic.lean,Mathlib/Topology/Algebra/Star.lean,Mathlib/Topology/ContinuousMap/Basic.lean,Mathlib/Topology/ContinuousMap/ContinuousMapZero.lean |
15 |
2 |
['github-actions', 'j-loreaux'] |
nobody |
0-68799 19 hours ago |
0-70447 19 hours ago |
0-79839 22 hours |
| 38369 |
quantumsnow author:quantumsnow |
feat(AlgebraicTopology): Eilenberg Steenrod axioms |
This introduces the Eilenberg-Steenrod axioms for a homology 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]
-->
- [x] depends on: #36621
- [x] depends on: #39236
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebraic-topology
large-import
|
305/7 |
Mathlib/AlgebraicTopology/EilenbergSteenrod.lean,Mathlib/Topology/Category/TopPair.lean |
2 |
77 |
['chrisflav', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'quantumsnow'] |
robin-carlier assignee:robin-carlier |
0-48930 13 hours ago |
0-48930 13 hours ago |
55-81631 55 days |
| 43057 |
Parcly-Taxel author:Parcly-Taxel |
chore: delete deprecated modules from February 2026 |
The automated deprecation removal #42655 does not cover deprecated modules yet. |
tech debt
maintainer-merge
|
0/177 |
Mathlib.lean,Mathlib/Algebra/GroupWithZero/Action/Faithful.lean,Mathlib/CategoryTheory/Adhesive.lean,Mathlib/CategoryTheory/ConcreteCategory/BundledHom.lean,Mathlib/CategoryTheory/ConcreteCategory/UnbundledHom.lean,Mathlib/CategoryTheory/Limits/FormalCoproducts.lean,Mathlib/Combinatorics/Enumerative/Catalan.lean,Mathlib/Computability/PostTuringMachine.lean,Mathlib/Computability/TMComputable.lean,Mathlib/Computability/TMConfig.lean,Mathlib/Computability/TMToPartrec.lean,Mathlib/Computability/Tape.lean,Mathlib/Computability/TuringMachine.lean,Mathlib/Data/List/SplitOn.lean,Mathlib/Logic/IsEmpty.lean |
15 |
2 |
['github-actions', 'joneugster'] |
joneugster assignee:joneugster |
0-48802 13 hours ago |
0-77904 21 hours ago |
0-77892 21 hours |
| 43060 |
yuanyi-350 author:yuanyi-350 |
chore(Algebra/Ring/Invertible): golf a proof using grind |
Trace profiling results:
`neg_one_eq_invOf_mul_add_invOf_mul_iff`: 50 ms before, <12 ms after 🎉
Profiled using `set_option trace.profiler true in`. |
t-algebra
easy
maintainer-merge
label:t-algebra$ |
1/7 |
Mathlib/Algebra/Ring/Invertible.lean |
1 |
4 |
['Whysoserioushah', 'github-actions', 'leanprover-radar', 'themathqueen'] |
nobody |
0-48443 13 hours ago |
0-68662 19 hours ago |
0-68650 19 hours |
| 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 |
0-46271 12 hours ago |
0-46365 12 hours ago |
42-57278 42 days |
| 43026 |
ADedecker author:ADedecker |
chore(IsTopologicalBasis): review naming |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-topology
maintainer-merge
|
41/26 |
Mathlib/Topology/Bases.lean,Mathlib/Topology/Sets/Opens.lean,Mathlib/Topology/Sets/VietorisTopology.lean,Mathlib/Topology/Spectral/Prespectral.lean |
4 |
2 |
['github-actions', 'themathqueen'] |
nobody |
0-44079 12 hours ago |
2-24113 2 days ago |
2-26656 2 days |
| 43063 |
joelriou author:joelriou |
feat(CategoryTheory): right Kan extensions and Guitart exact squares |
This PR only dualises for right Kan extensions what had already been obtained for left Kan extensions.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
147/4 |
Mathlib/CategoryTheory/GuitartExact/KanExtension.lean |
1 |
2 |
['github-actions'] |
nobody |
0-42923 11 hours ago |
0-44194 12 hours ago |
0-44182 12 hours |
| 43064 |
j-white author:j-white |
feat(Analysis/Fourier/AddCircle): add evaluation lemmas for fourier characters |
Add the argument-side counterparts of the index lemmas (`fourier_add` / `fourier_neg`):
* `fourier_eval_add`
* `fourier_eval_neg`
* `fourier_eval_sub`
Additionally, add the index-subtraction lemma `fourier_sub` (with `simp` normal form `fourier_sub'`, mirroring `fourier_add'`). |
t-analysis
new-contributor
|
23/0 |
Mathlib/Analysis/Fourier/AddCircle.lean |
1 |
2 |
['github-actions'] |
nobody |
0-42254 11 hours ago |
0-42937 11 hours ago |
0-42961 11 hours |
| 38319 |
Zetetic-Dhruv author:Zetetic-Dhruv |
feat(Combinatorics/SetFamily): Assouad's dual VC bound |
Adds the Finset-level form of Assouad's 1983 dual VC bound: if a family
`𝒜 : Finset (Finset α)` has VC dimension at most `d`, then for any
ground set `X : Finset α` the dual family
`{𝒜.filter (· ∋ x) : x ∈ X}` has VC dimension at most `2 ^ (d + 1) - 1`.
New declarations (in `Finset` namespace):
- `dualFamily 𝒜 X`: for each `x ∈ X`, the subfamily `{A ∈ 𝒜 | x ∈ A}`
- `mem_dualFamily` (`@[simp]`): membership characterisation
- `exists_shatters_of_dualFamily_shatters`: Assouad's bitstring-coding lemma
- `vcDim_dualFamily_le`: the headline VC bound
Proof by Assouad's classical bitstring-coding argument. Sits on top of `Finset.shatterer` / `Finset.vcDim` from
`Mathlib.Combinatorics.SetFamily.Shatter`.
References:
- P. Assouad, Densite et dimension, Ann. Inst. Fourier 33(3) (1983), Thm 2.13
- J. Matousek, Lectures on Discrete Geometry, GTM 212, Springer, 2002, Section 10.3 Lemma 10.3.3
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
maintainer-merge
|
199/0 |
Mathlib.lean,Mathlib/Combinatorics/SetFamily/DualVC.lean,docs/references.bib |
3 |
45 |
['Shreyas4991', 'YaelDillies', 'Zetetic-Dhruv', 'github-actions'] |
nobody |
0-42222 11 hours ago |
106-13463 106 days ago |
122-60500 122 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 |
203/76 |
Mathlib/Algebra/MvPolynomial/Monad.lean,Mathlib/Algebra/MvPolynomial/Variables.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/Data/Finsupp/Weight.lean,docs/references.bib |
5 |
1 |
['github-actions'] |
nobody |
0-41568 11 hours ago |
0-84321 23 hours ago |
1-28168 1 day |
| 43005 |
YaelDillies author:YaelDillies |
chore(Logic/Equiv): swap the names of `Equiv.setCongr` and `Equiv.Set.congr` |
The new `Equiv.setCongr` matches `MulEquiv.monoidHomCongrLeft` and friends. Perform the same change for `Finset`.
Follow-up to #42640.
Generated by Claude Sonnet, reviewed and improved line-by-line by myself.
Assisted-by: Claude Sonnet 5
---
`Equiv.Set.congr` is a strange name for the other operation. Other subobjects tend to have this operation be called `Subfoo.fooEquivOfEq`. This can be renamed again later, or in this PR.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-data |
126/133 |
Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/Algebra/Group/Submonoid/Operations.lean,Mathlib/Algebra/Group/Subsemigroup/Operations.lean,Mathlib/Algebra/Module/Submodule/Equiv.lean,Mathlib/Algebra/Order/Antidiag/Pi.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Analysis/Matrix/Order.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Arctan.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Basic.lean,Mathlib/CategoryTheory/Galois/Examples.lean,Mathlib/Combinatorics/Additive/Dissociation.lean,Mathlib/Combinatorics/Young/YoungDiagram.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Finset/Image.lean,Mathlib/Data/Finset/Sort.lean,Mathlib/Data/Fintype/Sort.lean,Mathlib/Data/Set/Pairwise/Lattice.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/FieldTheory/Perfect.lean,Mathlib/GroupTheory/Coset/Basic.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/Quotient.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/GroupTheory/Perm/Finite.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Basic.lean,Mathlib/LinearAlgebra/ExteriorPower/Basic.lean,Mathlib/LinearAlgebra/RootSystem/Base.lean,Mathlib/LinearAlgebra/Trace.lean,Mathlib/Logic/Equiv/Fintype.lean,Mathlib/Logic/Equiv/Set.lean,Mathlib/Logic/Small/Basic.lean,Mathlib/ModelTheory/Order.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/Defs.lean,Mathlib/NumberTheory/NumberField/Ideal/KummerDedekind.lean,Mathlib/NumberTheory/SmoothNumbers.lean,Mathlib/Order/Hom/Lex.lean,Mathlib/Order/Hom/Set.lean,Mathlib/Order/ModularLattice.lean,Mathlib/Order/Partition/Basic.lean,Mathlib/Order/Preorder/Finite.lean,Mathlib/Order/SupClosed.lean,Mathlib/RingTheory/AlgebraicIndependent/TranscendenceBasis.lean,Mathlib/RingTheory/AlgebraicIndependent/Transcendental.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/SetTheory/Ordinal/FundamentalSequence.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean,Mathlib/Topology/Category/Profinite/Nobeling/Successor.lean,Mathlib/Topology/Category/Profinite/Nobeling/ZeroLimit.lean,Mathlib/Topology/Homeomorph/Lemmas.lean,Mathlib/Topology/Irreducible.lean,Mathlib/Topology/UniformSpace/Equiv.lean |
58 |
1 |
['github-actions'] |
ocfnash assignee:ocfnash |
0-40679 11 hours ago |
2-56439 2 days ago |
2-56427 2 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`.
### Backgrounds
This is part of a series of PRs, with the final goal of removing the class `Valued` from Mathlib.
A `Valued` instance will be replaced by `[ValuativeRel R] [UniformSpace R] [IsValuativeTopology R] [IsUniformAddGroup R] (v : Valuation R A) [v.Compatible]`.
Currently in Mathlib, there are three main ways of creating a `Valued` instance, we generalize them to create `ValuativeRel` and `IsValuativeTopology`.
1. `Valued.mk'` (`ValuativeRel.ofValuation` already in mathlib, ValuativeRel.uniformSpace in #36532)
2. `Valued.valuedCompletion` (#36769)
3. `NormedField.toValued` (This PR)
Some uniform space structures induced by `ValuativeRel` in this PR cannot be made into instances immediately, since they would cause diamonds with `Valued`. However, they will become instances in the final PR removing `Valued`.
### More about the whole refactor plan:
1. Copy APIs that take `Valued` as input and make them accept input `[ValuativeRel R] [UniformSpace R] [IsValuativeTopology R] [IsUniformAddGroup R] (v : Valuation R A) [v.Compatible]`.
- [x] #36532
2. For every API that introduces a `Valued` instance, copy that API and make it create `[ValuativeRel R] [UniformSpace R] [IsValuativeTopology R] [IsUniformAddGroup R]` instances. And for every instance that currently exists in Mathlib, create the above series of instances as much as possible without introducing diamonds.
More specifically, currently in Mathlib, there are three main ways of creating a `Valued` instance:
- `Valued.mk'`
- `Valued.valuedCompletion`
- `NormedField.toValued`
For each of these we create APIs to create the above series of instances.
- [x] #36777 [Generalize the definition of `IsValuativeTopology` to non comm rings]
- [ ] #36769 [`ValuativeRel` on completion]
- [ ] This PR.
For each of these we create APIs to create the above series of instances.
3. A big PR deprecating the `Valued` class using 1 and 2.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
t-topology
LLM-generated
|
325/30 |
Mathlib.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Topology/Algebra/ValuativeRel/Normed.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean |
4 |
1 |
['github-actions'] |
nobody |
0-38864 10 hours ago |
0-40994 11 hours ago |
0-42261 11 hours |
| 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 |
1 |
['github-actions'] |
nobody |
0-38177 10 hours ago |
0-39345 10 hours ago |
0-39333 10 hours |
| 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 |
0-37533 10 hours ago |
0-38859 10 hours ago |
0-38847 10 hours |
| 43069 |
Ming-Yuan-Zhu author:Ming-Yuan-Zhu |
feat: add second derivative signs at local extrema |
This PR adds `IsLocalMax.deriv_deriv_nonpos` and
`IsLocalMin.deriv_deriv_nonneg`, complementing the existing
second-derivative tests in `DerivativeTest.lean`.
The immediate motivation is the formalization of the maximum principle
for elliptic PDEs, where the sign of the second derivatives at an
interior extremum is a basic ingredient.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
52/0 |
Mathlib/Analysis/Calculus/DerivativeTest.lean |
1 |
2 |
['github-actions'] |
nobody |
0-36516 10 hours ago |
0-37173 10 hours ago |
0-37161 10 hours |
| 40180 |
FMLJohn author:FMLJohn |
feat(Topology/Spectral/ConstructibleTopology): the constructible topology on a compact quasi-separated space `X` equals the topology generated by the constructible subsets of `X` |
In this pull request, I have proved that the constructible topology on a compact quasi-separated space `X` equals the topology generated by the constructible subsets of `X`. This holds in particular for spectral 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 |
85/1 |
Mathlib.lean,Mathlib/Order/BooleanSubalgebra.lean,Mathlib/Topology/Order/GenerateFromLattice.lean,Mathlib/Topology/Spectral/ConstructibleTopology.lean |
4 |
24 |
['FMLJohn', 'chrisflav', 'github-actions', 'mathlib-merge-conflicts', 'plp127'] |
j-loreaux assignee:j-loreaux |
0-35668 9 hours ago |
0-36480 10 hours ago |
61-42034 61 days |
| 43066 |
joelriou author:joelriou |
chore(AlgebraicTopology/SimplicialSet/AnodyneExtensions): removing some `set_option` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology
tech debt
|
40/103 |
Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/IsUniquelyCodimOneFace.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Op.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Pairing.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/PairingCore.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Rank.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/RelativeCellComplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/UnionProd.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplicesSubcomplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/Simplices.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/CategoryTheory/Limits/Shapes/Preorder/PrincipalSeg.lean,Mathlib/CategoryTheory/Monoidal/Category.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Sites/Subsheaf.lean,Mathlib/CategoryTheory/Subfunctor/Basic.lean,Mathlib/CategoryTheory/Types/Basic.lean,Mathlib/Order/Interval/Set/InitialSeg.lean |
17 |
1 |
['github-actions'] |
nobody |
0-33383 9 hours ago |
0-35249 9 hours ago |
0-37717 10 hours |
| 43068 |
ocfnash author:ocfnash |
feat: add `Wanted` statement for the classification of root systems |
This is partly motivated by seeing somewhat less ergonomic versions of these results land in Tau Ceti.
Note that since we already have a complete reduction of the classification of Lie algebras to root systems, this would finish both classifications.
These constructions and proofs could probably be provided in a couple of weeks by an expert. I do not have any plans to carry out this work in the near or distant future and one goal of this PR is to invite others to implement this plan.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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$ |
123/0 |
Wanted.lean,Wanted/LinearAlgebra/RootSystem/Classification.lean |
2 |
1 |
['github-actions'] |
nobody |
0-32703 9 hours ago |
0-33300 9 hours ago |
0-33936 9 hours |
| 42474 |
joelriou author:joelriou |
feat(AlgebraicTopology/SimplicialSet): `MulStruct.nonempty` |
In this PR, we show that for `SSet.PtSimplex.MulStruct`, it is possible to multiply two `SSet.PtSimplex` and that left inverses exist. This will be used in the construction of homotopy groups of Kan complexes.
---
- [x] depends on: #38216
- [x] depends on: #38664
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology
tech debt
|
135/0 |
Mathlib/AlgebraicTopology/SimplicialSet/Boundary.lean,Mathlib/AlgebraicTopology/SimplicialSet/KanComplex/MulStruct.lean |
2 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
nobody |
0-31480 8 hours ago |
10-50891 10 days ago |
10-52910 10 days |
| 42953 |
teorth author:teorth |
feat(MeasureTheory/Group/Circle): add MeasurableSpace/BorelSpace instances for the circle |
`Circle.norm_smul` is a simp lemma, but the same facts stated with `‖·‖₊` or `‖·‖ₑ` — the form produced by `lintegral`, `HasFiniteIntegral` and `enorm_mul` — have no simp support: Mathlib currently has no `nnnorm` or `enorm` lemma about `Circle` at all.
Adds `Circle.nnnorm_coe`, `Circle.enorm_coe`, `Circle.nnnorm_smul` and `Circle.enorm_smul` as companions to `Circle.norm_coe` and `Circle.norm_smul`, and marks `Circle.norm_coe` itself `@[simp]`: at present `simp` cannot prove `‖(z : ℂ)‖ = 1`, although `Circle.normSq_coe` and `Circle.norm_smul` are both simp.
A related `IsIsometricSMul Circle E` instance for any `{E : Type*} [SeminormedAddCommGroup E] [NormedSpace ℂ E]` is also supplied.
A new file `MeasureTheory/Group/Circle` is also created to record `MeasurableSpace` and `BorelSpace` instances for `Circle` (which also autogenerates some other instances such as `MeasurableMul Circle` or `CountablyGenerated Circle`).
---
The material in the first three paragraphs of this description has already been merged; the current PR now only contains the `MeasurableSpace` and `BorelSpace` instances.
This PR was initially generated with AI assistance, but then reviewed by the author.
The API here will be used in a forthcoming PR for the prime number theorem.
[](https://gitpod.io/from-referrer/)
|
tech debt
t-measure-probability
|
32/0 |
Mathlib.lean,Mathlib/MeasureTheory/Group/Circle.lean |
2 |
10 |
['github-actions', 'mathlib-splicebot', 'themathqueen'] |
nobody |
0-31208 8 hours ago |
2-23882 2 days ago |
4-19333 4 days |
| 41655 |
joelriou author:joelriou |
feat(AlgebraicTopology): filtration of `Δ[p] ⊗ Δ[1]` |
Previously, we defined an enumeration of the non-degenerate `p + 1`-dimensional simplices of `Δ[p] ⊗ Δ[1]`. They "cover" `Δ[p] ⊗ Δ[1]`, and we use the enumeration to define a filtration of `Δ[p] ⊗ Δ[1]` by subcomplexes.
In a future PR, it will be used in order to define a constructor for morphisms from `Δ[p] ⊗ Δ[1]` which shall take as inputs a morphism on each of these `p + 1`-simplices, with a compatibility condition on the intersection of two consecutive simplices in the enumeration.
From https://github.com/joelriou/topcat-model-category
---
- [x] depends on: #41624
- [x] depends on: #41617
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology |
114/21 |
Mathlib/AlgebraicTopology/SimplicialSet/Boundary.lean,Mathlib/AlgebraicTopology/SimplicialSet/Degenerate.lean,Mathlib/AlgebraicTopology/SimplicialSet/FiniteColimits.lean,Mathlib/AlgebraicTopology/SimplicialSet/FiniteProd.lean,Mathlib/AlgebraicTopology/SimplicialSet/Homotopy.lean,Mathlib/AlgebraicTopology/SimplicialSet/ProdStdSimplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/ProdStdSimplexOne.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/Subcomplex.lean,Mathlib/CategoryTheory/Sites/LocallySurjective.lean,Mathlib/CategoryTheory/Subfunctor/Basic.lean,Mathlib/CategoryTheory/Subfunctor/Finite.lean |
12 |
5 |
['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
robin-carlier assignee:robin-carlier |
0-31077 8 hours ago |
1-63040 1 day ago |
10-17873 10 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 |
352/0 |
Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialObject/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/FundamentalGroupoid/Basic.lean,MathlibTest/CategoryTheory/CheckDsimp.lean |
4 |
5 |
['github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'robin-carlier'] |
dagurtomas assignee:dagurtomas |
0-30952 8 hours ago |
9-52992 9 days ago |
9-52981 9 days |
| 43061 |
thomaskwaring author:thomaskwaring |
feat(GroupTheory): results on normal subgroups of nilpotent groups |
We prove that every nontrivial normal subgroup of a nilpotent group intersects the center nontrivially (`Group.IsNilpotent.inf_center_ne_bot_of_normal`) and that finite nilpotent groups have normal subgroups of every possible order (`Group.IsNilpotent.exists_normal_of_dvd_card`).
---
[](https://gitpod.io/from-referrer/)
|
t-group-theory |
82/3 |
Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/Subgroup/Center.lean |
2 |
3 |
['acmepjz', 'github-actions', 'thomaskwaring'] |
nobody |
0-29694 8 hours ago |
0-59684 16 hours ago |
0-59672 16 hours |
| 43031 |
SnirBroshi author:SnirBroshi |
feat(Order/Bounds/Basic): simp lemmas for `upperBounds univ`, `IsLUB univ`, `Set.Bounded LE.le` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
12/0 |
Mathlib/Order/Bounds/Basic.lean |
1 |
3 |
['SnirBroshi', 'github-actions', 'themathqueen'] |
nobody |
0-29582 8 hours ago |
2-8373 2 days ago |
2-8361 2 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
|
80/7 |
Mathlib/Analysis/InnerProductSpace/Reproducing.lean |
1 |
41 |
['TJHeeringa', 'github-actions', 'j-loreaux', 'jkandel1', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'themathqueen'] |
ADedecker assignee:ADedecker |
0-26896 7 hours ago |
3-36096 3 days ago |
37-41320 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
|
13/3 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean |
1 |
31 |
['JadAbouHawili', 'SnirBroshi', 'github-actions'] |
nobody |
0-26447 7 hours ago |
3-61480 3 days ago |
7-18169 7 days |
| 42971 |
ashebson author:ashebson |
fix(ProfiniteGrp): simplify explicit limit projections |
The naturality proof for `ProfiniteCompletion.lift` previously needed a brittle pointwise `change`. The underlying problem was that simplification crossed several semireducible diagram/forgetful-functor boundaries at once, producing terms that are definitionally equal but no longer type-correct at implicit transparency.
This PR:
- makes the two finite-quotient diagram composites reducible abbreviations;
- states `quotientMap` using the diagram object types and maps it through the existing `FiniteGrp ⥤ ProfiniteGrp` forgetful functor;
- adds a pointwise simp lemma for an explicit limit projection followed by a mapped finite-group morphism (with its additive counterpart); and
- rewrites `ProfiniteCompletion.lift` naturality through that API while keeping the limit point bundled, removing the problematic pointwise `change`.
--------
## AI disclosure
AI (OpenAI Codex) was used extensively for this PR. It was used to:
- investigate the original TODO and reproduce why `dsimp` failed;
- explore and discard several possible fixes;
- identify the semireducible diagram/forgetful-functor boundaries involved;
- design and implement the final `ProfiniteGrp` API simplification and `ProfiniteCompletion.lift` proof changes;
- run the relevant Lean builds and direct compilation checks; and
- draft the commit message and PR description.
The final changes were reviewed through the resulting diff and verified locally. |
t-topology
new-contributor
LLM-generated
|
29/12 |
Mathlib/Topology/Algebra/Category/ProfiniteGrp/Basic.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Completion.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Limits.lean |
3 |
8 |
['ashebson', 'github-actions', 'grunweg', 'mathlib-bors'] |
nobody |
0-26074 7 hours ago |
1-47387 1 day ago |
1-80630 1 day |
| 42848 |
mcdoll author:mcdoll |
chore(Analysis/LocallyConvex): add missing lemmas and rename |
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 |
45/12 |
Mathlib/Analysis/LocallyConvex/WithSeminorms.lean |
1 |
2 |
['github-actions', 'themathqueen'] |
nobody |
0-25987 7 hours ago |
7-1866 7 days ago |
7-1854 7 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 |
0-24272 6 hours ago |
3-81986 3 days ago |
3-81974 3 days |
| 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`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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 |
78/0 |
Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean |
1 |
8 |
['ADedecker', 'github-actions', 'j-loreaux', 'themathqueen'] |
nobody |
0-24088 6 hours ago |
9-23458 9 days ago |
9-23446 9 days |
| 43030 |
loefflerd author:loefflerd |
refactor(Data/Set): split long file Lattice.lean |
Split this > 1500 line file into 4 smaller files:
- `Mathlib.Data.Set.Lattice.Indexed` (655 lines): indexed unions and intersections, monotonicity, complements, proposition indexing, and reindexing.
- `Mathlib.Data.Set.Lattice.Bounded` (645 lines): bounded unions and intersections, sUnion/sInter, products, directed unions, and surjective reindexing.
- `Mathlib.Data.Set.Lattice.Disjoint` (139 lines): disjoint indexed families and equivalences with dependent sums.
- `Mathlib.Data.Set.Lattice.Order` (125 lines): intervals, natural-number tails, and interaction with complete-lattice suprema and infima.
---
I tried to do the usual "deprecation stub in a follow-up PR" trick to get git to associate the pre-split history of the file with one of the post-split files, but it doesn't seem to have worked, probably because none of the post-split files match enough of the pre-split file. So I'm merging the deprecation-stub PR back into this one.
_AI disclosure_: An AI agent did much of the grunt work; I (a human being) devised the split and instructed the agent which lemmas to put where, proof-read the output, spruced up the autogenerated file-level docstrings, and made careful verification checks.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
tech debt
t-data
LLM-generated
|
1619/1577 |
Mathlib.lean,Mathlib/Algebra/BigOperators/Group/Finset/Indicator.lean,Mathlib/Algebra/BigOperators/GroupWithZero/Finset.lean,Mathlib/CategoryTheory/Groupoid/Subgroupoid.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Computability/Language.lean,Mathlib/Data/Semiquot.lean,Mathlib/Data/Set/Constructions.lean,Mathlib/Data/Set/Finite/Lemmas.lean,Mathlib/Data/Set/Finite/List.lean,Mathlib/Data/Set/FiniteExhaustion.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Data/Set/Lattice/Bounded.lean,Mathlib/Data/Set/Lattice/Disjoint.lean,Mathlib/Data/Set/Lattice/Image.lean,Mathlib/Data/Set/Lattice/Indexed.lean,Mathlib/Data/Set/Lattice/Order.lean,Mathlib/Data/Set/Pairwise/Lattice.lean,Mathlib/Data/Set/UnionLift.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/Closure.lean,Mathlib/Logic/Small/Set.lean,Mathlib/Order/Atoms.lean,Mathlib/Order/BourbakiWitt.lean,Mathlib/Order/Cofinal.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/CompleteLattice/Chain.lean,Mathlib/Order/Concept.lean,Mathlib/Order/ConditionallyCompleteLattice/Basic.lean,Mathlib/Order/DirSupClosed.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Interval/Set/OrdConnectedComponent.lean,Mathlib/Order/Interval/Set/Union.lean,Mathlib/Order/LiminfLimsup.lean,Mathlib/Order/PrimeSeparator.lean,Mathlib/Order/SuccPred/IntervalSucc.lean,Mathlib/SetTheory/ZFC/PSet.lean,Mathlib/Tactic/Monotonicity/Lemmas.lean,Mathlib/Topology/Algebra/Module/Spaces/CharacterSpace.lean,Mathlib/Topology/Basic.lean,Mathlib/Topology/Defs/Ultrafilter.lean,Mathlib/Topology/NhdsSet.lean,MathlibTest/delaborators.lean |
42 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
0-21603 6 hours ago |
0-31007 8 hours ago |
0-80041 22 hours |
| 43016 |
tb65536 author:tb65536 |
feat(Analysis/Matrix/Normed): norm of block diagonal matrix |
This PR computes the norm of a block diagonal matrix.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
11/0 |
Mathlib/Analysis/Matrix/Normed.lean |
1 |
3 |
['github-actions', 'themathqueen'] |
nobody |
0-21225 5 hours ago |
2-41738 2 days ago |
2-41728 2 days |
| 43027 |
ADedecker author:ADedecker |
chore: topologicalGroup -> isTopologicalGroup in 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/)
|
maintainer-merge |
103/57 |
Mathlib/Algebra/Category/ModuleCat/Topology/Basic.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/TestFunction.lean,Mathlib/Analysis/LocallyConvex/WeakDual.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Basic.lean,Mathlib/Topology/Algebra/Group/Basic.lean,Mathlib/Topology/Algebra/Group/GroupTopology.lean,Mathlib/Topology/Algebra/Group/Matrix.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean,Mathlib/Topology/Algebra/Module/Alternating/Topology.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Algebra/Module/EmbeddingOfLocal.lean,Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/Algebra/Module/ModuleTopology.lean,Mathlib/Topology/Algebra/Module/Spaces/ContinuousLinearMap.lean,Mathlib/Topology/Algebra/Module/UniformConvergence.lean,Mathlib/Topology/Algebra/Nonarchimedean/AdicTopology.lean,Mathlib/Topology/Algebra/Ring/Basic.lean,Mathlib/Topology/Instances/Matrix.lean |
20 |
8 |
['ADedecker', 'github-actions', 'themathqueen'] |
nobody |
0-19845 5 hours ago |
2-24568 2 days ago |
2-27620 2 days |
| 38612 |
SnirBroshi author:SnirBroshi |
feat(Order/SuccPred/CompleteLinearOrder): `sSup s < x` iff theorems when we know if `x` is a successor pre-limit or not |
Adds the following theorems (along with their duals and indexed versions):
```lean
sSup_lt_iff_of_not_isSuccPrelimit : ¬IsSuccPrelimit x → sSup s < x ↔ ∀ a ∈ s, a < x
le_sSup_iff_of_not_isSuccPrelimit : ¬IsSuccPrelimit x → x ≤ sSup s ↔ ∃ a ∈ s, x ≤ a
Order.IsSuccPrelimit.sSup_lt_iff : IsSuccPrelimit x → sSup s < x ↔ ∃ a < x, ∀ b ∈ s, b < a
Order.IsSuccPrelimit.le_sSup_iff : IsSuccPrelimit x → x ≤ sSup s ↔ ∀ a < x, ∃ b ∈ s, a ≤ b
```
They are similar to these existing theorems, but not the same:
```lean
sSup_lt_iff : sSup s < x ↔ ∃ a < x, ∀ b ∈ s, b ≤ a
le_sSup_iff_forall_lt : x ≤ sSup s ↔ ∀ a < x, ∃ b ∈ s, a < b
```
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
63/0 |
Mathlib/Order/SuccPred/CompleteLinearOrder.lean |
1 |
7 |
['SnirBroshi', 'Vierkantor', 'YaelDillies', 'github-actions', 'vihdzp'] |
nobody |
0-19185 5 hours ago |
8-77953 8 days ago |
95-18616 95 days |
| 42732 |
CoolRmal author:CoolRmal |
feat(TacticAnalysis): suggest `rwa` for `rw` followed by `assumption` |
This PR implements [mathlib-initiative/TaskList#55](https://github.com/mathlib-initiative/TaskList/issues/55).
|
t-meta |
80/36 |
Archive/Examples/Kuratowski.lean,Mathlib/Algebra/Regular/SMul.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Chebyshev/RootsExtrema.lean,Mathlib/Computability/Reduce.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Seq/Defs.lean,Mathlib/MeasureTheory/Integral/Lebesgue/DominatedConvergence.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/RepresentationTheory/Character.lean,Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/LocalProperties/Basic.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/FundamentalTheorem.lean,Mathlib/RingTheory/Perfection.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,Mathlib/Topology/Algebra/Nonarchimedean/Bases.lean,Mathlib/Topology/Category/Stonean/Basic.lean,MathlibTest/Tactic/Cases.lean,MathlibTest/TacticAnalysis.lean |
19 |
5 |
['CoolRmal', 'github-actions', 'leanprover-radar'] |
thorimur assignee:thorimur |
0-17853 4 hours ago |
10-28262 10 days ago |
10-34156 10 days |
| 42682 |
TJHeeringa author:TJHeeringa |
feat(Analysis/InnerProductSpace/Reproducing): add outerKernel |
This PR adds the kernel generated from a function `f : X → V` with the rank-one operators `⟪f x, •⟫ f y` as its entries.
---
#38584 has been split up into parts. This is one of these.
This added kernel is a reprequisite for many results, e.g. like embeddings and inclusions in the ambient submodule.
This PR doesn't show that the RKHS induced by the kernel is isometrically isomorphic to `𝕜 ∙ f`, the span of `f`. This is left for a later PR.
An argument can be made to call this a `featureKernel` instead of a `outerKernel`. The latter was chosen because the entries of the kernel are in finite dimensions an outer product of `f x` and `f y`. The former is also a valid name because the function `f` is often referred to as a feature in this context and thus the name would represent "the kernel generated from the feature `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-analysis |
53/2 |
Mathlib/Analysis/InnerProductSpace/Reproducing.lean |
1 |
10 |
['Maldooor', 'TJHeeringa', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] |
nobody |
0-16096 4 hours ago |
3-65936 3 days ago |
11-3575 11 days |
| 42198 |
lakesare author:lakesare |
feat(Topology/Instances/AddCircle/Defs): add equivAddCircle_eq, continuous_equivAddCircle |
From the Carleson project.
-------
**Upstreaming from Carleson: [/Carleson/ToMathlib/Topology/Instances/AddCircle/Defs.lean](https://github.com/fpvandoorn/carleson/blob/0072b6e47ec58ac13be0a9f3b7c17e9f3bb1be2e/Carleson/ToMathlib/Topology/Instances/AddCircle/Defs.lean)**
### Changes from carleson
- **theorem equivAddCircle_eq**
- refactored, generalized
- **theorem continuous_equivAddCircle**
- refactored, generalized
- `@[continuity]`, `@[fun_prop]` added
### Signatures
```lean
-- CARLESON
AddCircle.continuous_equivAddCircle.{u_3} {𝕜 : Type u_3} [Field 𝕜] {p q : 𝕜} [LinearOrder 𝕜] [IsStrictOrderedRing 𝕜]
[TopologicalSpace 𝕜] [OrderTopology 𝕜] [hp : Fact (0 < p)] [hq : Fact (0 < q)] :
Continuous ⇑(equivAddCircle p q (LT.lt.ne' Fact.out) (LT.lt.ne' Fact.out))
-- MATHLIB
AddCircle.continuous_equivAddCircle.{u_1} {𝕜 : Type u_1} [Field 𝕜] (p q : 𝕜) [LinearOrder 𝕜] [IsStrictOrderedRing 𝕜]
[TopologicalSpace 𝕜] [OrderTopology 𝕜] (hp : p ≠ 0) (hq : q ≠ 0) : Continuous ⇑(equivAddCircle p q hp hq)
```
```lean
-- CARLESON
AddCircle.equivAddCircle_eq.{u_3} {𝕜 : Type u_3} [Field 𝕜] {p q : 𝕜} [LinearOrder 𝕜] [IsStrictOrderedRing 𝕜]
[Archimedean 𝕜] [hp : Fact (0 < p)] [hq : Fact (0 < q)] :
⇑(equivAddCircle p q (LT.lt.ne' Fact.out) (LT.lt.ne' Fact.out)) = fun x ↦ ↑(↑((equivIco p 0) x) * (p⁻¹ * q))
-- MATHLIB
AddCircle.equivAddCircle_eq.{u_1} {𝕜 : Type u_1} [Field 𝕜] (p q : 𝕜) [LinearOrder 𝕜] [IsOrderedAddMonoid 𝕜]
[Archimedean 𝕜] [hp : Fact (0 < p)] (hq : q ≠ 0) :
⇑(equivAddCircle p q (LT.lt.ne' Fact.out) hq) = fun x ↦ ↑(↑((equivIco p 0) x) * (p⁻¹ * q))
``` |
t-topology
carleson
|
13/0 |
Mathlib/Topology/Instances/AddCircle/Defs.lean |
1 |
18 |
['felixpernegger', 'github-actions', 'grunweg', 'lakesare'] |
nobody |
0-11840 3 hours ago |
16-82301 16 days ago |
18-56771 18 days |
| 42023 |
lakesare author:lakesare |
feat(Topology/Instances/AddCircle/Defs): add liftIco_coe_apply_of_periodic, liftIoc_coe_apply_of_periodic (5 more lemmas) |
**Upstreaming from Carleson: [/Carleson/ToMathlib/Topology/Instances/AddCircle/Defs.lean](https://github.com/fpvandoorn/carleson/blob/master/Carleson/ToMathlib/Topology/Instances/AddCircle/Defs.lean)**
___
### Changes from carleson
- **liftIco_coe_apply_of_periodic**
- `(a : 𝕜)` => `{a : 𝕜}` (to comply with already-present variables)
- **liftIoc_coe_apply_of_periodic**, **liftIco_coe_apply_of_periodic**
- `(x : 𝕜)` => `{x : 𝕜}` (to look like surrounding lemmas)
- **liftIco_coe_apply_of_periodic**, **liftIoc_coe_apply_of_periodic**
- refactor
- **liftIco_eq_liftIco**, **liftIoc_eq_liftIoc**, **liftIco_eq_liftIoc**
- `(a' : 𝕜)` => `{a': k}` (for consistency with the existing argument `{a : 𝕜}`)
### Note
There is a comment in the Carleson file suggesting renaming `liftIco_coe_apply_of_periodic`, `liftIoc_coe_apply_of_periodic`, `liftIco_coe_apply`, and `liftIoc_coe_apply` together ([here](https://github.com/fpvandoorn/carleson/blob/master/Carleson/ToMathlib/Topology/Instances/AddCircle/Defs.lean#L27)), but the intended names are not specified. In my mind the names are already fine, so I didn't change them. |
carleson
t-topology
|
34/0 |
Mathlib/Topology/Instances/AddCircle/Defs.lean |
1 |
4 |
['github-actions', 'lakesare', 'mathlib-bors'] |
nobody |
0-11695 3 hours ago |
26-24591 26 days ago |
26-24848 26 days |
| 41068 |
joelriou author:joelriou |
feat(CategoryTheory/Presentable): comma categories are `κ`-accessible |
This is one of the main technical results about accessible categories.
---
- [x] depends on: #42762
- [x] depends on: #41181
- [x] depends on: #41182
- [x] depends on: #41183
- [x] depends on: #41184
- [x] depends on: #41187
- [x] depends on: #41190
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
maintainer-merge
|
460/0 |
Mathlib.lean,Mathlib/CategoryTheory/Presentable/Comma.lean |
2 |
15 |
['dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] |
nobody |
0-11590 3 hours ago |
2-35139 2 days ago |
2-56393 2 days |
| 43055 |
SnirBroshi author:SnirBroshi |
feat(SimpleGraph/Connectivity/Connected): deleting a non-bridge edge preserves reachability |
This generalizes an existing theorem about `Connected` to `Preconnected` and `Reachable`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
22/19 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean |
2 |
1 |
['github-actions'] |
nobody |
0-10614 2 hours ago |
1-2269 1 day ago |
1-2625 1 day |
| 43071 |
thomaskwaring author:thomaskwaring |
feat(GroupTheory/Nilpotent): elements with coprime orders commute |
In a nilpotent group, elements with (finite) coprime order commute.
---
[](https://gitpod.io/from-referrer/)
|
t-group-theory |
34/0 |
Mathlib/GroupTheory/Commutator/Basic.lean,Mathlib/GroupTheory/Nilpotent.lean |
2 |
1 |
['github-actions'] |
nobody |
0-7891 2 hours ago |
0-9724 2 hours ago |
0-11270 3 hours |
| 43034 |
bocowgill author:bocowgill |
feat(Data/Nat/MaxPrimeFac): add greatest prime factor |
## Summary
This PR adds a computable greatest-prime-factor operation for natural numbers, `Nat.maxPrimeFac`, together with its basic API. It returns `0` at `0`, `1` at `1`, and the greatest prime factor for `n > 1`.
This work is adapted from [Formal Conjectures PR #4817](https://github.com/google-deepmind/formal-conjectures/pull/4817), where Yael Dillies [reviewed the implementation and suggested upstreaming it to mathlib](https://github.com/google-deepmind/formal-conjectures/pull/4817#pullrequestreview-4995500952).
---
## Verification
Verification passed for the changed module and tests, `lake exe mk_all`, the style and declaration linters, and `git diff --check`. Both declared imports were confirmed necessary by removing each in turn.
## AI assistance
I used OpenAI Codex while developing the original Formal Conjectures implementation and this mathlib port. Codex assisted with searching the existing API, generating and editing portions of the Lean proofs, adapting imports and documentation, separating the computational tests, replacing deprecated API usage, diagnosing elaboration errors, and running build, lint, and diff checks.
I reviewed every submitted declaration and understand the definitions, proofs, design choices, and attributes in this PR. I can explain and justify them independently.
The original Formal Conjectures implementation contained a substantial amount of LLM-generated code. This PR therefore carries the `LLM-generated` label. |
new-contributor
t-data
LLM-generated
|
181/0 |
Mathlib.lean,Mathlib/Data/Nat/MaxPrimeFac.lean,MathlibTest/MaxPrimeFac.lean |
3 |
52 |
['SnirBroshi', 'YaelDillies', 'bocowgill', 'github-actions'] |
YaelDillies assignee:YaelDillies |
0-2674 44 minutes ago |
0-2833 47 minutes ago |
1-70938 1 day |
| 42351 |
vihdzp author:vihdzp |
refactor: replace `IsWellFounded` with `WellFounded` |
This PR is an attempt to deprecate IsWellFounded. The reason it that it is entirely equivalent to WellFounded, with the only difference being that IsWellFounded is a class. This PR instead marks WellFounded as a class.
This PR has been re-opened from #35602, with permission.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
A lot of this diff is either find+replace changes, or changes in indentation.
- [x] depends on: #42359
- [x] depends on: #42361
- [x] depends on: #42368
- [x] depends on: #42422
[](https://gitpod.io/from-referrer/)
|
t-order
tech debt
|
438/473 |
Mathlib/Algebra/EuclideanDomain/Defs.lean,Mathlib/Algebra/Group/UniqueProds/Basic.lean,Mathlib/Algebra/Lie/Engel.lean,Mathlib/Algebra/Lie/Subalgebra.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Pairing.lean,Mathlib/CategoryTheory/CofilteredSystem.lean,Mathlib/CategoryTheory/Subobject/ArtinianObject.lean,Mathlib/CategoryTheory/Subobject/NoetherianObject.lean,Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Data/Fin/Tuple/BubbleSortInduction.lean,Mathlib/Data/Finset/Dedup.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finsupp/MonomialOrder/DegLex.lean,Mathlib/Data/Finsupp/WellFounded.lean,Mathlib/Data/Fintype/Card.lean,Mathlib/Data/List/Chain.lean,Mathlib/Data/List/Cycle.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Nat/Cast/WithTop.lean,Mathlib/Data/Nat/WithBot.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Data/Rel.lean,Mathlib/Data/Set/Finite/Lemmas.lean,Mathlib/Data/Sum/Order.lean,Mathlib/GroupTheory/ArchimedeanDensely.lean,Mathlib/Logic/Hydra.lean,Mathlib/Order/Antisymmetrization.lean,Mathlib/Order/Atoms.lean,Mathlib/Order/Cofinal.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/Cover.lean,Mathlib/Order/Extension/Well.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/InitialSeg.lean,Mathlib/Order/Minimal.lean,Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/PiLex.lean,Mathlib/Order/RelClasses.lean,Mathlib/Order/RelIso/Basic.lean,Mathlib/Order/RelIso/Set.lean,Mathlib/Order/RelSeries.lean,Mathlib/Order/Shrink.lean,Mathlib/Order/SuccPred/Archimedean.lean,Mathlib/Order/WellFounded.lean,Mathlib/Order/WellFoundedSet.lean,Mathlib/Order/WellQuasiOrder.lean,Mathlib/Order/WithBot.lean,Mathlib/RingTheory/Artinian/Defs.lean,Mathlib/RingTheory/Artinian/Module.lean,Mathlib/RingTheory/Bezout.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Basic.lean,Mathlib/RingTheory/FiniteLength.lean,Mathlib/RingTheory/Flat/FaithfullyFlat/Basic.lean,Mathlib/RingTheory/Length.lean,Mathlib/RingTheory/MvPolynomial/Groebner.lean,Mathlib/RingTheory/Noetherian/Basic.lean,Mathlib/RingTheory/Noetherian/Defs.lean,Mathlib/RingTheory/Polynomial/UniqueFactorization.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/SimpleModule/Basic.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Basic.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Defs.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Ideal.lean,Mathlib/RingTheory/UniqueFactorizationDomain/Nat.lean,Mathlib/RingTheory/Valuation/Archimedean.lean,Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/Notation.lean,Mathlib/SetTheory/Ordinal/Rank.lean,Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Class.lean,Mathlib/SetTheory/ZFC/PSet.lean,Mathlib/SetTheory/ZFC/Rank.lean,Mathlib/Topology/Category/Profinite/Nobeling/Basic.lean,Mathlib/Topology/NoetherianSpace.lean |
77 |
16 |
['YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] |
YaelDillies assignee:YaelDillies |
0-2013 33 minutes ago |
0-5078 1 hour ago |
7-36168 7 days |
| 43075 |
SnirBroshi author:SnirBroshi |
chore(Order/Zorn): `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-order |
5/0 |
Mathlib/Order/Zorn.lean |
1 |
1 |
['github-actions'] |
nobody |
0-1862 31 minutes ago |
0-4141 1 hour ago |
0-4129 1 hour |
| 39627 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/LapMatrix): 0 is always an eigenvalue |
and the determinant is always zero, plus a few other small 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: #39642
[](https://gitpod.io/from-referrer/)
|
t-combinatorics |
71/15 |
Mathlib/Combinatorics/SimpleGraph/LapMatrix.lean |
1 |
2 |
['github-actions', 'mathlib-dependent-issues'] |
YaelDillies assignee:YaelDillies |
0-1748 29 minutes ago |
94-48115 94 days ago |
95-9413 95 days |
| 41956 |
mckoen author:mckoen |
feat(CategoryTheory/Quotient): the quotient category is monoidal |
If `r : HomRel C` is a congruence on a (braided, symmetric) monoidal (resp. preadditive, linear) category `C` which satisfies certain compatibilities with left and right whiskering (resp. addition/scalar multiplication), then `Quotient r` is also (braided, symmetric) monoidal (resp. preadditive, linear).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-category-theory |
237/0 |
Mathlib.lean,Mathlib/CategoryTheory/Quotient/Monoidal.lean |
2 |
10 |
['dagurtomas', 'github-actions', 'joelriou', 'mckoen'] |
nobody |
0-846 14 minutes ago |
10-3448 10 days ago |
31-19368 31 days |
| 42571 |
joelriou author:joelriou |
feat(AlgebraicTopology/Simplex): edges of a subcomplex |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-topology |
35/0 |
Mathlib/AlgebraicTopology/SimplicialSet/CompStruct.lean |
1 |
2 |
['github-actions', 'joelriou'] |
nobody |
0-845 14 minutes ago |
15-50660 15 days ago |
15-50788 15 days |
| 42694 |
Brian-Nugent author:Brian-Nugent |
chore: remove `CommRingCat.of` in AlgebraicGeometry\Modules\Tilde.lean |
A number of the definitions in `AlgebraicGeometry\Modules\Tilde.lean` currently have `CommRingCat.of R` even though `R` is already of type `CommRingCat`. This PR removes these.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebraic-geometry |
4/4 |
Mathlib/AlgebraicGeometry/Modules/Tilde.lean |
1 |
1 |
['github-actions'] |
nobody |
0-845 14 minutes ago |
11-24588 11 days ago |
11-24576 11 days |
| 36146 |
Multramate author:Multramate |
feat(AlgebraicGeometry/GammaSpecAdjunction): add equivalences for Spec morphisms that commute with algebra maps |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
t-algebra
label:t-algebra$ |
47/2 |
Mathlib/Algebra/Category/CommAlgCat/Basic.lean,Mathlib/AlgebraicGeometry/GammaSpecAdjunction.lean,Mathlib/AlgebraicGeometry/Scheme.lean |
3 |
18 |
['CBirkbeck', 'Multramate', 'chrisflav', 'erdOne', 'github-actions'] |
nobody |
0-844 14 minutes ago |
53-55371 53 days ago |
66-15210 66 days |
| 43076 |
SnirBroshi author:SnirBroshi |
feat(Combinatorics/SimpleGraph/Clique): the clique number of the complete 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/)
|
|
29/1 |
Mathlib/Combinatorics/SimpleGraph/Clique.lean |
1 |
0 |
[] |
nobody |
0-723 12 minutes ago |
0-723 11 minutes ago |
0-711 11 minutes |
| 43072 |
JadAbouHawili author:JadAbouHawili |
feat(Combinatorics/SimpleGraph): independence number of cycleGraph of order 1 is 1 |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
19/0 |
Mathlib/Combinatorics/SimpleGraph/CycleGraph.lean |
1 |
3 |
['SnirBroshi', 'github-actions'] |
nobody |
0-561 9 minutes ago |
0-23696 6 hours ago |
0-23890 6 hours |
| 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 |
| 39279 |
jayscambler author:jayscambler |
feat(Cryptography/Sigma): Schnorr sigma protocol and signature scheme |
Adds `Mathlib/Cryptography/Sigma/Schnorr.lean`. New file in a new top-level directory; mathlib currently has no `Mathlib/Cryptography/`, so I've taken `Mathlib/Cryptography/Sigma/` as the natural home for sigma-protocol formalizations.
The file proves the three defining properties of Schnorr's identification scheme as a sigma protocol:
- `Schnorr.correct`: completeness. Honest verifier accepts honest signer's transcript.
- `Schnorr.specialSoundness`: from two accepting transcripts sharing the commitment but using different challenges `c, c'`, the witness `x = (s - s') / (c - c')` is recovered. Needs `q` prime so `c - c'` is invertible in `ZMod q`.
- `Schnorr.hvzkAccepts`: the HVZK simulator `g^s · (y^c)⁻¹` always yields accepting transcripts. This is the structural-correctness half of HVZK only; the distributional indistinguishability statement is a separate result and not in this PR.
On top of the sigma protocol there's `Schnorr.Signature.{keyGen, sign, verify, correct}` wrapping it as a Fiat-Shamir signature scheme; `Schnorr.Signature.correct` is a one-line corollary of `Schnorr.correct`.
Two auxiliary lemmas, `Schnorr.gpow_sub` and `Schnorr.gpow_mul`, bridge `ZMod q` arithmetic and group exponentiation under `Fintype.card G = q`. They're local to this file for now because the surrounding `gpow` API is itself cryptography-specific; if a general `ZMod q`-graded group action framework lands in mathlib later, both lemmas would become instances of it.
There's also a small `example` instantiating everything on `Multiplicative (ZMod q)` for `Fact q.Prime` to show the API typechecks. That instantiation is a toy (DLOG is trivial in that group), but it confirms the abstraction is usable.
**AI disclosure**: this PR was a collaboration between myself, Grey Haven's autocontext and Claude Opus 4.7 (Anthropic). I read each line and built locally on current master. (strawberry has three r's) |
new-contributor
LLM-generated
|
352/0 |
Mathlib.lean,Mathlib/Cryptography/Sigma/Schnorr.lean |
2 |
2 |
['github-actions'] |
nobody |
102-32963 3 months ago |
102-33042 102 days ago |
102-33520 102 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 |
93-845 3 months ago |
179-26700 179 days ago |
181-60974 181 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 |
77-53230 2 months ago |
77-54063 77 days ago |
77-54423 77 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 |
73-10158 2 months ago |
73-11594 73 days ago |
73-12115 73 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 |
67-200 2 months ago |
67-2250 67 days ago |
75-33886 75 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 |
57-72415 1 month ago |
61-22241 61 days ago |
61-22314 61 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 |
57-10143 1 month ago |
72-12753 72 days ago |
72-13027 72 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 |
54-3376 1 month ago |
54-4565 54 days ago |
54-4553 54 days |
| 41241 |
intgrah author:intgrah |
feat(Order/Category): cartesian closed and distributive structure on PartOrd and Preord |
Give `PartOrd` and `Preord` `CartesianMonoidalCategory`, `MonoidalClosed`, and `IsCartesianDistributive` instances.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-order
|
272/0 |
Mathlib.lean,Mathlib/Order/Category/PartOrd/CartesianClosed.lean,Mathlib/Order/Category/PartOrd/Distributive.lean,Mathlib/Order/Category/Preord/CartesianClosed.lean,Mathlib/Order/Category/Preord/Distributive.lean |
5 |
5 |
['github-actions', 'intgrah'] |
nobody |
52-18174 1 month ago |
53-42752 53 days ago |
53-42740 53 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 |
50-85463 1 month ago |
51-1318 51 days ago |
51-1306 51 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 |
133/0 |
Mathlib.lean,Mathlib/Topology/Sheaves/KSheaf.lean |
2 |
9 |
['github-actions', 'joelriou', 'mathlib-dependent-issues', 'ymonbru'] |
nobody |
50-61962 1 month ago |
50-61962 50 days ago |
50-72685 50 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 |
50-57031 1 month ago |
50-57620 50 days ago |
50-57608 50 days |
| 41111 |
erdkocak author:erdkocak |
feat(ModelTheory): add cardinal-generated substructure API |
This is the first PR in a sequence splitting #40561.
It adds a `CardinalLTGenerated` predicate for substructures, basic closure and map lemmas, and the finitely generated specialization.
Co-authored-by: Yağız Kaan Aydoğdu <y.kaan.aydogdu@gmail.com>
Co-authored-by: Yusuf Demir <yusufdemir12610@gmail.com>
Advised-by: Ayhan Günaydın <ayhan.gunaydin@bogazici.edu.tr>
Advised-by: Metin Ersin Arıcan <metin.arican@bogazici.edu.tr>
Please note that we utilized agentic AI tools (Claude Opus, ChatGPT Codex) during the development of this PR. Most of the proofs of the major theorems are direct translations from human-language source material (see the diff in `references.bib`) into Lean proofs using the mentioned AI tools. However, all design and formalization decisions were made by us. |
t-logic
new-contributor
LLM-generated
|
51/0 |
Mathlib/ModelTheory/FinitelyGenerated.lean,Mathlib/ModelTheory/Substructures.lean |
2 |
9 |
['NoahW314', 'erdkocak', 'felixpernegger', 'github-actions'] |
nobody |
50-56176 1 month ago |
50-56983 50 days ago |
56-54660 56 days |
| 39864 |
8e7 author:8e7 |
feat(Combinatorics/SimpleGraph/Acyclic): helly property on subtrees |
This PR adds several lemmas regarding connected subsets of vertices in trees (subtrees). The main result is the Helly property for subtrees: For a finite set of subtrees, if any pair of subtrees intersect, then there is a common vertex in all subtrees.
This lemma is part of an effort to formalize tree decompositions (see #38334), and will be used in a future PR to prove `G.cliqueNum - 1 <= G.treeWidth`.
AI Usage: The proofs were developed with the help of Claude Code. I vouch for all the code written and understand the content fully.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
LLM-generated
|
114/0 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean |
2 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
49-77197 1 month ago |
49-77752 49 days ago |
68-5513 68 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 |
48-15809 1 month ago |
48-17476 48 days ago |
48-18911 48 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 |
46-33667 1 month ago |
46-33667 46 days ago |
62-75932 62 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 |
45-27998 1 month ago |
45-30441 45 days ago |
45-38206 45 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 |
39-31555 1 month ago |
39-34155 39 days ago |
39-34159 39 days |
| 39505 |
dannyhe652 author:dannyhe652 |
feat(SimpleGraph): add Vizing's theorem for edge coloring |
Hi! I'm a high school student interested in formulization of mathematics in Lean. Recently, I have worked on a project to formulize Vizing Theorem with Daniel Raggi from Cambridge University with AI assistance. In particular, we first drafted an outline for the proof, and built the proof using Claude Opus 4.5 and 4.6. The proof is optimized using Aristotle and finally reviewed by ourselves. We rewrote some parts of the code and some comments. The code now builds cleanly and we wish this code to be reviewed by Lean Community. I am aware that there are previous attempts, some being successful, on formulizing Vizing Theorem, including this one by Arohee https://github.com/aroheebhoja/vizing. However, I believe that no PR have been made. Our proof is not based on his proof, but it could be helpful for the community to review that project as well. I sincerely thank everyone who has time to verify and review our code. A summary of the project is as follows. Please contact me if there are any questions or problems.
## Summary
This PR completes the proof of **Vizing's theorem** for edge coloring in simple graphs, proving that the chromatic index of any graph is either Δ (the maximum degree) or Δ + 1.
## Changes
### New files
- **`Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeColoring.lean`** — Core definitions
- `edgeColoring`: Type for line graph colorings
- `edgeColorable`: Graph is edge-colorable with n colors
- `chromaticIndex`: Chromatic index as ℕ
- **`Mathlib/Combinatorics/SimpleGraph/Coloring/KempeChain.lean`** — Kempe Chain
- Coloring observables: `incidentEdges`, `incidentColors`, `missingColors`
- Kempe subgraph structure with bounded degree
- `swapKempe`: Recolor edges in a connected component via color-swapping
- **`Mathlib/Combinatorics/SimpleGraph/Coloring/VizingFan.lean`** — Vizing Fan Rotation
- `IsFan`: Vizing fan structure with special color properties
- Fan maximality and dichotomy on terminal vertices
- `rotate_termA`: Extend coloring when a free color exists at both endpoints
- `vizingAdjacencyLemma`: Main adjacency lemma for both cases
- **`Mathlib/Combinatorics/SimpleGraph/Coloring/VizingTheorem.lean`** — Main theorems
- `edge_eq_of_color_eq`: Proper edge colorings assign different colors to distinct edges sharing a vertex
- `maxDegree_le_chromaticIndex`: χ'(G) ≥ Δ(G)
- `chromaticIndex_bot`: Empty graph has chromatic index 0
- `vizingUpperBound_aux`: Inductive proof of upper bound on number of edge
- `vizingTheorem`: χ'(G) ∈ {Δ(G), Δ(G) + 1}
### Modified files
- `Mathlib.lean` — Added imports for the four new coloring modules
## Technical Approach
**Lower bound** (χ'(G) ≥ Δ):
- Edges incident to a max-degree vertex form a clique in the line graph
- Clique number lower-bounds chromatic number
**Upper bound** (χ'(G) ≤ Δ + 1):
- Induction on the number of edges
- Base case: empty graph colored with 0 colors
- Inductive step:
- If a free color exists at both endpoints of an edge, then extend directly
- Otherwise:
- Build a maximal fan from one endpoint
- Apply dichotomy: either extend via Term-A (free color at both endpoints) or Term-B (Kempe swap)
- Term-B uses a three-vertex connectivity argument to derive a contradiction, forcing the fan to extend
## Key Lemmas
- `incidentEdges`, `incidentColors`, `missingColors`: Coloring observables at vertices
- `kempeSubgraph`: Restricted subgraph of edges with two specific colors
- `swapKempe`: Recolor via Kempe chain swapping
- `IsFan.singleton`: Trivial fan always valid
- `IsFan.length_le_card`: Fan length is bounded by vertex count
- `IsFan.dichotomy`: Maximal fan satisfies Term-A or Term-B
- `IsFan.rotate_termA`: Term-A case extends the coloring inductively
- `vizingAdjacencyLemma`: Handles both cases for extending one edge
- `vizingUpperBound_aux`: Framework for full inductive proof
- `edge_eq_of_color_eq`: Distinctness of edges with same color
## Testing
All four modules compile with no `sorry` nor errors or warnings.
## References
* V. G. Vizing, *On an estimate of the chromatic class of a p-graph*,
Diskret. Analiz. 3 (1964), 25–30.
## 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
|
1913/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeColoring.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/KempeChain.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VizingFan.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VizingTheorem.lean |
5 |
4 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
39-841 1 month ago |
65-62502 65 days ago |
86-38343 86 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 |
38-84966 1 month ago |
38-85487 38 days ago |
46-68436 46 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 |
38-39276 1 month ago |
63-36284 63 days ago |
200-40020 200 days |
| 41732 |
vaca22 author:vaca22 |
feat(RingTheory/ClassGroup): add mulEquiv_mk0 |
Add a simp lemma describing how the class-group equivalence induced by a ring equivalence acts on the class of a nonzero ideal.
The image is the class of the ideal mapped along the ring equivalence. The proof compares the corresponding fractional ideals through the existing class-group equivalence and localization membership API.
**AI disclosure**: this PR is primarily LLM-generated (Claude Code).
|
t-ring-theory
new-contributor
LLM-generated
|
43/0 |
Mathlib/RingTheory/ClassGroup/Basic.lean |
1 |
3 |
['github-actions', 'vaca22'] |
nobody |
38-28267 1 month ago |
40-43541 40 days ago |
40-43529 40 days |
| 41729 |
vaca22 author:vaca22 |
feat(RingTheory/DedekindDomain): add divisor group core |
Add the formal divisor group of a Dedekind domain and bundle the existing factorization API as an additive equivalence between nonzero fractional ideals and divisors.
Divisors are finitely supported integer-valued functions on height-one primes. divisor records FractionalIdeal.count, ofDivisor reconstructs a fractional ideal from prime powers, and divisorEquiv proves these operations are inverse and send ideal multiplication to divisor addition.
------------
This is the core of the earlier larger proposal. Principal divisors and weighted degrees are deliberately left for later pull requests.
**AI disclosure**: this PR is primarily LLM-generated (Claude Code).
|
t-ring-theory
new-contributor
LLM-generated
|
100/0 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Divisor.lean |
2 |
4 |
['github-actions', 'grunweg', 'vaca22'] |
nobody |
38-11714 1 month ago |
38-11714 38 days ago |
40-8905 40 days |
| 40941 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add stabilizers of vectors in representations |
Add Representation.stabilizer: the subgroup fixing a vector in a representation.
Provide basic lemmas for zero vectors, scalar multiples, sums, intertwining maps, and conjugations, as a first step toward smooth representations. Make representation-theoretic arguments use this specialized API instead of repeatedly unfolding the fixed-vector condition or routing through the more general MulAction stabilizer API. |
t-algebra
new-contributor
label:t-algebra$ |
68/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Stabilizer.lean |
2 |
70 |
['JX-Mo', 'Whysoserioushah', 'github-actions', 'tb65536'] |
nobody |
35-74694 1 month ago |
37-34212 37 days ago |
58-47245 58 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 |
35-72598 1 month ago |
35-81448 35 days ago |
35-82777 35 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 |
35-1602 1 month ago |
35-15345 35 days ago |
35-15333 35 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 |
34-74383 1 month ago |
34-78469 34 days ago |
34-78457 34 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 |
32-846 1 month ago |
53-54310 53 days ago |
85-17394 85 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 |
30-47961 30 days ago |
30-85931 30 days ago |
30-85919 30 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 |
30-47942 30 days ago |
30-85931 30 days ago |
30-85919 30 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 |
29-37756 29 days ago |
29-38540 29 days ago |
29-46999 29 days |
| 41525 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add Smooth.Basic for smooth representations |
This PR introduces basic setup for smooth representations of a topological group. Hopefully it will serve as preliminary content for those who are interested in formalizing representation theory for p-adic reductive groups in the future. We introduce the following in the file:
1. Define smoothness for representations of a topological group. It is a property for a representation to be smooth: the stabilizer of any vector is open.
2. Prove basic closure properties: subrepresentations, quotient representations, tensor products, direct sums of smooth representations are smooth.
3. Construct smoothHom and contragredient: they are obtained by cutting out smooth vectors from the naive hom and dual.
- [ ] depends on #40941
- [ ] depends on #41081 |
new-contributor
t-algebra
label:t-algebra$ |
345/0 |
Mathlib.lean,Mathlib/RepresentationTheory/Smooth/Basic.lean,Mathlib/RepresentationTheory/Stabilizer.lean,Mathlib/RepresentationTheory/Subrepresentation.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean |
5 |
4 |
['JX-Mo', 'felixpernegger', 'github-actions'] |
nobody |
29-28165 29 days ago |
37-34014 37 days ago |
45-56128 45 days |
| 41081 |
JX-Mo author:JX-Mo |
feat(RepresentationTheory): add Subrepresentation.toRepresentation_apply and Subrepresentation.quotient |
Add a lemma for `Subrepresentation` recording the inherited group action. Help avoid unfolding `Subrepresentation.toRepresentation` when analyzing the action.
Add the `quotient` representation associated to a `Subrepresentation`. It wraps up `Representation.quotient` and `Representation.Subrepresentation` and then we also record the inherited group action.
|
t-algebra
new-contributor
label:t-algebra$ |
26/0 |
Mathlib/RepresentationTheory/Subrepresentation.lean |
1 |
17 |
['JX-Mo', 'Whysoserioushah', 'github-actions'] |
nobody |
29-26748 29 days ago |
42-66973 42 days ago |
58-36530 58 days |
| 42080 |
dkunert author:dkunert |
feat(Algebra/Order/Floor): add fract-absorption lemmas for sums and d… |
Add the four one-sided absorption lemmas for `Int.fract`
* `Int.fract_fract_add : fract (fract a + b) = fract (a + b)`
* `Int.fract_add_fract : fract (a + fract b) = fract (a + b)`
* `Int.fract_fract_sub : fract (fract a - b) = fract (a - b)`
* `Int.fract_sub_fract : fract (a - fract b) = fract (a - b)`
all tagged `@[simp]`, together with the two-sided combinations `Int.fract_fract_add_fract` and `Int.fract_fract_sub_fract` as derived corollaries (not `@[simp]`, since their LHS is already simplified by the one-sided lemmas).
Mathlib currently has the existence form (`Int.fract_add`), the inequalities (`Int.fract_add_le`, `Int.fract_add_fract_le`), and absorption equalities only for integer casts (the `Int.fract_add_intCast` family); the `fract`-absorbing equalities themselves were missing (closest relatives: `Int.fract_fract`, `Int.fract_eq_fract`). With the new `@[simp]` set, goals like `fract (fract x + fract y) = fract (x + y)` now close by `simp` — they did not before.
The one-sided factoring of the add lemmas was suggested by Eric Wieser on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Int.2Efract.20of.20a.20sum.2Fdifference.20reduced.20mod.201); the two-sided add corollary is the lemma his two suggestions "combine to give". The sub analogues and the `@[simp]` tagging follow the same pattern. Naming follows the file's `fract_add_intCast`/`fract_intCast_add` convention.
I used the Anthropic LLMs Opus 4.8 and Fable 5 via Claude Code and made the central design decisions. The LLMs produced all the lemmas and proofs. The four lemmas and the two corollaries are fully proved and break nothing in Mathlib. They conform to the style and simpNF conventions. I take responsibility for this contribution.
--- |
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
22/0 |
Mathlib/Algebra/Order/Floor/Ring.lean |
1 |
3 |
['dkunert', 'github-actions'] |
nobody |
27-63634 27 days ago |
29-63687 29 days ago |
29-63675 29 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 |
26-63687 26 days ago |
38-23565 38 days ago |
38-24595 38 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 |
26-38020 26 days ago |
75-32778 75 days ago |
75-32766 75 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 |
26-37922 26 days ago |
29-75959 29 days ago |
29-75947 29 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 |
26-2241 26 days ago |
26-2873 26 days ago |
41-49751 41 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 |
25-75479 25 days ago |
26-39550 26 days ago |
26-39538 26 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 |
25-60391 25 days ago |
25-60957 25 days ago |
25-60945 25 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 |
24-37080 24 days ago |
25-64888 25 days ago |
25-64876 25 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 |
24-37054 24 days ago |
25-63826 25 days ago |
25-67022 25 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 |
24-37054 24 days ago |
26-14457 26 days ago |
26-15269 26 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 |
24-37047 24 days ago |
26-56972 26 days ago |
26-56960 26 days |
| 41696 |
vaca22 author:vaca22 |
feat(RingTheory): generalize relNorm_eq_pow_of_isMaximal to separable fraction field extensions |
This PR relaxes the hypothesis of Ideal.relNorm_eq_pow_of_isMaximal and its supporting Ring.NormalClosure instances.
Originally the theorem required the fraction ring of base Dedekind domain R to be a perfect field. Now we only require the fraction field extension to be separable.
The perfect field condition excludes function fields with imperfect constant fields, which is an important case we want to support. The core mathematical insight is that the normal closure of a separable field extension stays separable, so we can construct the Galois structure without a perfect base.
This change is fully backwards compatible: any existing code relying on the old perfect field assumption still compiles, since perfect fields automatically give separable extensions. Only two files are modified: NormalClosure.lean and RelNorm.lean, with small diff and no extra imports.
AI disclosure: I used AI tools to assist with initial code drafting and full CI validation. All mathematical reasoning and proof logic I worked through independently, and I can explain every adjustment in review. My original PR text relied too heavily on AI output, I’ve fully rewritten this description manually. |
new-contributor
t-ring-theory
LLM-generated
|
23/3 |
Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/NormalClosure.lean |
3 |
15 |
['felixpernegger', 'github-actions', 'leanprover-radar', 'vaca22', 'xroblot'] |
nobody |
23-61993 23 days ago |
32-25024 32 days ago |
37-33922 37 days |
| 41991 |
dahlem author:dahlem |
fix(Analysis/Matrix): anchor the elementwise matrix norm's topology to instTopologicalSpaceMatrix |
With `open scoped Matrix.Norms.Elementwise`,
```lean
noncomputable example {m n : Type*} [Fintype m] [Fintype n] :
Norm (Matrix m n ℝ →L[ℝ] Matrix m n ℝ) := inferInstance
```
fails to synthesize, even though the norm-induced topology on `Matrix m n ℝ` is definitionally equal to the ambient `instTopologicalSpaceMatrix` (`rfl` proves the equality).
What goes wrong: the `→L[ℝ]` type is elaborated with the *direct* instance `instTopologicalSpaceMatrix`, while `ContinuousLinearMap.hasOpNorm`'s conclusion carries topologies that are *projections* of its `SeminormedAddCommGroup` arguments. During resolution, pending synthesis does find `Matrix.seminormedAddCommGroup`, but the projected topology then has to unify with `instTopologicalSpaceMatrix`, and the projection chain through `fast_instance% Pi.seminormedAddCommGroup` does not reduce to the same term. (Types like `ℝ` or `EuclideanSpace` don't hit this because they have no direct `TopologicalSpace` instance competing with the projection path — matrices do.)
**Fix**: anchor the topology field of `Matrix.seminormedAddCommGroup` / `Matrix.normedAddCommGroup` to `instTopologicalSpaceMatrix` via `PseudoMetricSpace.replaceTopology` / `MetricSpace.replaceTopology` with `rfl` proofs — the standard forgetful-inheritance pattern; the Frobenius family in the same file already achieves this through `PiLp.seminormedAddCommGroupToPi`. Anchoring to a freshly-elaborated `inferInstanceAs <| TopologicalSpace (m → n → α)` is *not* sufficient — the anchor must be the same instance term that appears in elaborated goal types, which is why this also adds `public import Mathlib.Topology.Instances.Matrix` (no cycle; that file only imports `LinearAlgebra.Matrix.*` and `Topology.Algebra.*`).
`norm`, `dist`, and the uniformity are untouched — only the packaging of the topology field changes, in the direction of the canonical instance. The fix works at Lean's default `maxSynthPendingDepth`. It also unblocks smul-continuity resolution in Fréchet-derivative developments over matrix codomains (`HasFDerivAt.const_smul` sites), where the goal's topology argument is the same non-reducing projection.
Motivation: hit in a downstream project (~4300 build jobs of matrix-valued Fréchet calculus) where ten files currently need local high-priority compat instances to work around this. A downstream repair cannot be shipped safely: boosting a repaired `SeminormedAddCommGroup`'s priority steals `‖·‖` resolution from files mixing norm scopes (e.g. `Matrix.Norms.L2Operator` sections of a Davis–Kahan development silently re-resolve to the elementwise norm). The fix has to live in the instance definitions.
Validation: full `lake build Mathlib` passes with the change (8666 jobs), plus new regression tests in `MathlibTest/MatrixNormTopology.lean` (both `rfl` agreements, the `Norm` synthesis above, `‖f‖` usage, `ContinuousConstSMul` unification).
Open questions for reviewers:
- Should the `linftyOp*` family get the same anchor for uniformity of design?
- Is `letI I := fast_instance% …; { I with … }` the preferred spelling here?
- Is the added import acceptable, or should the anchored instances move to a file that already sees `Topology.Instances.Matrix`?
Disclosure: this PR was prepared with AI assistance (Claude); the diagnosis and fix were validated by the full mathlib build and the included regression tests.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
|
t-analysis
new-contributor
LLM-generated
|
60/4 |
Mathlib/Analysis/Matrix/Normed.lean,MathlibTest/MatrixNormTopology.lean |
2 |
2 |
['github-actions'] |
nobody |
23-42683 23 days ago |
33-20167 33 days ago |
33-20155 33 days |
| 41869 |
FawadHa1der author:FawadHa1der |
perf(FieldTheory/RatFunc/Valuation): explicit proof instead of aesop |
A little longer explicit proof but may be bench will show it could be worth it. |
new-contributor
t-algebra
will-close-soon
label:t-algebra$ |
8/2 |
Mathlib/FieldTheory/RatFunc/Valuation.lean |
1 |
8 |
['FawadHa1der', 'github-actions', 'grunweg', 'leanprover-radar'] |
nobody |
23-14685 23 days ago |
23-14685 23 days ago |
23-17568 23 days |
| 40728 |
Formalistic03 author:Formalistic03 |
feat(Combinatorics/SimpleGraph/Hasse): more properties of Hasse graphs of linear orders |
- two forms of an intermediate value theorem for linear orders
- the Hasse graph of a linear order is acyclic
- a path graph is locally finite
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
large-import
|
99/24 |
Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/CycleGraph.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Data/Fintype/Defs.lean |
4 |
23 |
['Formalistic03', 'SnirBroshi', 'github-actions', 'mathlib-merge-conflicts'] |
nobody |
23-12641 23 days ago |
23-15741 23 days ago |
62-2660 62 days |
| 42093 |
DrDMT-VR author:DrDMT-VR |
feat(Topology/Algebra/Ring): topological closure of a two-sided ideal |
Defines `TwoSidedIdeal.closure`, the topological closure of a two-sided ideal in a
topological ring, together with its basic API. This mirrors the existing one-sided
`Ideal.closure` (`Mathlib/Topology/Algebra/Ring/Ideal.lean`), but is stated in the
generality of non-unital non-associative topological rings (`IsTopologicalRing` over
`NonUnitalNonAssocRing`), where one-sided ideals are unavailable.
New declarations (namespace `TwoSidedIdeal`): `closure`, `coe_closure`,
`mem_closure_iff`, `le_closure`, `closure_mono`, `closure_minimal`, `isClosed_closure`,
`closure_eq_of_isClosed`, `closure_closure`, `closure_top`, and `closure_ne_top` (in a
unital ring whose units are open, e.g. a Banach algebra via `Units.isOpen`, the closure of
a proper two-sided ideal is proper).
Mathlib has no topological-closure API for `TwoSidedIdeal`. Closed two-sided ideals are
the basic objects of C*-algebra ideal theory, and `closure_ne_top` is the standard first
step toward "maximal two-sided ideals are closed".
------
- should the definition be called `topologicalClosure` instead? (The current name matches `Ideal.closure`.)
- Claude was utilized throughout the project. It helped with coding, syntax and running repetitive testing.
|
t-topology
new-contributor
LLM-generated
|
114/0 |
Mathlib.lean,Mathlib/Topology/Algebra/Ring/TwoSidedIdeal.lean |
2 |
5 |
['FractalDevTeam', 'github-actions', 'grunweg'] |
nobody |
23-7430 23 days ago |
23-29660 23 days ago |
29-6673 29 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 |
3 |
['github-actions'] |
nobody |
22-62471 22 days ago |
23-6534 23 days ago |
23-7191 23 days |
| 41962 |
juanjomadrigal author:juanjomadrigal |
feat(Counterexamples): the space ω₁ |
Introduce the `ω₁` ordinal space that, when given the order topology, may be used to build some nice counterexamples in general topology, namely
- A subspace of a paracompact space need not be paracompact
- The product of two normal spaces need not be normal
- A subspace of a normal space need not be normal
- A regular space need not be normal
This PR introduces the basic definitions and order-theoretic properties, in order to have a good set of tools to work with.
---
Subsequent commits / PRs would roughly cover:
- Topology definitions in that space
- Compactness (and non-compactness) properties
- Countability properties
- Non-metrizability
- Each of the properties above
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-topology
|
152/0 |
Counterexamples.lean,Counterexamples/Omega1Space.lean |
2 |
67 |
['FrankieNC', 'felixpernegger', 'github-actions', 'grunweg', 'j-loreaux', 'juanjomadrigal', 'plp127', 'vihdzp'] |
nobody |
22-53091 22 days ago |
22-53091 22 days ago |
30-77254 30 days |
| 38214 |
emlis42 author:emlis42 |
feat(Algebra/ContinuedFractions): add Euler's continued fraction |
This PR formalizes Euler continued fractions by providing `euler` which construct one by giving head term and coefficients with some basic property.
We also introduce a transformation `GenContFract.toEuler` that maps a generalized continued fraction `g : GenContFract K` to an equivalent Euler continued fraction. |
new-contributor
t-algebra
maintainer-merge
label:t-algebra$ |
364/0 |
Mathlib.lean,Mathlib/Algebra/ContinuedFractions/Euler.lean |
2 |
74 |
['YaelDillies', 'emlis42', 'github-actions', 'mathlib-bors', 'wwylele'] |
nobody |
22-24590 22 days ago |
22-25149 22 days ago |
109-80030 109 days |
| 42345 |
TomOleDiem author:TomOleDiem |
feat(Analysis/Normed/Algebra): characterize continuous one-parameter subgroups |
This PR proves that every continuous one-parameter subgroup of the unit group of a real Banach algebra has a unique exponential generator.
The theorem applies to any function-like type from `Multiplicative ℝ` to `Eˣ` carrying `MonoidHomClass` and `ContinuousMapClass` instances.
The proof first derives differentiability from an invertible local average. It then identifies the subgroup with the exponential of its derivative at zero and proves uniqueness by differentiation at zero.
The new module builds successfully and passes `lint-style`.
Substantial AI assistance was used to develop and review this formalization. |
t-analysis
new-contributor
LLM-generated
|
248/0 |
Mathlib.lean,Mathlib/Analysis/Normed/Algebra/OneParameterSubgroup.lean |
2 |
3 |
['TomOleDiem', 'github-actions'] |
nobody |
22-20370 22 days ago |
22-20370 22 days ago |
22-20358 22 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 |
22-6718 22 days ago |
27-41307 27 days ago |
27-66023 27 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 |
20-47701 20 days ago |
37-23989 37 days ago |
37-23977 37 days |
| 42350 |
sankalpsthakur author:sankalpsthakur |
feat(Computability): characterize halted TM1 configurations |
Adds `Turing.TM1.step_none_iff`, characterizing exactly when a single TM1 step returns `none`: iff the configuration's current label is already `none`. Tagged `@[simp]`.
Motivated by #35366.
### Validation
Built locally: `lake build Mathlib.Computability.TuringMachine.PostTuringMachine` — succeeds (688 jobs, cache-backed).
Closes #35366
### 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-computability
new-contributor
LLM-generated
|
5/0 |
Mathlib/Computability/TuringMachine/PostTuringMachine.lean |
1 |
2 |
['github-actions'] |
nobody |
19-82945 19 days ago |
19-83536 19 days ago |
20-81101 20 days |
| 42352 |
sankalpsthakur author:sankalpsthakur |
feat(RingTheory): coprimality of a sum and difference |
Adds `Int.isCoprime_add_sub`: if `m, n` are coprime and `m + n` is odd (equivalently, `m, n` have opposite parity), then `m + n` and `m - n` are coprime.
Motivated by #37366.
### Validation
Built locally: `lake build Mathlib.RingTheory.Int.Basic` — succeeds.
Closes #37366
### 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
|
9/0 |
Mathlib/RingTheory/Int/Basic.lean |
1 |
4 |
['SnirBroshi', 'github-actions', 'sankalpsthakur'] |
nobody |
19-82716 19 days ago |
22-6492 22 days ago |
22-6480 22 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 |
19-77514 19 days ago |
21-700 21 days ago |
21-688 21 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 |
19-28996 19 days ago |
19-30201 19 days ago |
38-12190 38 days |
| 42446 |
ipezygj author:ipezygj |
feat(Algebra/Order/Ring/Pow): bernoulli's inequality for a subtracted term |
Adds `one_sub_mul_le_pow`, the mirror of `one_add_mul_le_pow`:
```lean
lemma one_sub_mul_le_pow (H : a ≤ 2) (n : ℕ) : 1 - n * a ≤ (1 - a) ^ n
```
`Mathlib/Algebra/Order/Ring/Pow.lean` already carries Bernoulli in the `1 + a` form
and one reformulation of it (`one_add_mul_sub_le_pow`); this is the `1 - a` form,
which is the shape that comes up when bounding a product of complements — for
example showing that `1 - (1 - p) ^ n ≤ n * p`, the comparison between the Šidák and
Bonferroni corrections in statistics, which follows immediately by `linarith`.
The hypothesis `a ≤ 2` is exactly what `one_add_mul_le_pow`'s `-2 ≤ -a` becomes, and
it is load-bearing rather than decorative: the inequality fails for `a > 2` (checked
numerically over a grid before writing the proof).
Proof is two lines and reduces directly to the existing lemma.
This is my first contribution to mathlib, so please do point out anything that does
not match the library's conventions.
---
[Blueprint] not applicable.
|
t-algebra
new-contributor
label:t-algebra$ |
6/0 |
Mathlib/Algebra/Order/Ring/Pow.lean |
1 |
3 |
['github-actions'] |
nobody |
19-26584 19 days ago |
19-29584 19 days ago |
19-29572 19 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$ |
66/35 |
Mathlib/Algebra/ContinuedFractions/Basic.lean,Mathlib/Algebra/ContinuedFractions/ContinuantsRecurrence.lean,Mathlib/Algebra/ContinuedFractions/Determinant.lean,Mathlib/Algebra/ContinuedFractions/Translations.lean |
4 |
4 |
['emlis42', 'github-actions', 'grunweg'] |
kim-em assignee:kim-em |
19-1746 19 days ago |
104-29628 104 days ago |
104-29616 104 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
|
60/1 |
Mathlib/Data/List/PeriodicityLemma.lean |
1 |
8 |
['SnirBroshi', 'github-actions', 'theebayuser'] |
nobody |
19-1440 19 days ago |
36-65407 36 days ago |
36-65395 36 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
|
44/3 |
Mathlib/Data/List/Infix.lean |
1 |
3 |
['github-actions', 'theebayuser'] |
nobody |
18-85563 18 days ago |
35-78622 35 days ago |
35-78610 35 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
t-combinatorics
new-contributor
|
64/0 |
Mathlib/Data/Finset/Image.lean,Mathlib/Order/Partition/Finpartition.lean |
2 |
4 |
['github-actions', 'lydia-schiff'] |
nobody |
18-82708 18 days ago |
18-85517 18 days ago |
19-4501 19 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'] |
ocfnash assignee:ocfnash |
18-80477 18 days ago |
18-83029 18 days ago |
70-50394 70 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 |
18-24712 18 days ago |
18-25330 18 days ago |
60-45013 60 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 |
17-47201 17 days ago |
17-48635 17 days ago |
30-78043 30 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 |
17-43646 17 days ago |
17-43646 17 days ago |
17-43634 17 days |
| 42499 |
attilavjda author:attilavjda |
doc(Data/ENat,ENNReal): fix swapped docstring on mul_iInf_of_ne |
Fixed left from right multiplication and "see-also" to point at mul_iInf
[Aristotle helped](https://github.com/attilavjda/formal-contributions/blob/main/mul_iInf_of_ne/PR3.lean) with finding the error, generating and verifying a solution by tests, and made a guide to 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/)
|
t-data
new-contributor
|
5/5 |
Mathlib/Data/ENNReal/Inv.lean,Mathlib/Data/ENat/Lattice.lean |
2 |
3 |
['github-actions'] |
nobody |
17-19338 17 days ago |
17-38899 17 days ago |
17-38887 17 days |
| 42357 |
SynBurz author:SynBurz |
feat: the Krull dimension of the product of finitely many rings is equal to the maximum of Krull dimensions of the factors |
Add `ringKrullDim_pi_eq_iSup_ringKrullDim`. Also add useful defs: `LTSeries.sigmaEquiv`, `PrimeSpectrum.sigmaToPiOrderIso`, and lemmas `PrimeSpectrum.sigmaToPiOrderIso_apply`, Pi.not_comap_evalRingHom_le_comap_of_neq`, `LTSeries.sigma_fst_eq_fst`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor |
93/0 |
Mathlib/Order/RelSeries.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean |
3 |
5 |
['SynBurz', 'github-actions', 'wwylele'] |
nobody |
17-10028 17 days ago |
22-660 22 days ago |
22-1051 22 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'] |
kex-y assignee:kex-y |
16-1745 16 days ago |
17-84966 17 days ago |
17-84954 17 days |
| 42518 |
theebayuser author:theebayuser |
feat(Geometry/Euclidean): add the British flag theorem |
Adds the British flag theorem to `Mathlib/Geometry/Euclidean/`
The rectangle is expressed as a parallelogram, the diagonals `a c` and
`b d` share a midpoint with a right angle at a.
Main results
* `EuclideanGeometry.dist_sq_add_dist_sq_eq_dist_sq_add_dist_sq_of_angle_eq_pi_div_two` —
the British flag theorem.
* `EuclideanGeometry.dist_sq_add_dist_sq_eq_dist_sq_add_dist_sq_iff_angle_eq_pi_div_two` —
the if-and-only-if form: among parallelograms the identity characterises rectangles. It needs
no nondegeneracy hypotheses, thanks to the `angle 0 v = π / 2` convention.
* `EuclideanGeometry.dist_sq_add_dist_sq_eq_dist_sq_add_dist_sq_add_two_mul_dist_mul_dist_mul_cos_angle`
— a generalisation to arbitrary parallelograms with a law-of-cosines correction term.
* `InnerProductGeometry.norm_sq_add_norm_sub_add_sq_eq_norm_sub_sq_add_norm_sub_sq_add_two_inner`
and its `…_iff_inner_eq_zero` corollary — the underlying inner-product identity, in the vector
layer.
AI disclosure
This contribution was developed with assistance from Claude Code.
|
t-euclidean-geometry
new-contributor
LLM-generated
|
112/0 |
Mathlib.lean,Mathlib/Geometry/Euclidean/BritishFlag.lean,docs/1000.yaml |
3 |
5 |
['github-actions', 'theebayuser', 'wwylele'] |
jsm28 assignee:jsm28 |
15-32800 15 days ago |
16-67803 16 days ago |
16-67791 16 days |
| 34487 |
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 the usefulness of 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`.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
large-import
label:t-algebra$ |
85/16 |
Mathlib/Geometry/Convex/Cone/Dual.lean,Mathlib/LinearAlgebra/Dual/Lemmas.lean,Mathlib/LinearAlgebra/PerfectPairing/Basic.lean,Mathlib/LinearAlgebra/SesquilinearForm/Basic.lean |
4 |
4 |
['github-actions', 'martinwintermath', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] |
joelriou assignee:joelriou |
15-32669 15 days ago |
15-33999 15 days ago |
29-23899 29 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 |
15-22316 15 days ago |
21-30214 21 days ago |
21-34196 21 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 |
15-15608 15 days ago |
23-6429 23 days ago |
23-6963 23 days |
| 31092 |
FlAmmmmING author:FlAmmmmING |
feat(Algebra/Group/ForwardDiff.lean): Add theorem `sum_shift_eq_fwdDiff_iter`. |
---
<!-- 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-algebra
new-contributor
label:t-algebra$ |
17/1 |
Mathlib/Algebra/Group/ForwardDiff.lean |
1 |
24 |
['BeibeiX0', 'FlAmmmmING', 'Ruben-VandeVelde', 'dagurtomas', 'github-actions', 'jcommelin', 'mathlib-bors', 'mathlib4-merge-conflict-bot'] |
eric-wieser assignee:eric-wieser |
15-1748 15 days ago |
60-72731 60 days ago |
115-8374 115 days |
| 38194 |
ryanncode author:ryanncode |
feat(LinearAlgebra/BilinearForm): add indefinite metrics |
Add the `IndefiniteMetric` structure to support vector spaces equipped with a non-degenerate, symmetric, indefinite bilinear form.
Provide the algebraic foundation for indefinite inner product spaces by formalizing the metric via `LinearMap.BilinForm` and extracting its associated quadratic form without enforcing the `IsPosSemidef` typeclass.
Previously, mathlib required strictly positive-definite metrics to instantiate inner product spaces (`InnerProductSpace`), which prevented the formalization of indefinite geometries without causing typeclass inference failures. Bridge this gap by isolating the symmetric bilinear form from topological and positivity constraints, allowing the library to handle generalized indefinite metric spaces safely.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-algebra
new-contributor
label:t-algebra$ |
47/0 |
Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/IndefiniteMetric.lean |
2 |
5 |
['dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'ryanncode'] |
kim-em assignee:kim-em |
15-1745 15 days ago |
92-45073 92 days ago |
108-14830 108 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
|
227/0 |
Mathlib.lean,Mathlib/RingTheory/MvPolynomial/DeterminantalIdeal.lean |
2 |
3 |
['WangJiabai', 'github-actions'] |
mattrobball assignee:mattrobball |
15-1742 15 days ago |
79-30331 79 days ago |
79-30319 79 days |
| 42583 |
attilavjda author:attilavjda |
chore(Analysis/Calculus/FDeriv/Prod): deprecate differentiable*_finCons' as duplicates |
The four primed differentiable*_finCons' lemmas are definitionally the unprimed ones (@…' = @… := rfl). Replaced by deprecated aliases, and repointed four in-file uses.
Aristotle found this duplication.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis
new-contributor
|
12/28 |
Mathlib/Analysis/Calculus/FDeriv/Prod.lean |
1 |
5 |
['Rob23oba', 'attilavjda', 'github-actions'] |
nobody |
14-66933 14 days ago |
15-11510 15 days ago |
15-11498 15 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 |
14-56961 14 days ago |
14-57593 14 days ago |
66-66046 66 days |
| 37954 |
jdhart81 author:jdhart81 |
feat(Data/ENNReal/Inv): add ENNReal.div_mul_div_cancel |
Proves a / b * (b / c) = a / c for b ≠ 0, b ≠ ∞ in ENNReal. Proof via mul_div_assoc and existing div_mul_cancel.
AI Disclosure: This PR was developed with assistance from an LLM (Claude, Anthropic) for proof exploration and text drafting. The proof was compiled and verified locally by the contributor, who understands the mathematical content. This lemma is extracted from a larger formalization of information-theoretic bounds (Zenodo DOI: 10.5281/zenodo.19317983).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
8/0 |
Mathlib/Data/ENNReal/Inv.lean,Mathlib/Data/EReal/Inv.lean |
2 |
12 |
['felixpernegger', 'github-actions', 'jdhart81'] |
nobody |
14-56942 14 days ago |
27-18921 27 days ago |
27-18984 27 days |
| 39722 |
kg583 author:kg583 |
feat(Combinatorics): link `Nat.Partition` to `YoungDiagram` |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
AI disclosure: Claude was used to source some proof sketches.
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
large-import
|
111/4 |
Mathlib.lean,Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Combinatorics/Enumerative/Partition/YoungDiagram.lean,Mathlib/Combinatorics/Young/YoungDiagram.lean |
4 |
48 |
['NoahW314', 'YaelDillies', 'github-actions', 'kg583', 'wwylele'] |
b-mehta assignee:b-mehta |
14-1741 14 days ago |
48-17428 48 days ago |
83-12333 83 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 |
13-64800 13 days ago |
13-67958 13 days ago |
42-41122 42 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 |
13-30565 13 days ago |
13-31496 13 days ago |
13-32255 13 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 |
13-29218 13 days ago |
13-31594 13 days ago |
13-31582 13 days |
| 42614 |
williamjblair author:williamjblair |
chore(Algebra/Group/Action/Pointwise/Set): generalize smul_mem_smul_set_iff to IsLeftCancelSMul |
The lemma only needs `a • ·` to be injective, which is what `IsLeftCancelSMul` says. Moving it into that section covers the previous `[Group α] [MulAction α β]` case through the existing instance, and also covers `[Mul α] [IsLeftCancelMul α]` acting on itself.
---
[](https://gitpod.io/from-referrer/) |
t-algebra
new-contributor
LLM-generated
label:t-algebra$ |
5/4 |
Mathlib/Algebra/Group/Action/Pointwise/Set/Basic.lean |
1 |
3 |
['github-actions', 'williamjblair'] |
nobody |
13-29000 13 days ago |
13-31819 13 days ago |
13-31807 13 days |
| 41052 |
hawkrobe author:hawkrobe |
refactor(RingTheory/HopfAlgebra): relocate `ofSurjective` |
---
Cleanup after #39790, moves `HopfAlgebra.ofSurjective` to `HopfAlgebra/Convolution.lean` and extracts the convolution functoriality.
[](https://gitpod.io/from-referrer/)
|
t-ring-theory
new-contributor
|
93/52 |
Mathlib/RingTheory/Bialgebra/Convolution.lean,Mathlib/RingTheory/Coalgebra/Convolution.lean,Mathlib/RingTheory/HopfAlgebra/Convolution.lean,Mathlib/RingTheory/HopfAlgebra/Quotient.lean |
4 |
11 |
['eric-wieser', 'github-actions', 'hawkrobe'] |
nobody |
13-19132 13 days ago |
13-19748 13 days ago |
58-37758 58 days |
| 42630 |
will1491 author:will1491 |
feat(Analysis/Complex): define Wirtinger derivatives |
Define the Wirtinger derivatives `Complex.wirtingerDeriv` and `Complex.wirtingerDerivBar` from `fderiv ℝ`, and prove: the Cauchy-Riemann characterization of complex differentiability (pointwise and on open sets), agreement of `wirtingerDeriv` with `deriv` for holomorphic functions, additivity, Leibniz product rules, conjugation identities, both Wirtinger chain rules, and the Wirtinger decomposition of a real-linear map `ℂ →L[ℝ] ℂ`.
Extracted from https://github.com/will1491/RiemannDynamics, where it underlies the Beltrami-equation and Cauchy/Beurling-transform theory used in the proof of the measurable Riemann mapping theorem.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-analysis
new-contributor
|
253/0 |
Mathlib.lean,Mathlib/Analysis/Complex/Wirtinger.lean |
2 |
2 |
['github-actions'] |
nobody |
12-81511 12 days ago |
12-82106 12 days ago |
12-82094 12 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).
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
146/0 |
Mathlib.lean,Mathlib/Topology/EMetricSpace/PathLength.lean,Mathlib/Topology/Path.lean |
3 |
72 |
['CoolRmal', 'Zeta-Wu', 'felixpernegger', 'github-actions', 'pelicanhere', 'scholzhannah'] |
scholzhannah assignee:scholzhannah |
12-67423 12 days ago |
25-80585 25 days ago |
27-49767 27 days |
| 41808 |
JX-Mo author:JX-Mo |
feat(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, despite the refactored code being longer).
This also has very direct downstream benefit in smooth representation theory: `ind` packages both induction and coinvariant in a single functor and these API lemmas will serve both of Hecke modules and Jacquet modules. |
t-algebra
new-contributor
label:t-algebra$ |
102/59 |
Mathlib/RepresentationTheory/FiniteIndex.lean,Mathlib/RepresentationTheory/Induced.lean |
2 |
3 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
12-48282 12 days ago |
12-48866 12 days ago |
38-37813 38 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 |
12-28915 12 days ago |
12-29615 12 days ago |
24-57013 24 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
easy
|
10/0 |
Mathlib/Order/UpperLower/Closure.lean |
1 |
5 |
['AntoineduFresne', 'SnirBroshi', 'github-actions', 'tdwag123'] |
nobody |
12-14995 12 days ago |
12-17489 12 days ago |
14-54634 14 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 |
12-6392 12 days ago |
12-13549 12 days ago |
12-13537 12 days |
| 36323 |
SproutSeeds author:SproutSeeds |
feat(Inversion): discontinuity and center/global fderiv formulas |
Part of #5939
Adds the discontinuity-at-center lemma for inversion and derives the center/global `fderiv` formulas from it. Rebased the inversion follow up onto current master after #36313 merged, removing the duplicated `Basic.lean` history and leaving only the intended `Calculus.lean` changes.
The incremental scope above #36313 is limited to `Mathlib/Geometry/Euclidean/Inversion/Calculus.lean`.
## Verification
- `lake build Mathlib.Geometry.Euclidean.Inversion.Calculus`
- `lake exe lint-style Mathlib.Geometry.Euclidean.Inversion.Calculus`
- `git diff --check`
Tools used: Codex 5.3 extra high
---
Happy to adjust naming, placement, or proof style based on maintainer preference.
|
t-euclidean-geometry
new-contributor
LLM-generated
|
22/0 |
Mathlib/Geometry/Euclidean/Inversion/Calculus.lean |
1 |
4 |
['SproutSeeds', 'github-actions', 'mathlib-merge-conflicts'] |
jsm28 assignee:jsm28 |
12-1748 12 days ago |
12-80866 12 days ago |
12-80854 12 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'] |
joneugster assignee:joneugster |
12-1745 12 days ago |
93-55705 93 days ago |
93-56293 93 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 |
8 |
['YijunYuan', 'github-actions', 'pechersky'] |
nobody |
12-841 12 days ago |
33-63685 33 days ago |
34-37849 34 days |
| 42505 |
attilavjda author:attilavjda |
chore(Algebra/Tropical/Basic): deduplicate five pairs of lemmas |
`On a LinearOrder`, `⊓`/`⊔` are `min`/`max`, so `trop_inf`, `untrop_sup`, `inf_eq_add`, and `trop_sup_def` are the same statements as `trop_min`, `untrop_max`, `min_eq_add`, and `trop_max_def`, respectively (three duplicated `simp` lemmas). Likewise, `injective_trop`/`injective_untrop` duplicate `trop_injective`/`untrop_injective`. The removed lemmas become deprecated aliases.
[I used Aristotle AI](https://github.com/attilavjda/formal-contributions/blob/main/tropical_dedup_lemmas/RequestProject/TropicalDedup.lean) it helped find the duplicates, and generated the solutions, verified the equivalences, and helped in understanding the proofs, and meaning of the refactor.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebra
LLM-generated
label:t-algebra$ |
8/17 |
Mathlib/Algebra/Tropical/Basic.lean |
1 |
2 |
['github-actions', 'wwylele'] |
nobody |
11-54258 11 days ago |
17-19933 17 days ago |
17-23793 17 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 |
11-44355 11 days ago |
74-31262 74 days ago |
74-31343 74 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 |
11-43396 11 days ago |
21-21609 21 days ago |
21-21597 21 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
|
168/0 |
Mathlib.lean,Mathlib/Analysis/ODE/Peano.lean |
2 |
2 |
['github-actions'] |
nobody |
11-42888 11 days ago |
11-43447 11 days ago |
27-37654 27 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 |
11-10563 11 days ago |
11-11726 11 days ago |
11-11714 11 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 |
11-8715 11 days ago |
38-2328 38 days ago |
38-2316 38 days |
| 42313 |
deancureton author:deancureton |
feat(RingTheory): embDomain composition and range, Laurent series expansion |
Add to the Hahn series API:
- `embDomain_embDomain` (composition of domain embeddings)
- `mem_range_embDomain_iff` (range of `embDomain` is characterized by support containment)
Add to the Laurent series API:
- the expansion ring endomorphism `LaurentSeries.expand` with its monomial and `orderTop` lemmas
- follows the pattern of `Polynomial.expand`, `MvPolynomial.expand`, `PowerSeries.expand`
- its opposite `LaurentSeries.contract`, with the decomposition of a Laurent series by exponent residues mod `n` (`sum_single_mul_expand_contract`) and its uniqueness (`contract_eq_of_sum_eq`)
- `exists_ofPowerSeries_eq_of_orderTop_nonneg`
This is the first of a series of PRs formalizing Puiseux series and Puiseux's theorem (entry 41 of Freek Wiedijk's 100 theorems list). |
t-ring-theory
new-contributor
LLM-generated
|
116/0 |
Mathlib/RingTheory/HahnSeries/Basic.lean,Mathlib/RingTheory/LaurentSeries.lean |
2 |
16 |
['deancureton', 'github-actions', 'wwylele'] |
nobody |
11-3604 11 days ago |
11-4944 11 days ago |
23-8667 23 days |
| 41517 |
sadasant author:sadasant |
feat(MeasureTheory): define Hellinger affinity |
Define the Hellinger affinity (Bhattacharyya coefficient) of two measures as an `ENNReal`-valued lintegral against the canonical dominating measure `μ + ν`, making the definition total with no absolute-continuity or integrability side conditions. Provide symmetry, invariance under the choice of sigma-finite dominating measure, the self-affinity of a probability measure, the `rnDeriv` and `withDensity` computation rules, the bound `≤ 1` for probability measures (via Hölder with `p = q = 2`), and the characterization that the affinity vanishes iff the measures are mutually singular. Groundwork for a formalization of Kakutani's dichotomy (1948) for infinite products of probability measures.
---
**Design notes.**
On the value type ("why not `ℝ` / `ℝ≥0` / `EReal`"): the `ℝ≥0∞`-valued lintegral against `μ + ν` makes the affinity total, which is what makes the singular direction of Kakutani's dichotomy (planned follow-up PRs) case-split-free — `hellingerAffinity_eq_zero_iff` already characterizes mutual singularity with no absolute-continuity hypothesis. `InformationTheory.klDiv` sets the precedent of an `ℝ≥0∞`-valued, standalone divergence-like quantity. The invariance lemma `hellingerAffinity_eq_lintegral_rnDeriv_mul_rnDeriv` recovers the textbook `∫ √(dμ/dρ · dν/dρ) dρ` for any σ-finite dominating `ρ`.
**Relation to f-divergences** (CC @RemyDegenne for coordination with the planned `fDiv` upstreaming from TestingLowerBounds): the affinity is the f-integral at `f = √·`, equivalently `1 −` the Hellinger-½ divergence, with `H²(μ,ν)/2 = 1 − affinity`. Rather than block on an unlanded framework, this PR keeps the affinity standalone (the `klDiv` pattern); when `fDiv` lands, a single bridging lemma of the shape `fDiv hellingerFun μ ν = 1 - hellingerAffinity μ ν` reconciles them, and I am happy to contribute it. Also happy to move the file to `Mathlib/InformationTheory/` if reviewers prefer that home over `Mathlib/MeasureTheory/Measure/`.
**Roadmap.** This is PR 1 of a planned sequence building toward Kakutani's dichotomy for `Measure.infinitePi` over an arbitrary index type (stronger than the textbook countable statement): the `lintegral` product Fubini and `Measure.pi_withDensity`, the infinite-product/summability bridges, then the singular and absolutely-continuous directions and the packaged dichotomy. Natural follow-up API for this file, available on request: `hellingerAffinity_pos_iff`, monotonicity in each argument, and the relation to the squared Hellinger distance once a distance exists.
**Attribution and AI disclosure.** This material was developed in the public [riemann-venue](https://github.com/idolum-ai/riemann-venue) repository by Daniel Rodriguez in collaboration with Claude Fable 5 (Anthropic), as part of a machine-checked formalization of Kakutani's dichotomy (1948) for infinite products of probability measures. The definitions, proofs, and the drafting of this description were done with Claude Fable 5 via Claude Code, working from a design and statement plan reviewed by the human author; all proofs are checked by Lean (`#print axioms` on the main results reports only `propext`, `Classical.choice`, `Quot.sound`), and the human author reviewed the final form, takes responsibility for it, and will answer all review comments personally. I am applying the `LLM-generated` label per the contribution guidelines. |
t-measure-probability
LLM-generated
new-contributor
|
214/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/Hellinger.lean |
2 |
4 |
['github-actions', 'sadasant'] |
RemyDegenne assignee:RemyDegenne |
11-1734 11 days ago |
46-11187 46 days ago |
46-11175 46 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 |
10-54011 10 days ago |
10-54619 10 days ago |
10-54607 10 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 |
10-52421 10 days ago |
10-54182 10 days ago |
10-54170 10 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 |
10-50912 10 days ago |
10-55396 10 days ago |
10-55384 10 days |
| 42693 |
justin-palumbo author:justin-palumbo |
feat(Topology/MetricSpace): a Gδ subset of a Polish space is Polish |
Adds `IsGδ.polishSpace`: a Gδ subset of a Polish space is Polish.
The proof follows the outline in Anush Tserunyan's descriptive set theory notes, https://www.math.mcgill.ca/atserunyan/Teaching_notes/dst_lectures.pdf where it is attributed to A. Bernshteyn. The "usual" approach (as in Kechris's Classical Descriptive Set Theory) constructs a complete compatible metric (the "Alexandrov metric"). The approach taken here is snappier to formalize - the idea is to give a closed embeddding from the G\delta set into another Polish space, and appeal to the fact closed subsets of Polish spaces are Polish. [Note the Alexandrov metric is recoverable from the embedding via the induced complete metrics on the product topology.]
This PR is a pure addition: nothing is removed and no existing signature changes. `TopologicalSpace.Opens.CompleteCopy` and `IsOpen.polishSpace` are untouched, so the open case is still proved independently rather than derived from this result.
---
Question: `IsOpen.polishSpace` could now be proven directly from`isGδ.polishSpace`, and `CompleteCopy` completely retired. That feels cleaner to me, given `CompleteCopy` has had no users since it was ported along with everything else in 2023: #3357. The main argument for keeping is that leveraging `CompleteCopy` is slightly more explicit in proving that open subsets are Polish. Happy to remove in a follow-up, in this PR, or not at all :)
LLM usage disclaimer: I wrote an original local version of this PR myself, and then used Claude Opus to double-check / simplify / help me pull out names of relevant theorems from mathlib. The primary non-trivial contribution from LLM was idea of leveraging isClosed_eq (ie proving closure of range by framing the range of the embedding as a countable intersection of pairs satisfying closed equations). I take full responsibility for the code here |
new-contributor
t-topology
|
117/2 |
Mathlib/Topology/MetricSpace/Polish.lean |
1 |
9 |
['felixpernegger', 'github-actions', 'justin-palumbo'] |
nobody |
10-36194 10 days ago |
11-26967 11 days ago |
11-26955 11 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 |
10-31393 10 days ago |
10-33412 10 days ago |
10-34748 10 days |
| 42483 |
bocowgill author:bocowgill |
feat(Topology/MetricSpace/HausdorffDistance): characterize joint minimizers via infDist |
This PR adds two results connecting a generic pseudometric-space profiling principle with orthogonal projection in an inner-product space.
- `Metric.exists_forall_dist_le_iff_forall_infDist_le` gives a generic pseudometric-space attainment/profiling theorem. Assuming the distance from `a` to `U` is attained, it characterizes when `a` can be paired with some `u ∈ U` whose distance is no greater than the distance between any pair in `A × U`. This is possible precisely when `Metric.infDist a U ≤ Metric.infDist a' U` for every `a' ∈ A`. When `a ∈ A`, this characterizes joint minimizers over `A × U`.
- `Submodule.norm_starProjection_orthogonal_eq_infDist` identifies the norm of the orthogonal projection onto `Uᗮ` with the point-to-set distance `Metric.infDist y U`, providing a bridge between the inner-product-space projection API and the generic pseudometric-space theorem.
A later intended application is partialling-out and the Frisch–Waugh–Lovell theorem. There, one can specialize the comparison set and distinguished point to
`A = Set.range (fun z' ↦ y - f z')`
and
`a = y - f z`,
and use the projection-to-`infDist` bridge to translate between orthogonal-residual norms and the generic profiling theorem. The regression-parameterized specialization itself is not part of this PR.
---
### Motivation
These lemmas separate the general profiling argument from the inner-product-space structure used in orthogonal-projection applications.
- The pseudometric-space result shows that, when the distance from `a` to `U` is attained, the `U` variable can be profiled out: finding a pair `(a, u)` whose distance is bounded by every pair in `A × U` reduces to comparing `Metric.infDist a U` with `Metric.infDist a' U` for every `a' ∈ A`. When `a ∈ A`, this is a joint-minimization characterization.
- The inner-product-space result identifies the norm of the orthogonal residual with `Metric.infDist`, providing the bridge needed to apply the generic profiling theorem to orthogonal-projection problems.
This separation is intended to support later formalizations of least squares, regression, and partialling-out/FWL arguments while keeping the profiling theorem independent of linear structure and of any particular parameterization of the comparison set.
### LLM disclosure
For theorem planning and Lean implementation, I used OpenAI Codex substantially. I also used it for suggestions around naming and documentation, for iterating on the proofs, responding to review feedback, and validating my commits locally.
I manually searched for the best locations and earlier results to build upon. I personally reviewed the mathematical statements and Lean code line-by-line, as well as the suggestions around naming and API choices. I also reviewed and confirmed that I can explain each step of the two theorems' proofs.
For the current revision, I ran targeted builds of `Mathlib.Topology.MetricSpace.HausdorffDistance` and `Mathlib.Analysis.InnerProductSpace.Projection.Basic`, as well as the style linter and the environment linter. I performed a `git diff --check`. I also inspected the inferred declaration signatures and axiom dependencies, and compiled a scratch proof recovering the original regression-parameterized statement from the new generic pseudometric-space theorem. Earlier in development, before the reviewer-driven refactor, I also completed a full `lake build` and a full `lake test`.
Please note: This is one of my earliest Mathlib contributions. I welcome corrections or suggestions about all aspects of this PR. I'm prepared to revise it as necessary and to learn from the review. |
t-analysis
LLM-generated
new-contributor
|
29/0 |
Mathlib/Analysis/InnerProductSpace/Projection/Basic.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean |
2 |
13 |
['bocowgill', 'github-actions', 'j-loreaux', 'wwylele'] |
nobody |
10-25654 10 days ago |
10-25654 10 days ago |
17-41178 17 days |
| 42326 |
AlyciaBHZ author:AlyciaBHZ |
feat(NumberTheory/Wilson): explicit square root of -1 modulo a prime |
Adds an explicit square root of `-1` in `ZMod p`, together with the half-factorial pairing identity it rests on.
- `ZMod.factorial_eq_neg_one_pow_mul_half_factorial_sq`: for odd `p`, `(p - 1)! = (-1)^m * (m !)^2` in `ZMod p` with `m = (p - 1) / 2`. Only needs `Odd p`, not primality.
- `ZMod.half_factorial_sq_eq_neg_one`: for prime `p` with `p % 4 ≠ 3`, `((p - 1) / 2)!` is a square root of `-1`.
### Why
Mathlib has `exists_sq_eq_neg_one_iff` for existence and `mod_four_ne_three_of_sq_eq_neg_one` for the converse, but nothing takes you from the congruence condition to a specific root. I checked all seventeen uses of `IsSquare (-1 : ZMod _)` currently in Mathlib and none of them exhibits a witness.
A live case: `SumOfTwoSquares/Wilson.lean` in `seewoo5/DifferentProofs` states the pairing identity verbatim in a docstring, though only for `p ≡ 1 mod 4` and assuming primality. I have no consumer for it myself — I hit the gap formalizing something adjacent and it seemed worth contributing rather than keeping local.
The pairing identity is worth having on its own: it is the core step of the standard Wilson argument and holds for any odd `p`, so it is not really about primes.
### AI disclosure
The Lean proofs were drafted with an OpenAI Codex agent orchestrated by Claude Code, and I reviewed the result. I re-ran the duplicate search against current master, CSLib, Batteries, Lean core and by type on Loogle, and ran `lake build` / `runLinter` / `lint-style` by hand.
|
t-number-theory
new-contributor
LLM-generated
|
42/1 |
Mathlib/NumberTheory/Wilson.lean |
1 |
12 |
['AlyciaBHZ', 'bocowgill', 'github-actions', 'wwylele'] |
MichaelStollBayreuth assignee:MichaelStollBayreuth |
10-13957 10 days ago |
22-47606 22 days ago |
22-47594 22 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 |
10-12874 10 days ago |
19-34307 19 days ago |
21-75815 21 days |
| 40368 |
Sanghyeok0 author:Sanghyeok0 |
feat: add confluence predicates for relations |
This PR adds a minimal relation-level API for confluence-style properties:
* `Relation.Diamond`
* `Relation.Confluent`
* `Relation.ChurchRosser`
It also adds the basic API connecting these predicates:
* `Relation.ReflTransGen.to_eqvGen`
* `Relation.Join.to_eqvGen`
* `Relation.ChurchRosser.confluent`
* `Relation.Confluent.churchRosser`
The main downstream application is the polynomial-reduction development in
#41475. There, polynomial reduction is treated as an ordinary relation on
`MvPolynomial`, and these predicates are used to formulate confluence and the
Church--Rosser property.
A more general rewriting API exists in CSLib. This PR does not attempt to
upstream that API wholesale; its scope is intentionally limited to the
declarations needed by the downstream polynomial application.
The earlier version of this PR also introduced
`Relation.StronglyConfluent` and additional equivalence packaging. Those
declarations have been removed to keep this PR small and application-driven.
Reference: Becker, Weispfenning, and Kredel,
*Gröbner Bases: A Computational Approach to Commutative Algebra*.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-logic
new-contributor
|
79/5 |
Mathlib/Logic/Relation.lean |
1 |
8 |
['Sanghyeok0', 'chenson2018', 'github-actions', 'mathlib-merge-conflicts'] |
fpvandoorn assignee:fpvandoorn |
10-1745 10 days ago |
35-46029 35 days ago |
58-57808 58 days |
| 41258 |
ungatz author:ungatz |
feat(Analysis/Fourier/FiniteAbelian): add the Donoho-Stark support uncertainty principle |
This adds the Donoho–Stark support uncertainty inequality for the unitary Fourier transform on a finite abelian group, plus the supporting Fourier-inversion machinery indexed by the Pontryagin dual `AddChar G ℂ`.
The headline:
> **Theorem `AddChar.donoho_stark`.** For nonzero `f : G → ℂ`,
> `Fintype.card G ≤ (support f).ncard * (support (fourierTransform f)).ncard`,
> where `fourierTransform f ψ = |G|^(-1/2) * ∑ g, conj (ψ g) * f g` ranges over `ψ : AddChar G ℂ`.
The proof is the elementary (L¹, L∞) duality argument that any harmonic-analysis textbook gives for the classical `ZMod N` case; no Parseval or Cauchy–Schwarz is needed. The finite-abelian generalisation is folklore (stated in Tao–Vu *Additive Combinatorics* and Terras *Fourier Analysis on Finite Groups*); I did not find it formalised in Mathlib or any other major library.
### Why this belongs in Mathlib
Mathlib already has the supporting infrastructure — character theory of finite abelian groups (`Mathlib.Algebra.Group.AddChar`), character orthogonality and Pontryagin duality (`Mathlib.Analysis.Fourier.FiniteAbelian.{Orthogonality, PontryaginDuality}`). The Donoho–Stark inequality is the canonical application of all three, and its absence is a real gap: I needed it for a downstream operator-uncertainty result (a diagonal-operator `rank * Pauli-support` bound on the finite Heisenberg group reduces to it) and ended up proving it from scratch. Beyond that use, it is a standard tool in compressed sensing on finite abelian groups, additive combinatorics, and discrete signal recovery (the 1989 paper has ~3500 citations).
### What's in this PR
A single new file, `Mathlib/Analysis/Fourier/FiniteAbelian/DonohoStark.lean`:
- `AddChar.fourierTransform` — the unitary (symmetric) Fourier transform indexed by `AddChar G ℂ`;
- `AddChar.fourier_inversion` — the inversion formula;
- `AddChar.norm_fourierTransform_le`, `AddChar.norm_le_sum_norm_fourierTransform` — the two `L∞ ≤ |G|^(-1/2) · L¹` triangle bounds;
- `AddChar.donoho_stark` — the support uncertainty inequality.
Design choices I expect questions on, and my defaults:
- **`ℂ` rather than `RCLike`**: matches the cited literature and the cleanest home of `AddChar.norm_apply`; happy to generalise if preferred.
- **`Set.ncard` for support sizes**: avoids needing `DecidableEq ℂ` in the statement.
- **A new sibling file** of `Orthogonality.lean` / `PontryaginDuality.lean` rather than a subsection: orthogonality is the tool, Donoho–Stark is the application; can inline if preferred.
Deliberately *not* included: the diagonal-operator `rank * Pauli-support ≥ 2^n` corollary from my workspace — the Pauli-word machinery has no natural home in `Analysis/Fourier` yet; happy to factor it into a follow-up if there is interest.
### AI usage disclosure
Per the [AI contribution policy](https://leanprover-community.github.io/contribute/index.html): the original Lean proof was generated by **Aristotle** (Harmonic AI's automated proof system) from a dispatch containing the statement and the (L¹, L∞) proof strategy, as part of my PhD research workspace. I audited the delivery line by line against Donoho–Stark 1989 (the dispatch also produced a kernel-checked counterexample to a tempting wrong variant — replacing rank by the count of distinct eigenvalues — which the 2×2 identity falsifies). The file here is my adaptation to Mathlib conventions and to current master (module system, `Set.ncard` statement, robust cast handling in the inversion proof), with final tactic-level repairs done with the assistance of Claude (Anthropic). I understand and can defend every line without AI assistance. Please add the `LLM-generated` label (I cannot set labels myself).
### Test plan
- [x] `lake build Mathlib.Analysis.Fourier.FiniteAbelian.DonohoStark` clean (0 errors, 0 warnings).
- [x] `#print axioms` on all five declarations: `[propext, Classical.choice, Quot.sound]`.
- [x] `lake exe lint-style` clean; all lines ≤ 100 chars.
- [x] `Mathlib.lean` updated in alphabetical position.
- [x] Imports minimal (`PontryaginDuality` + `RCLike.Basic` only).
### Reference
Donoho, D. L. and Stark, P. B. (1989). *Uncertainty principles and signal recovery.* SIAM Journal on Applied Mathematics, **49**(3): 906–931. https://doi.org/10.1137/0149053
---
|
t-analysis
new-contributor
LLM-generated
|
283/0 |
Mathlib.lean,Mathlib/Analysis/Fourier/FiniteAbelian/DonohoStark.lean |
2 |
4 |
['YaelDillies', 'copilot-pull-request-reviewer', 'felixpernegger', 'github-actions'] |
urkud assignee:urkud |
10-1745 10 days ago |
53-7425 53 days ago |
53-7413 53 days |
| 42674 |
theebayuser author:theebayuser |
feat(Geometry/Euclidean): add the geometric mean theorem |
Hello, this PR adds the geometric mean theorem to
Mathlib/Geometry/Euclidean/Angle/Unoriented/RightAngle.lean, with the iff form and
the leg form, and records it in docs/1000.yaml (Q2226868). Statements use ^ 2
per review guidance on #42518.
This PR was written with AI assistance (Claude Code)
|
t-euclidean-geometry
new-contributor
LLM-generated
|
46/1 |
Mathlib/Geometry/Euclidean/Angle/Unoriented/RightAngle.lean,docs/1000.yaml |
2 |
6 |
['github-actions', 'theebayuser', 'wwylele'] |
jsm28 assignee:jsm28 |
9-80378 9 days ago |
11-70058 11 days ago |
11-70046 11 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 |
9-34476 9 days ago |
42-19593 42 days ago |
43-74283 43 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 |
9-8108 9 days ago |
9-8653 9 days ago |
35-68534 35 days |
| 38310 |
ZRTMRH author:ZRTMRH |
feat(Combinatorics/Quiver/Schreier): word evaluation and reachability |
Adds word evaluation and reachability results to the Schreier graph API.
* `SchreierGraph.evalWord` : evaluates a word `List (S × Bool)` as an element of the ambient group, where `(s, true)` contributes `ι s` and `(s, false)` contributes `(ι s)⁻¹`.
* `SchreierGraph.evalWord_eq_lift` : agreement with `FreeGroup.lift`.
* `SchreierGraph.evalWord_mem_closure` : every word evaluates into the subgroup generated by `ι`.
* `SchreierGraph.pathFromWord` : a Bool-tagged word yields a path in `Symmetrify (SchreierGraph V ι)` from `x` to `evalWord ι w • x`.
* `SchreierGraph.reachable_iff` : two vertices are connected by a path in the symmetrification iff some element of the subgroup closure carries one to the other.
Follow-up to #36320.
This PR was written with AI assistance (Claude). The code has been reviewed by the author.
---
- [x] depends on: #41849
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-combinatorics
large-import
LLM-generated
maintainer-merge
|
125/0 |
Mathlib/Combinatorics/Quiver/Schreier.lean |
1 |
26 |
['YaelDillies', 'ZRTMRH', 'github-actions', 'mathlib-dependent-issues'] |
nobody |
9-5222 9 days ago |
10-85360 10 days ago |
110-34819 110 days |
| 41486 |
TTony2019 author:TTony2019 |
feat(Analysis/Convex/Intrinsic): add open segment intrinsic interior results |
Add open segment intrinsic interior results: `x ∈ intrinsicInterior 𝕜 C` and `y ∈ intrinsicClosure 𝕜 C`, then the open segment
from `x` to `y` stays in `intrinsicInterior 𝕜 C`.
Co-authored-by: Zichen Wang <imathwy@users.noreply.github.com> |
t-topology
new-contributor
t-analysis
|
70/0 |
Mathlib/Analysis/Convex/Intrinsic.lean,Mathlib/Analysis/Convex/Topology.lean,Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/Homeomorph/Defs.lean |
4 |
7 |
['TTony2019', 'github-actions', 'j-loreaux'] |
ADedecker assignee:ADedecker |
9-1747 9 days ago |
14-22900 14 days ago |
42-32520 42 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 |
8-83366 8 days ago |
8-84008 8 days ago |
9-230 9 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 |
8-32776 8 days ago |
9-1444 9 days ago |
21-79350 21 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 |
8-32378 8 days ago |
8-35073 8 days ago |
8-35181 8 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 |
8-17016 8 days ago |
9-86317 9 days ago |
9-86305 9 days |
| 42133 |
joelkronqvist author:joelkronqvist |
feat(Order/Interval/Set/LinearOrder): add thms for unions of adjacent intervals |
This PR adds four new lemmas stating that for two nonempty intervals with a common endpoint, taking their union is equal to removing that common endpoint from a larger interval.
I use the fact `Ioo_union_Ioo_eq_Ioo_sdiff_singleton` in [ExtremeValueProject](https://github.com/joelkronqvist/ExtremeValueProject/commits/kandi-linear_of_additive_of_le_on_measure_pos).
I could also add versions of these lemmas for half-open intervals to this PR. Should I do it? I haven't added them yet because I suspect their proofs are quite repetitive and I'd like to get feedback on the first four additions to reduce the need of repetitive rewrites. Where would they belong? Probably not in a section that is concerned with two finite intervals with a common point. This addition would add 5 more proofs for `Iio ∪ Ioi`, `Ioo ∪ Ioi`, `Iio ∪ Ioo`, `Ico ∪ Ioi` and `Iio ∪ Ioc`.
Co-authored-by: Kalle Kytölä <kalle.kytola@aalto.fi>
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
maintainer-merge
|
32/0 |
Mathlib/Order/Interval/Set/LinearOrder.lean |
1 |
4 |
['Ruben-VandeVelde', 'felixpernegger', 'github-actions', 'joelkronqvist', 'wwylele'] |
nobody |
8-14721 8 days ago |
27-47319 27 days ago |
27-47307 27 days |
| 39868 |
JuanCoRo author:JuanCoRo |
feat(Algebra/Polynomial): linearity of `divByMonic` and adjacent 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]
-->
This PR adds the `R`-linearity of the monic polynomial division map `_ /ₘ q`. It also adds adjacent results that stem from this work.
#### Refactors:
- Reuses the proofs from `add_modByMonic` and `smul_modByMonic` to generalize these results to `add_div_modByMonic` and `smul_div_modByMonic` respectively.
- Replaces the proofs of `add_modByMonic` and `smul_modByMonic` as specializations of the more general theorems `add_div_modByMonic` and `smul_div_modByMonic` respectively.
#### Additions:
- Adds the necessary results for `_ /ₘ q` linearity:
- `add_divByMonic : (p₁ + p₂) /ₘ q = p₁ /ₘ q + p₂ /ₘ q`
- `smul_divByMonic : c • p /ₘ q = c • (p /ₘ q)`
- Adds `_ /ₘ q` as an `R`-linear map:
- `divByMonicHom`: definition of `_ /ₘ q` as a linear map
- `mem_ker_divByMonic`: kernel characterization for `_ /ₘ q`.
- In `Div.lean` adds dual results for `/ₘ` that were already present for `%ₘ`
- `neg_divByMonic : (-p) /ₘ q = -(p /ₘ q)`
- `sub_divByMonic : (p₁ - p₂) /ₘ q = p₁ /ₘ q - p₂ /ₘ q`
- `mul_divByMonic_assoc (hd : q ∣ p₂) : (p₁ * p₂) /ₘ q = p₁ * (p₂ /ₘ q)`
While `mul_divByMonic_assoc` is not exactly the dual of `mul_modByMonic`, I thought it wouldn't hurt to add it.
[](https://gitpod.io/from-referrer/) |
new-contributor
t-algebra
label:t-algebra$ |
54/17 |
Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/RingDivision.lean |
2 |
8 |
['JuanCoRo', 'github-actions', 'wwylele'] |
joelriou assignee:joelriou |
8-1746 8 days ago |
86-50505 86 days ago |
86-50572 86 days |
| 40495 |
gw90 author:gw90 |
feat: weighted graphs with killing term |
Adding basic definitions and API for weighted graphs and weighted graphs with killing term.
---
My goal is to develop the basic theory from the beginning of [this textbook](https://www.math.uni-potsdam.de/fileadmin/user_upload/Prof-GraphTh/Keller/KellerLenzWojciechowski_GraphsAndDiscreteDirichletSpaces_wu_version.pdf). I also have some definitions and lemmas regarding Dirichlet forms and Laplacians to PR later, but I tried to pare down this first PR as much as possible. It currently has only 4 main definitions and sufficient API to demonstrate their correctness.
Note that I did not use [SimpleGraph.edgeLabeling](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=SimpleGraph.EdgeLabeling#doc) for the edgeWeight function because it is important that vertices that are not adjacent have an edge weight of zero. That is, the edgeWeight must be defined for all pairs of vertices and respect the underlying adjacency relation on the graph.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
368/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Weighted/Basic.lean,docs/references.bib |
3 |
2 |
['github-actions'] |
b-mehta assignee:b-mehta |
8-1745 8 days ago |
72-85808 72 days ago |
72-85796 72 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 |
7-36355 7 days ago |
7-49121 7 days ago |
7-49109 7 days |
| 42534 |
gloges author:gloges |
feat(LinearAlgebra/MultilinearMap): generalize `MultilinearMap` with common `RingHom` |
Generalizes multilinear maps to multi-semilinear maps.
In analogy with `LinearMap σ M N`, `MultilinearMap σ M N` is the space of multilinear maps from the `R`-module `∀ i, M i` to the `S`-module `N` over a ring homomorphism `σ : R →+* S`: fixing all but one coordinate gives a map `M i →ₛₗ[σ] N`.
Both `ContinuousLinearMap` and `AlternatingMap` extend `MultilinearMap` and are left defined in terms of `RingHom.id`.
---
[](https://gitpod.io/from-referrer/)
|
new-contributor |
679/616 |
Mathlib/Analysis/Analytic/Composition.lean,Mathlib/Analysis/Analytic/Inverse.lean,Mathlib/Analysis/Calculus/ContDiff/FaaDiBruno.lean,Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean,Mathlib/Analysis/Normed/Module/Multilinear/Curry.lean,Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Alternating/DomCoprod.lean,Mathlib/LinearAlgebra/Multilinear/Basic.lean,Mathlib/LinearAlgebra/Multilinear/Basis.lean,Mathlib/LinearAlgebra/Multilinear/Curry.lean,Mathlib/LinearAlgebra/Multilinear/DFinsupp.lean,Mathlib/LinearAlgebra/Multilinear/DirectSum.lean,Mathlib/LinearAlgebra/Multilinear/FiniteDimensional.lean,Mathlib/LinearAlgebra/Multilinear/Finsupp.lean,Mathlib/LinearAlgebra/Multilinear/Pi.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean,Mathlib/LinearAlgebra/PiTensorProduct/DFinsupp.lean,Mathlib/LinearAlgebra/PiTensorProduct/Generators.lean,Mathlib/LinearAlgebra/TensorAlgebra/Basic.lean,Mathlib/LinearAlgebra/TensorPower/Pairing.lean,Mathlib/LinearAlgebra/TensorPower/Symmetric.lean,Mathlib/RingTheory/PiTensorProduct.lean,Mathlib/Topology/Algebra/Module/Multilinear/Basic.lean |
24 |
16 |
['eric-wieser', 'github-actions', 'gloges', 'themathqueen'] |
nobody |
7-35702 7 days ago |
7-42682 7 days ago |
15-68782 15 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 |
7-31754 7 days ago |
8-7622 8 days ago |
8-8221 8 days |
| 38534 |
AlexeyMilovanov author:AlexeyMilovanov |
refactor(Computability): make `PFun` a one-field structure |
This PR refactors `PFun` from `def PFun α β := α → Part β` to a structure with a `FunLike` instance.
[Discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Fix.20for.20fun_prop.20on.20PFun.20.28context.3A.20Computability.20Theory.29)
### Main changes
* `PFun` is now a structure with a single field `toFun : α → Part β`.
* Added the `FunLike (α →. β) α (Part β)` instance and `initialize_simps_projections`.
* Added the basic projection/application simp lemmas needed for the structure wrapper.
* Definitions which used to return raw lambdas as partial functions now explicitly use `PFun.mk` or `PFun.lift`.
* Equality proofs for partial functions now use `PFun.ext` / `DFunLike.ext` where `funext` no longer applies directly.
### Downstream impact
The refactor mainly impacts Computability Theory and Category Theory (`Category/PartialFun.lean`). Since `PFun` is no longer definitionally equal to `α → Part β`, tactics such as `rfl`, `simp`, and `funext` can no longer always see through the old raw-function representation.
As a result, several proofs (e.g. `fix_aux`, `ppred`, `mem_eval`, and `unitIso`) grew in size, requiring explicit `ext` + `simp` breakdowns. I tried to keep these proof changes minimal; further golfing suggestions are very welcome. It seems that fully recovering the old brevity in some places may require additional `PFun`-specific API/congruence support, which I avoided adding in this PR to keep the diff minimal.
### Affected files
* **Core:** `Mathlib/Data/PFun.lean`
* **Computability:** `Partrec`, `PartrecBasis`, `PartrecCode`, `RE`, `RecursiveIn`, `Ackermann`, `StateTransition`, `TuringDegree`, `TuringMachine/Config`
* **Category Theory:** `Category/PartialFun.lean`
* **Other:** `Data/Finset/PImage.lean`, `NumberTheory/Dioph.lean`
This also removes the previous `set_option linter.flexible false` workaround and the local transparency workaround in `TuringMachine/Config.lean`, as well as the local transparency workarounds in `Category/PartialFun.lean`.
### Note on LLM usage
The core `PFun` change caused numerous downstream errors. I initially used an LLM to help draft fixes for these files. Afterwards, I spent a significant amount of time manually correcting and modifying all of the generated changes.
|
new-contributor
t-computability
tech debt
LLM-generated
maintainer-merge
|
565/491 |
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 |
68 |
['AlexeyMilovanov', 'JovanGerb', 'YaelDillies', 'dagurtomas', 'github-actions', 'j-loreaux', 'mathlib-bors', 'mathlib-merge-conflicts'] |
nobody |
7-17622 7 days ago |
7-18197 7 days ago |
91-68626 91 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'] |
nobody |
7-842 7 days ago |
28-75284 28 days ago |
52-58607 52 days |
| 42584 |
elazarg author:elazarg |
feat(InformationTheory/Coding): add Kraft inequality for prefix-free codes |
This PR defines prefix-free codes as arbitrary sets of words and proves that a prefix-free code not containing the empty word is uniquely decodable. In particular, every nontrivial prefix-free code is uniquely decodable. It is a direct continuation of #34108, which introduced uniquely decodable codes and the Kraft–McMillan inequality.
For a finite nonempty alphabet, it derives Kraft's inequality for finite prefix-free codes from the Kraft–McMillan inequality. It then extends the result to arbitrary sets of codewords by bounding every finite partial sum, proving summability and the corresponding bound on the infinite Kraft sum.
The existing uniquely decodable code API is also renamed to follow the `Is...` naming convention, and the Kraft–McMillan theorem is renamed to describe its statement.
Moves:
- InformationTheory.UniquelyDecodable -> InformationTheory.IsUniquelyDecodable
- InformationTheory.UniquelyDecodable.epsilon_not_mem -> InformationTheory.IsUniquelyDecodable.epsilon_not_mem
- InformationTheory.UniquelyDecodable.flatten_injective -> InformationTheory.IsUniquelyDecodable.flatten_injective
- InformationTheory.kraft_mcmillan_inequality -> InformationTheory.IsUniquelyDecodable.finsetSum_one_div_card_pow_length_le_one
---
This is another part of https://github.com/elazarg/kraft. Comments about next items are welcome.
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
maintainer-merge
|
192/15 |
Mathlib.lean,Mathlib/InformationTheory/Coding/Kraft.lean,Mathlib/InformationTheory/Coding/KraftMcMillan.lean,Mathlib/InformationTheory/Coding/PrefixFree.lean,Mathlib/InformationTheory/Coding/UniquelyDecodable.lean |
5 |
44 |
['EtienneC30', 'elazarg', 'github-actions', 'wwylele'] |
EtienneC30 assignee:EtienneC30 |
6-66710 6 days ago |
7-35791 7 days ago |
13-26900 13 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 |
6-58229 6 days ago |
9-11505 9 days ago |
9-11544 9 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 |
6-54774 6 days ago |
12-58484 12 days ago |
15-76664 15 days |
| 40582 |
dennj author:dennj |
feat(Analysis): the one-sided Laplace transform |
Introducing Laplace transform `ℒ(f)(s) = ∫ t in Ioi 0, exp (-s * t) • f t`
It is needed in physlib
I modelled the file following Mellin transform.
## Main definitions
* `LaplaceConvergent f s`: the Laplace integral is well-defined at `s`.
* `laplace f s`: the Laplace transform, a total function
* `HasLaplace f s m`: convergence together with the value `m`.
## Main results
* Linearity: `laplace_add`/`sub`/`const_smul`/`neg`/`zero`/`div_const`, at the `laplace`, `LaplaceConvergent`, and `HasLaplace` levels.
* `laplaceConvergent_iff_norm`, `norm_laplace_le_integral_norm`: reduction of convergence and norm bounds to the real exponential weight.
* `laplaceConvergent_of_isBigO_exp`: existence for functions of exponential order, on the appropriate right half-plane.
* `LaplaceConvergent.of_re_le`/`of_re_lt`: monotonicity of convergence in `s.re` (the half-plane structure).
* `laplace_cexp_smul`: the frequency-shift rule.
* `laplace_indicator_comp_sub`: the time-shift rule.
* `laplace_comp_mul_left`/`right`: behaviour under positive dilation.
* `hasLaplace_const`/`hasLaplace_one`/`hasLaplace_cexp`: basic transform values.
Human made PR |
t-measure-probability
new-contributor
|
653/0 |
Mathlib.lean,Mathlib/Analysis/LaplaceTransform.lean |
2 |
34 |
['AlyciaBHZ', 'EtienneC30', 'dennj', 'github-actions', 'mathlib-splicebot'] |
sgouezel assignee:sgouezel |
6-16849 6 days ago |
17-36828 17 days ago |
69-81863 69 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 |
6-16039 6 days ago |
6-16633 6 days ago |
6-16811 6 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 |
6-11713 6 days ago |
6-21202 6 days ago |
21-14797 21 days |
| 41459 |
EzequielS2 author:EzequielS2 |
feat(Algebra/Group): mulOpposite equivs for submonoid and subgroup |
## Summary
Add MulOpposite monoid equivalences for submonoids and subgroups, and remove the corresponding TODOs in `Subsemiring/MulOpposite.lean`.
## Test plan
- [x] `lake build` and `lake exe runLinter` on `Mathlib.Algebra.Group.Submonoid.MulOpposite` and `Mathlib.Algebra.Group.Subgroup.MulOpposite`
|
t-algebra
new-contributor
label:t-algebra$ |
78/4 |
Mathlib/Algebra/Group/Subgroup/MulOpposite.lean,Mathlib/Algebra/Group/Submonoid/MulOpposite.lean,Mathlib/Algebra/Ring/Subsemiring/MulOpposite.lean |
3 |
11 |
['EzequielS2', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen', 'wwylele'] |
nobody |
6-6803 6 days ago |
6-9030 6 days ago |
47-19636 47 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 |
16 |
['github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mortarsanjaya', 'themathqueen'] |
jjdishere assignee:jjdishere |
6-1747 6 days ago |
6-6027 6 days ago |
66-48610 66 days |
| 40791 |
vvvv-ops author:vvvv-ops |
feat(RingTheory/DedekindDomain): dirichlet's s-unit theorem |
Proves the `Future work` of `RingTheory/DedekindDomain/SInteger.lean`: finite generation of `S`-units and Dirichlet's `S`-unit theorem.
For a Dedekind domain `R` with fraction field `K` and a finite set `S` of height-one primes, this adds the `S`-valuation map `Set.unitValuation` with kernel the `∅`-units (`Set.unitValuation_ker`), finite generation `Set.unit_fg`, and the exact rank `Set.finrank_eq`: `finrank ℤ (Additive 𝒪_{K,S}ˣ) = finrank ℤ (Additive 𝒪_Kˣ) + |S|`, plus the number-field specialisation `Set.unit_finrank_numberField` (`= (r₁ + r₂ - 1) + |S|`). The proof uses the short exact sequence `1 → 𝒪_Kˣ → 𝒪_{K,S}ˣ → ⊕_{v∈S} ℤ`: the kernel is the units, and the image has finite index because its cokernel embeds in the (finite) class group.
The general finiteness helpers `Module.Finite.of_fg_ker_of_fg_range`, `CommGroup.fg_of_fg_ker_of_fg_range`, `Subgroup.fg_of_fg_commGroup` are included in the file for now — happy to move them to `RingTheory/Finiteness` / `GroupTheory/Finiteness` if preferred.
|
t-ring-theory
new-contributor
|
339/0 |
Mathlib.lean,Mathlib/RingTheory/DedekindDomain/SUnit.lean,scripts/noshake.json |
3 |
3 |
['github-actions'] |
jjdishere assignee:jjdishere |
6-1740 6 days ago |
65-75254 65 days ago |
65-75242 65 days |
| 41466 |
EzequielS2 author:EzequielS2 |
feat(Algebra/Order): stronger sublist product inequality via diff |
## Summary
Add `Sublist.prod_le_prod'_of_mem_diff` and `Sublist.sum_le_sum_of_mem_diff`.
## Test plan
- [x] `lake build` and `lake exe runLinter` on `Mathlib.Algebra.Order.BigOperators.Group.List`
|
t-algebra
new-contributor
label:t-algebra$ |
12/4 |
Mathlib/Algebra/Order/BigOperators/Group/List.lean |
1 |
7 |
['EzequielS2', 'github-actions', 'themathqueen', 'wwylele'] |
nobody |
5-85431 5 days ago |
6-1310 6 days ago |
47-18261 47 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 |
5-56597 5 days ago |
6-69585 6 days ago |
6-84449 6 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 |
5-35177 5 days ago |
5-36709 5 days ago |
12-51474 12 days |
| 42843 |
than4213 author:than4213 |
feat(Combinatorics/SimpleGraph): transition matrix of the simple random walk |
Adds SimpleGraph.walkMatrix, the transition matrix of the simple random walk on a graph: row v is the uniform distribution on the neighbours of v. This is SimpleGraph.adjMatrix with each row divided by G.degree v, turning adjacency counts into transition probabilities.
Main results are that the matrix is row stochastic, and hence so is G.walkMatrix ^ n — the latter follows immediately from Matrix.rowStochastic being a Submonoid.
Two choices worth flagging:
- Valued in ℚ. Every entry is (G.degree v)⁻¹, so nothing irrational arises. This keeps entries computable — #eval evaluates G.walkMatrix ^ n on a concrete graph.
- Placed in Combinatorics/SimpleGraph. The file imports no probability theory, only Mathlib.LinearAlgebra.Matrix.Stochastic, and sits alongside adjMatrix, incMatrix and lapMatrix.
The walk is undefined at isolated vertices, so the results take ∀ v, ¬ G.IsIsolated v.
Used Claude Code in the creation of this PR. |
t-combinatorics
new-contributor
LLM-generated
|
107/0 |
Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/RandomWalk.lean |
2 |
8 |
['SnirBroshi', 'github-actions', 'than4213'] |
nobody |
5-35000 5 days ago |
5-36343 5 days ago |
6-6152 6 days |
| 38596 |
JJYYY-JJY author:JJYYY-JJY |
feat(LinearAlgebra/Matrix): add elementary row operations |
Add row-scaling matrices and row equivalence via the action of the general linear group.
Co-authored-by: Joseph Qian <jqian507@gmail.com>
Co-authored-by: Veer Shukla <shukvee@uw.edu>
Co-authored-by: Dhruv Bhatia <dhruvbhatia00@gmail.com>
Co-authored-by: Zheng Wu <1036819072@qq.com>
---
The echelon-form definitions from the previous version were removed in favor of #42236. |
t-algebra
new-contributor
maintainer-merge
label:t-algebra$ |
184/0 |
Mathlib.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/LinearAlgebra/Matrix/ElementaryRowOperations.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean |
4 |
39 |
['JJYYY-JJY', 'SnirBroshi', 'bryangingechen', 'copilot-pull-request-reviewer', 'dagurtomas', 'github-actions', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'ocfnash', 'themathqueen', 'wwylele'] |
mattrobball and ocfnash assignee:ocfnash assignee:mattrobball |
5-30967 5 days ago |
5-33378 5 days ago |
91-35344 91 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 |
5-29818 5 days ago |
7-73167 7 days ago |
7-73155 7 days |
| 42895 |
cameronfreer author:cameronfreer |
feat(SetTheory/Ordinal): add lift_sSup and lift_iSup |
Add `InitialSeg.map_sSup` and `InitialSeg.map_iSup` for conditionally complete linear orders with bottom. Specializing these to `Ordinal.liftInitialSeg` gives `Ordinal.lift_sSup`, `Ordinal.lift_iSup`, `Ordinal.lift_iSup_le`, and `Ordinal.lift_iSup_le_iff`.
The `sSup` theorem handles the empty set using preservation of bottom and the nonempty case using normality. The `iSup` theorem is derived from it. Both use an explicit boundedness hypothesis; in particular, `lift_iSup` assumes `BddAbove (Set.range f)` rather than requiring the index type to be small.
🤖 This PR was developed with assistance from Claude and GPT models, using [lean4-skills](https://github.com/cameronfreer/lean4-skills) and [lean-lsp-mcp](https://github.com/oOo0oOo/lean-lsp-mcp).
|
t-set-theory
new-contributor
LLM-generated
|
40/0 |
Mathlib/Order/IsNormal.lean,Mathlib/SetTheory/Ordinal/Family.lean |
2 |
11 |
['cameronfreer', 'github-actions', 'plp127', 'vihdzp'] |
nobody |
5-28212 5 days ago |
5-45314 5 days ago |
5-46256 5 days |
| 41734 |
IlPreteRosso author:IlPreteRosso |
feat(DiscreteConvolution): add ring convolution definitions and properties |
Continuation of PR #34191
Adds ring convolution and its elementary properties.
Aligns the API with [Day convolution](https://leanprover-community.github.io/mathlib4_docs/Mathlib/CategoryTheory/Monoidal/DayConvolution.html) structure. Although no idea how to bridge them right now. |
t-topology
new-contributor
|
211/27 |
Mathlib/Topology/Algebra/InfiniteSum/DiscreteConvolution.lean |
1 |
20 |
['IlPreteRosso', 'github-actions', 'grunweg', 'j-loreaux', 'mathlib-merge-conflicts'] |
j-loreaux assignee:j-loreaux |
5-9909 5 days ago |
5-10769 5 days ago |
39-39019 39 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 |
19 |
['Robertboy18', 'SnirBroshi', 'copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] |
eric-wieser assignee:eric-wieser |
5-9040 5 days ago |
5-9040 5 days ago |
13-81341 13 days |
| 40006 |
tautschnig author:tautschnig |
feat(Data/ZMod/Basic): idempotents in ZMod (p^d) are exactly {0, 1} |
Add sq_eq_self_iff_eq_zero_or_one: in ZMod (p^d) for prime p and d > 0, x^2 = x iff x = 0 or x = 1.
This generalises eq_zero_or_one_of_sq_eq_self (which requires CancelMonoidWithZero, i.e., no zero divisors) to the prime-power case. ZMod (p^d) has zero divisors for d >= 2, so the mul_left_injective₀ argument used by the existing lemma does not apply. The proof works by lifting to ℕ, using that if gcd(a, b) = 1 and p^d | a*b then p^d divides one of a or b (by Euclid's lemma), then noting that a = x.val and b = x.val - 1 are consecutive naturals and hence coprime.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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/Data/ZMod/Basic.lean |
1 |
3 |
['Julian-Kuelshammer', 'github-actions'] |
joneugster assignee:joneugster |
5-1747 5 days ago |
86-57259 86 days ago |
86-57942 86 days |
| 42354 |
sankalpsthakur author:sankalpsthakur |
doc(Data/Rel): clarify the SetRel representation |
Rewrites the implementation-notes section explaining why `SetRel` represents relations as `Set (α × β)` rather than `α → β → Prop`. The previous text framed the two representations as competing, with the function form as default and `SetRel` mainly justified by dedicated notation. This reframes it around what each representation is *for*: the function form when a relation is primarily applied to arguments, the set-of-pairs form when the relation itself is manipulated as an object — with concrete examples (inverse as preimage, transport as image, union/intersection/complement/subset-order inherited from `Set`). Also fixes a stray double space.
Motivated by #39397.
### Validation
Documentation-only change (module docstring); no executable code touched.
Closes #39397
### AI/LLM disclosure
AI coding tools were used to help draft this change and PR description. I reviewed the complete change and the reasoning before submitting. |
t-data
new-contributor
LLM-generated
|
16/13 |
Mathlib/Data/Rel.lean |
1 |
4 |
['github-actions', 'mathlib-merge-conflicts'] |
nobody |
4-74768 4 days ago |
4-76754 4 days ago |
21-56946 21 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'] |
nobody |
4-65286 4 days ago |
27-59854 27 days ago |
28-18875 28 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'] |
nobody |
4-36343 4 days ago |
42-11620 42 days ago |
46-15003 46 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 |
4-34398 4 days ago |
4-36729 4 days ago |
58-28997 58 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 |
4-2092 4 days ago |
5-29868 5 days ago |
12-85357 12 days |
| 41803 |
benjub author:benjub |
feat(Topology/order/IntermediateValue): continuous induction from sSup membership |
Add `mem_of_csSup_mem_of_forall_exists_gt`, that generalizes `IsClosed.mem_of_ge_of_forall_exists_gt` by weakening the closedness hypothesis to membership of the supremum. Derive `IsClosed.mem_of_ge_of_forall_exists_gt` from it.
---
This result was already in essence in `IsClosed.mem_of_ge_of_forall_exists_gt`, which uses closedness only to obtain membership of the supremum.
This new result does not require `[TopologicalSpace α] [OrderTopology α]` (it is purely order-theoretic), but I still placed it next to `IsClosed.mem_of_ge_of_forall_exists_gt`. I am open to moving it to another file if the reviewer sees fit.
There are cases where that more general lemma is needed, because closedness either does not hold or would be longer to prove. For instance, I need that generalization to shorten the proof in the draft PR #41552. |
t-topology
new-contributor
|
21/11 |
Mathlib/Topology/Order/IntermediateValue.lean |
1 |
3 |
['benjub', 'github-actions'] |
ADedecker assignee:ADedecker |
4-1742 4 days ago |
39-3628 39 days ago |
39-3616 39 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
|
209/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Deligne.lean,Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/NumberTheory/LSeries/HardyZ.lean |
4 |
7 |
['github-actions', 'teal-sea', 'wwylele'] |
nobody |
3-86287 3 days ago |
4-6407 4 days ago |
4-6395 4 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 |
2 |
['github-actions'] |
nobody |
3-54782 3 days ago |
35-49199 35 days ago |
35-49687 35 days |
| 42912 |
justin-palumbo author:justin-palumbo |
feat(Topology/GDelta): a completely metrizable subspace of a T6 space is Gδ |
Adds TopologicalSpace.IsCompletelyMetrizableSpace.isGδ: a completely metrizable subspace of a T6 space is Gδ
This is one direction of a foundational fact in descriptive set theory --- the Polish subspaces of a Polish space are exactly the Gδ subsets.
The proof here is modeled on the exposition in Anush Tserunyan's descriptive set theory notes https://www.math.mcgill.ca/atserunyan/Teaching_notes/dst_lectures.pdf, with one adjustment; to make the formalization easier and avoid having multiple distance metrics instantiated at the same time, instead of directly defining open `U_n` with `s = ⋂ n, U` define them such that `s = closure s ∩ ⋂ n, U n` and then appeal to the fact closed sets are Gδ in a perfectly normal space.
---
- [ ] depends on: #42896 [which fixes buggy naming present in Topology/Metrizable/CompletelyMetrizable]
This can be viewed as a companion to #42693, which - under the stronger assumption of the ambient space being Polish - establishes the other direction --- a Gδ subspace of a Polish space is itself Polish.
Together, these give Alexandrov's theorem, characterizing the Polish subspaces of an ambient Polish space as exactly the Gδ ones, and (via `Metric.PiNatEmbed.exists_embedding_to_hilbert_cube`) Polish spaces as exactly the Gδ subsets of the Hilbert cube. If and when both these PRs are committed, I anticipate adding these consequences to Topology/MetricSpace/Polish.lean
LLM usage: I wrote the initial version myself, while using Google's free "AI mode" to help me find relevant lemma names in the codebase, and afterward used helped Claude Opus to review, which led to simplifying some of the arguments. I take full responsibility for the code here
|
t-topology
new-contributor
|
91/0 |
Mathlib.lean,Mathlib/Topology/GDelta/CompletelyMetrizable.lean |
2 |
8 |
['github-actions', 'justin-palumbo', 'mathlib-dependent-issues', 'plp127'] |
nobody |
3-51084 3 days ago |
4-44929 4 days ago |
4-45214 4 days |
| 41898 |
marcinbugaj author:marcinbugaj |
feat(Analysis/Convex): majorization preorder and T-transform decomposition |
Add the majorization preorder and its T-transform decomposition.
**Majorization.** `Majorizes a b` (notation `a ≺ b`) is defined for `a b : ι → M` with `ι` an arbitrary `Fintype` and `M` an ordered additive commutative monoid: the two tuples have equal total sum and, for every `k`, the maximal sum over `k`-element subsets of `a` is at most that of `b` (`maxSubsetSum`). This is classical (Hardy–Littlewood–Pólya / Schur) majorization; it lives on the values, so it is permutation-invariant and needs no order on the index (in particular it is not first-order stochastic dominance). It is shown to be a preorder (`Majorizes.refl`, `Majorizes.trans`, the `Trans` instance), with `majorizes_iff_descPrefixSum` characterizing it via sorted prefix sums, and `comp_perm_majorizes_iff` / `majorizes_comp_perm_iff` recording permutation-invariance.
**T-transforms.** A single T-transform (Robin Hood transfer) is the operation `tTransform a s` for a step `s : TStep ι K` (its two coordinates `k, l` and transfer parameter `t`), over an ordered field `K` . RelatedByTTransform b a` means `b = tTransform a s` for some valid step, and `discrepancy a b` counts the coordinates at which `a` and `b` differ.
**Decomposition.** `majorizes_iff_reflTransGen_relatedByTTransform`: `a ≺ b` iff the decreasing rearrangement of `a` is reachable from that of `b` by a finite chain of T-transforms. The chain is also produced as explicit data: `majorizesTStepList` is a `def` returning the concrete `List (TStep …)` bundled with a proof that it is a valid chain folding sorted `b` to sorted `a`, of length at most `discrepancy`; `majorizes_exists_tStepList` is the existence form, and the `ReflTransGen` characterization is derived from it. The construction is computable: over a computable ordered field such as `ℚ` the step list evaluates to a concrete value.
|
t-analysis
new-contributor
|
960/0 |
Mathlib.lean,Mathlib/Analysis/Convex/Majorization.lean,docs/references.bib |
3 |
13 |
['YaelDillies', 'github-actions', 'marcinbugaj'] |
nobody |
3-41425 3 days ago |
30-49036 30 days ago |
35-46511 35 days |
| 42916 |
0x00b1 author:0x00b1 |
feat(Analysis/Numerical): add (real-valued) bisection method |
Bisection method for real-valued functions on closed intervals. This is an exact, non-computable real-number formalization rather than a floating-point implementation. Nevertheless, I did try to make everything sufficiently flexible to simplify changes if floating-point is eventually added to mathlib4!
The core API represents each bisection state with endpoints in `Set.Icc a b`, ensuring that the function is never evaluated outside its domain. I provided a convenience API for functions `ℝ → ℝ` (on top of the interval-restricted core API). Degenerate intervals are also supported. I listed all the results that I think are important in the comments.
This is my first contribution to mathlib4 so please let me know if you have suggestions on improving either of the APIs and please let me know if you want me to add any real-valued theorems! Likewise, any suggestions on rewriting`dist_midpoint_step_midpoint` to feel less nasty would be appreciated.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
757/0 |
Mathlib.lean,Mathlib/Analysis/Numerical/Bisection.lean |
2 |
4 |
['0x00b1', 'github-actions', 'luigi-massacci'] |
luigi-massacci assignee:luigi-massacci |
3-36234 3 days ago |
5-21069 5 days ago |
5-21057 5 days |
| 42165 |
bocowgill author:bocowgill |
feat(Probability/HasCondDistrib): characterize independence using conditional distributions |
This PR uses conditional distributions to characterize independence of two random variables.
It adds eight public declarations to `Mathlib/Probability/HasCondDistrib.lean`, which is the only file modified:
- `indepFun_iff_hasCondDistrib_const_of_hasLaw`: characterizes independence using a constant conditional-distribution kernel when the laws are specified.
- `indepFun_iff_hasCondDistrib_const`: specializes this characterization to the marginal laws `P.map X` and `P.map Y`.
- `IndepFun.hasCondDistrib_const`: the forward implication of the preceding equivalence.
- `HasCondDistrib.indepFun_of_const`: the reverse implication.
- `hasCondDistrib_condDistrib`: shows that the regular conditional distribution `condDistrib Y X P` satisfies `HasCondDistrib`.
- `hasCondDistrib_iff_condDistrib_ae_eq`: characterizes finite kernels satisfying `HasCondDistrib` by almost-everywhere equality with `condDistrib`.
- `indepFun_iff_condDistrib_ae_eq_const_of_hasLaw`: characterizes independence by almost-everywhere equality of `condDistrib` with the constant kernel at the specified law.
- `indepFun_iff_condDistrib_ae_eq_const`: specializes this characterization to the marginal laws.
The PR adds no new file and makes no change to the root `Mathlib.lean` imports.
---
### Motivation
These results provide a basic building block for formalizing randomized experiments and causal identification. The main result provides a starting point for later ignorability and conditional-independence results in causal inference.
### LLM disclosure
For theorem planning and Lean implementation, I substantially used Codex by OpenAI. I also used it for suggestions around naming and documentation, for iterating on the proofs, and for validating my commits locally.
I manually searched for the best locations and earlier results to build upon. I personally reviewed both the mathematical statements and Lean code (line-by-line), as well as the suggestions around naming and API choices. I also reviewed and confirmed that I can explain each step of the results (both Mathematics and Lean syntax).
To validate the change, I directly compiled the modified file and ran a targeted build. I also ran the style linter, and completed a full `lake build` and a full `lake test`.
Please note: This is one of my first mathlib contributions. I welcome corrections or suggestions about all aspects of this PR. I'm prepared to revise it as necessary, and to learn from the review.
|
t-measure-probability
LLM-generated
new-contributor
large-import
maintainer-merge
|
73/3 |
Mathlib/Probability/HasCondDistrib.lean |
1 |
29 |
['CoolRmal', 'EtienneC30', 'bocowgill', 'github-actions', 'leanprover-radar'] |
kex-y assignee:kex-y |
3-34484 3 days ago |
3-79152 3 days ago |
26-71032 26 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 |
3-2606 3 days ago |
3-86142 3 days ago |
3-86130 3 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 |
38 |
['ADedecker', 'ChiCubed', 'github-actions', 'themathqueen', 'wwylele'] |
ocfnash assignee:ocfnash |
3-1744 3 days ago |
18-83202 18 days ago |
69-11325 69 days |
| 40973 |
certik author:certik |
feat: multiplicative automatic continuity on ℝ |
This PR adds the multiplicative companion of the existing additive automatic-continuity theorem `AddMonoidHom.continuous_of_measurable`. See the git commit descriptions for all the details.
Depends on https://github.com/leanprover-community/mathlib4/pull/40976.
AI usage disclosure: I used Claude Opus 4.8 to create the theorems and proofs in my own Lean project, then extracted them into this PR since I think they are general purpose and would be useful for other people. I iterated on the proofs until they are as simple as I could get them. I am new to Lean, so if something should be reworked, please let me know. Lean is amazing, I was able to use it to prove various theorems and check my derivations. This is my little contribution back to the project. |
t-measure-probability
LLM-generated
new-contributor
|
159/0 |
Mathlib.lean,Mathlib/MeasureTheory/Measure/Haar/AutomaticContinuity.lean |
2 |
10 |
['certik', 'github-actions', 'mathlib-merge-conflicts', 'wwylele'] |
RemyDegenne assignee:RemyDegenne |
3-1743 3 days ago |
57-65673 57 days ago |
60-2958 60 days |
| 41523 |
Harmenszoon author:Harmenszoon |
feat(Analysis/SpecialFunctions): add the Chase-Lovett diagonal reduction for binEntropy |
This PR adds the two-variable entropy inequality of Chase and Lovett ([arXiv:2211.11689](https://arxiv.org/abs/2211.11689), Lemma 2.2): for `x, y ∈ [0, 1]`,
```
x * binEntropy y + y * binEntropy x ≤ 2 * sqrt (x * y) * binEntropy (sqrt (x * y))
```
in a new leaf file `Mathlib/Analysis/SpecialFunctions/BinaryEntropy/Diagonal.lean`, together with its `negMulLog (1 - ·)` half (`Real.mul_negMulLog_one_sub_add_le`) and a `private` concavity layer for the comparison function `η u = exp u * negMulLog (1 - exp (-u))`. Two entries are added to `docs/references.bib` (Chase–Lovett arXiv:2211.11689, Boppana arXiv:2301.09664).
**Motivation.** This inequality is the reusable reduction step behind the recent entropic lower bounds for Frankl's union-closed sets conjecture (Gilmer; Alweiss–Huang–Sellke; Chase–Lovett; Sawin; Boppana): it reduces two-variable inequalities of Boppana type `K * (x * h y + y * h x) ≤ h (x * y)` to one-variable inequalities `2 * K * t * h t ≤ h (t ^ 2)`. `Mathlib/Analysis/SpecialFunctions/BinaryEntropy.lean` currently contains calculus basics for `binEntropy` only, and no inequality of this family; I checked current master for collisions before opening this. A kernel-checked downstream application — a complete Lean formalization of the union-closed lower bound at the constant `(3 - √5)/2` that uses exactly this reduction — is public at https://github.com/demonstrandum-research/artifacts (the `UCFrankl` development), which I maintain.
**Proof shape** (one page of calculus): substituting `x = exp (-u)`, the inequality becomes midpoint concavity of `η` on `[0, ∞)`; the `negMulLog (x * y)` parts of the two sides cancel exactly, the `negMulLog (1 - ·)` parts transfer to `η` via the identity `x * η (-log x) = negMulLog (1 - x)`, and `η'' ≤ 0` reduces to `log t ≤ t - 1`. Stating `η` through `negMulLog` absorbs the `0 * log 0` boundary behaviour, so no separate edge-case argument is needed at `x = 1`.
**Design notes / open questions for reviewers.**
- Hypotheses are stated as `0 ≤ x`/`x ≤ 1` pairs rather than `x ∈ Set.Icc 0 1`; happy to convert if the membership form is preferred.
- The `η`-machinery is `private`; it could be exposed if judged independently useful.
- File placement: a new `BinaryEntropy/Diagonal.lean` leaf keeps the import footprint of `BinaryEntropy.lean` unchanged (the proof needs `Analysis.Convex.Deriv`); merging into the main file is also possible if preferred.
- Naming: `mul_binEntropy_add_mul_binEntropy_le` / `mul_negMulLog_one_sub_add_le` follow the conclusion-based convention but I am glad to rename.
**AI disclosure** (per the [mathlib AI policy](https://leanprover-community.github.io/contribute/index.html)): the Lean code in this PR was generated by LLM agents (Anthropic's Claude, running in an agent pipeline that I operate under the name Demonstrandum), and was then compile-verified against mathlib and reviewed by me. This PR description was also prepared with AI assistance and reviewed by me. The proof is elementary calculus as summarized above; I understand it and take full responsibility for the contribution. I am adding the `LLM-generated` label as required. The downstream `UCFrankl` development linked above (kernel-checked, axioms `[propext, Classical.choice, Quot.sound]` only) is the evidence that the lemma carries real weight in applications.
---
- [x] depends on: nothing
|
t-analysis
LLM-generated
new-contributor
|
227/0 |
Mathlib.lean,Mathlib/Analysis/SpecialFunctions/BinaryEntropy/Diagonal.lean,docs/references.bib |
3 |
5 |
['Harmenszoon', 'Timeroot', 'github-actions'] |
urkud assignee:urkud |
3-1742 3 days ago |
45-76048 45 days ago |
45-76036 45 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
|
102/0 |
Mathlib.lean,Mathlib/Topology/Covering/FundamentalGroupCircle.lean |
2 |
2 |
['github-actions'] |
ADedecker assignee:ADedecker |
3-1741 3 days ago |
37-50885 37 days ago |
37-50977 37 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'] |
dagurtomas assignee:dagurtomas |
3-1736 3 days ago |
5-51161 5 days ago |
7-66236 7 days |
| 42996 |
deancureton author:deancureton |
feat(MeasureTheory): absolute continuity preserved by Lipschitz postcomposition |
Adds `LipschitzOnWith.comp_absolutelyContinuousOnInterval` and its global `LipschitzWith` specialization.
---
[](https://gitpod.io/from-referrer/) |
t-measure-probability
new-contributor
|
23/0 |
Mathlib/MeasureTheory/Function/AbsolutelyContinuous.lean |
1 |
3 |
['github-actions'] |
nobody |
2-75377 2 days ago |
2-76048 2 days ago |
2-76036 2 days |
| 42973 |
gdies author:gdies |
feat(CategoryTheory/Adhesive): coslices of adhesive categories are adhesive |
---
Adding the coslice case in adhesive2004 proposition (ii):
If **C** is adhesive then so are **C**/C and C/**C** for any object C of **C**
done as a (sub)project at the Utrecht summers school 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/)
|
t-category-theory
new-contributor
|
6/4 |
Mathlib/CategoryTheory/Adhesive/Over.lean |
1 |
3 |
['github-actions', 'mathlib-bors'] |
nobody |
2-53863 2 days ago |
2-54690 2 days ago |
3-47043 3 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 |
2-53023 2 days ago |
2-55970 2 days ago |
7-10939 7 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'] |
nobody |
2-32845 2 days ago |
3-36455 3 days ago |
3-36443 3 days |
| 41132 |
owenpkent author:owenpkent |
feat(Analysis/SpecialFunctions/Gamma/Digamma): reflection, iterated recurrence, and duplication for digamma |
This PR adds three standard identities for `Complex.digamma` to `Mathlib/Analysis/SpecialFunctions/Gamma/Digamma.lean`:
- the iterated recurrence `digamma (s + n) = digamma s + ∑ k ∈ Finset.range n, (s + k)⁻¹` (`digamma_apply_add_nat`),
- the reflection formula `digamma (1 - s) - digamma s = π * cot (π * s)` (`digamma_reflection`),
- the duplication (doubling) formula `digamma (2 * s) = (1 / 2) * (digamma s + digamma (s + 1 / 2)) + log 2` (`digamma_two_mul`).
These are the natural digamma companions to results already in Mathlib:
- the single-step recurrence `Complex.digamma_apply_add_one` (the iterated form is its finite-induction closure);
- the Gamma reflection formula `Complex.Gamma_mul_Gamma_one_sub` (the digamma reflection is its logarithmic derivative);
- the Legendre duplication formula `Complex.Gamma_mul_Gamma_add_half` (the digamma duplication is its logarithmic derivative).
The proofs use only existing Mathlib API (the `Gamma_mul_Gamma_*` product formulas together with the `logDeriv` calculus lemmas). No new imports are required: the dependencies are already transitively available in `Digamma.lean`. Each new theorem has a docstring and is listed under the module's `## Main statements`.
The three theorems build green against current master, and `#print axioms` for each is exactly `[propext, Classical.choice, Quot.sound]` (no `sorry`, no `native_decide`).
---
**AI use disclosure** (per Mathlib's contribution guidelines): these identities were formalized in a personal research project with the help of an AI coding agent (Claude Code). The agent assisted in developing the original proofs and in porting them onto current Mathlib master (transplanting the verified proofs, adapting the imports to the new module system, and confirming the build is green with `#print axioms` clean). The underlying results are standard and the proofs use 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-analysis
new-contributor
LLM-generated
|
104/0 |
Mathlib/Analysis/SpecialFunctions/Gamma/Digamma.lean |
1 |
14 |
['SnirBroshi', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'owenpkent'] |
j-loreaux assignee:j-loreaux |
2-19048 2 days ago |
2-19048 2 days ago |
21-26093 21 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 |
2-18279 2 days ago |
2-78508 2 days ago |
2-78496 2 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 |
14 |
['TheGoedeDoel', 'chrisflav', 'github-actions'] |
joneugster assignee:joneugster |
2-1745 2 days ago |
73-9769 73 days ago |
82-9801 82 days |
| 40579 |
jcreinhold author:jcreinhold |
feat(Algebra/Category/Ring): preserve limits to CommMonCat |
Adds the missing instance saying that forgetting a commutative ring to its multiplicative commutative monoid preserves limits. |
t-algebra
new-contributor
label:t-algebra$ |
7/0 |
Mathlib/Algebra/Category/Ring/Limits.lean |
1 |
8 |
['felixpernegger', 'github-actions', 'jcreinhold'] |
joneugster assignee:joneugster |
2-1742 2 days ago |
70-55057 70 days ago |
70-63519 70 days |
| 42992 |
deancureton author:deancureton |
feat(MeasureTheory): basic lemmas for absolute continuity |
Adds congruence and reflexivity lemmas for `AbsolutelyContinuousOnInterval`. (see `UniformContinuousOn.congr` and `IntervalIntegrable.refl`)
---
[](https://gitpod.io/from-referrer/) |
t-measure-probability
new-contributor
|
16/0 |
Mathlib/MeasureTheory/Function/AbsolutelyContinuous.lean |
1 |
2 |
['github-actions'] |
EtienneC30 assignee:EtienneC30 |
2-1736 2 days ago |
3-26 3 days ago |
3-14 3 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 |
1-63098 1 day ago |
1-64255 1 day ago |
1-64243 1 day |
| 40345 |
imalinowskip author:imalinowskip |
feat(Probability): Cramér-Wold |
|
t-measure-probability
new-contributor
|
114/1 |
Mathlib.lean,Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean,Mathlib/MeasureTheory/Measure/CharacteristicFunction/Basic.lean,Mathlib/MeasureTheory/Measure/LevyConvergence.lean,Mathlib/Probability/CramerWold.lean |
5 |
78 |
['EtienneC30', 'RemyDegenne', 'felixpernegger', 'github-actions', 'imalinowskip', 'mathlib-merge-conflicts', 'wwylele'] |
EtienneC30 assignee:EtienneC30 |
1-42009 1 day ago |
1-42484 1 day ago |
51-2320 51 days |
| 41827 |
mpacholski author:mpacholski |
feat(LinearAlgebra/TensorProduct): port lifts API from PiTensorProduct |
Port the `lifts` API from `PiTensorProduct` to the binary `TensorProduct` in `Mathlib/LinearAlgebra/TensorProduct/Basic.lean`.
This API provides the necessary machinery to represent any tensor element as a formal sum of pure generators in the free monoid, which is a key prerequisite for defining and proving properties of the binary projective seminorm.
It is a direct reflection of lifts API in `Mathlib/LinearAlgebra/PiTensorProduct/Basic.lean`.
Specifically, add:
- `FreeAddMonoid.toTensorProduct`: proves that the image of a free monoid element is the sum of its pure tensor components.
- `lifts`: defines the set of all valid monoid representations of a given tensor.
- `nonempty_lifts`: proves that every tensor has at least one representation.
- `lifts_zero`, `lifts_add`, `lifts_smul`: establish the algebraic behavior of lifts under addition, zero, and scalar 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/)
- [x] depends on: #41731 |
t-algebra
new-contributor
label:t-algebra$ |
62/0 |
Mathlib/LinearAlgebra/TensorProduct/Basic.lean |
1 |
15 |
['github-actions', 'mathlib-dependent-issues', 'mpacholski', 'themathqueen'] |
nobody |
1-36879 1 day ago |
1-37107 1 day ago |
12-69949 12 days |
| 42404 |
Robertboy18 author:Robertboy18 |
chore(downstream_repos): add TorchLean |
This PR adds [TorchLean](https://github.com/lean-dojo/TorchLean) to `scripts/downstream_repos.yml`!
TorchLean is the first unified Lean 4 framework for neural-network specification,
execution, training, and formal verification. It depends on Mathlib and maintains
build and documentation workflows on its default branch! Let me know if something else is needed:)
|
CI
new-contributor
|
7/0 |
scripts/downstream_repos.yml |
1 |
2 |
['copilot-pull-request-reviewer', 'github-actions'] |
nobody |
1-7982 1 day ago |
18-1115 18 days ago |
18-1103 18 days |
| 39366 |
akiezun author:akiezun |
feat(Data/Nat): add prime divisibility for ascFactorial and choose |
Adds two prime-divisibility lemmas for natural-number factorial/binomial APIs.
The first characterizes when a prime divides an ascending factorial:
`Nat.Prime.dvd_ascFactorial_iff`.
The second applies this to binomial coefficients:
`Nat.Prime.dvd_choose_add_sub_one_iff`, using
`Nat.ascFactorial_eq_factorial_mul_choose'` and cancellation of the `n!` factor
when `n < 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-data
new-contributor
large-import
|
46/0 |
Mathlib.lean,Mathlib/Data/Nat/Choose/Consecutive.lean,Mathlib/Data/Nat/Factorial/BigOperators.lean |
3 |
9 |
['SnirBroshi', 'akiezun', 'github-actions', 'wwylele'] |
Vierkantor assignee:Vierkantor |
1-1746 1 day ago |
97-26023 97 days ago |
101-36390 101 days |
| 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
|
177/0 |
Mathlib.lean,Mathlib/Dynamics/Ergodic/KrylovBogolyubov.lean |
2 |
4 |
['github-actions', 'mathlib-bors'] |
sgouezel assignee:sgouezel |
1-1741 1 day ago |
3-40485 3 days ago |
3-40790 3 days |
| 43047 |
JX-Mo author:JX-Mo |
fix(RepresentationTheory): move `Equiv.coe_invFun` to the correct symm notion to fit the statement as it suggests |
The current statement of `lemma coe_invFun : φ.invFun = φ.symm := rfl` actually reads `φ.symm` as`⇑φ.toLinearEquiv.symm`. However the context tends to make `Representation.Equiv` as the simp normal form, not `φ.toLinearEquiv`. We move it to where `Representation.Equiv.symm` has been defined so that the RHS has the correct form to get access to other API lemmas more directly.
|
new-contributor
t-algebra
easy
label:t-algebra$ |
2/2 |
Mathlib/RepresentationTheory/Intertwining.lean |
1 |
4 |
['JX-Mo', 'Whysoserioushah', 'github-actions'] |
nobody |
0-75945 21 hours ago |
1-23653 1 day ago |
1-23641 1 day |
| 38369 |
quantumsnow author:quantumsnow |
feat(AlgebraicTopology): Eilenberg Steenrod axioms |
This introduces the Eilenberg-Steenrod axioms for a homology 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]
-->
- [x] depends on: #36621
- [x] depends on: #39236
[](https://gitpod.io/from-referrer/)
|
new-contributor
t-algebraic-topology
large-import
|
305/7 |
Mathlib/AlgebraicTopology/EilenbergSteenrod.lean,Mathlib/Topology/Category/TopPair.lean |
2 |
77 |
['chrisflav', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'quantumsnow'] |
robin-carlier assignee:robin-carlier |
0-48930 13 hours ago |
0-48930 13 hours ago |
55-81631 55 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 |
0-46271 12 hours ago |
0-46365 12 hours ago |
42-57278 42 days |
| 43064 |
j-white author:j-white |
feat(Analysis/Fourier/AddCircle): add evaluation lemmas for fourier characters |
Add the argument-side counterparts of the index lemmas (`fourier_add` / `fourier_neg`):
* `fourier_eval_add`
* `fourier_eval_neg`
* `fourier_eval_sub`
Additionally, add the index-subtraction lemma `fourier_sub` (with `simp` normal form `fourier_sub'`, mirroring `fourier_add'`). |
t-analysis
new-contributor
|
23/0 |
Mathlib/Analysis/Fourier/AddCircle.lean |
1 |
2 |
['github-actions'] |
nobody |
0-42254 11 hours ago |
0-42937 11 hours ago |
0-42961 11 hours |
| 38319 |
Zetetic-Dhruv author:Zetetic-Dhruv |
feat(Combinatorics/SetFamily): Assouad's dual VC bound |
Adds the Finset-level form of Assouad's 1983 dual VC bound: if a family
`𝒜 : Finset (Finset α)` has VC dimension at most `d`, then for any
ground set `X : Finset α` the dual family
`{𝒜.filter (· ∋ x) : x ∈ X}` has VC dimension at most `2 ^ (d + 1) - 1`.
New declarations (in `Finset` namespace):
- `dualFamily 𝒜 X`: for each `x ∈ X`, the subfamily `{A ∈ 𝒜 | x ∈ A}`
- `mem_dualFamily` (`@[simp]`): membership characterisation
- `exists_shatters_of_dualFamily_shatters`: Assouad's bitstring-coding lemma
- `vcDim_dualFamily_le`: the headline VC bound
Proof by Assouad's classical bitstring-coding argument. Sits on top of `Finset.shatterer` / `Finset.vcDim` from
`Mathlib.Combinatorics.SetFamily.Shatter`.
References:
- P. Assouad, Densite et dimension, Ann. Inst. Fourier 33(3) (1983), Thm 2.13
- J. Matousek, Lectures on Discrete Geometry, GTM 212, Springer, 2002, Section 10.3 Lemma 10.3.3
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
maintainer-merge
|
199/0 |
Mathlib.lean,Mathlib/Combinatorics/SetFamily/DualVC.lean,docs/references.bib |
3 |
45 |
['Shreyas4991', 'YaelDillies', 'Zetetic-Dhruv', 'github-actions'] |
nobody |
0-42222 11 hours ago |
106-13463 106 days ago |
122-60500 122 days |
| 43069 |
Ming-Yuan-Zhu author:Ming-Yuan-Zhu |
feat: add second derivative signs at local extrema |
This PR adds `IsLocalMax.deriv_deriv_nonpos` and
`IsLocalMin.deriv_deriv_nonneg`, complementing the existing
second-derivative tests in `DerivativeTest.lean`.
The immediate motivation is the formalization of the maximum principle
for elliptic PDEs, where the sign of the second derivatives at an
interior extremum is a basic ingredient.
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below 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
|
52/0 |
Mathlib/Analysis/Calculus/DerivativeTest.lean |
1 |
2 |
['github-actions'] |
nobody |
0-36516 10 hours ago |
0-37173 10 hours ago |
0-37161 10 hours |
| 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
|
80/7 |
Mathlib/Analysis/InnerProductSpace/Reproducing.lean |
1 |
41 |
['TJHeeringa', 'github-actions', 'j-loreaux', 'jkandel1', 'mathlib-merge-conflicts', 'mathlib-splicebot', 'themathqueen'] |
ADedecker assignee:ADedecker |
0-26896 7 hours ago |
3-36096 3 days ago |
37-41320 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
|
13/3 |
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean |
1 |
31 |
['JadAbouHawili', 'SnirBroshi', 'github-actions'] |
nobody |
0-26447 7 hours ago |
3-61480 3 days ago |
7-18169 7 days |
| 42971 |
ashebson author:ashebson |
fix(ProfiniteGrp): simplify explicit limit projections |
The naturality proof for `ProfiniteCompletion.lift` previously needed a brittle pointwise `change`. The underlying problem was that simplification crossed several semireducible diagram/forgetful-functor boundaries at once, producing terms that are definitionally equal but no longer type-correct at implicit transparency.
This PR:
- makes the two finite-quotient diagram composites reducible abbreviations;
- states `quotientMap` using the diagram object types and maps it through the existing `FiniteGrp ⥤ ProfiniteGrp` forgetful functor;
- adds a pointwise simp lemma for an explicit limit projection followed by a mapped finite-group morphism (with its additive counterpart); and
- rewrites `ProfiniteCompletion.lift` naturality through that API while keeping the limit point bundled, removing the problematic pointwise `change`.
--------
## AI disclosure
AI (OpenAI Codex) was used extensively for this PR. It was used to:
- investigate the original TODO and reproduce why `dsimp` failed;
- explore and discard several possible fixes;
- identify the semireducible diagram/forgetful-functor boundaries involved;
- design and implement the final `ProfiniteGrp` API simplification and `ProfiniteCompletion.lift` proof changes;
- run the relevant Lean builds and direct compilation checks; and
- draft the commit message and PR description.
The final changes were reviewed through the resulting diff and verified locally. |
t-topology
new-contributor
LLM-generated
|
29/12 |
Mathlib/Topology/Algebra/Category/ProfiniteGrp/Basic.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Completion.lean,Mathlib/Topology/Algebra/Category/ProfiniteGrp/Limits.lean |
3 |
8 |
['ashebson', 'github-actions', 'grunweg', 'mathlib-bors'] |
nobody |
0-26074 7 hours ago |
1-47387 1 day ago |
1-80630 1 day |
| 43034 |
bocowgill author:bocowgill |
feat(Data/Nat/MaxPrimeFac): add greatest prime factor |
## Summary
This PR adds a computable greatest-prime-factor operation for natural numbers, `Nat.maxPrimeFac`, together with its basic API. It returns `0` at `0`, `1` at `1`, and the greatest prime factor for `n > 1`.
This work is adapted from [Formal Conjectures PR #4817](https://github.com/google-deepmind/formal-conjectures/pull/4817), where Yael Dillies [reviewed the implementation and suggested upstreaming it to mathlib](https://github.com/google-deepmind/formal-conjectures/pull/4817#pullrequestreview-4995500952).
---
## Verification
Verification passed for the changed module and tests, `lake exe mk_all`, the style and declaration linters, and `git diff --check`. Both declared imports were confirmed necessary by removing each in turn.
## AI assistance
I used OpenAI Codex while developing the original Formal Conjectures implementation and this mathlib port. Codex assisted with searching the existing API, generating and editing portions of the Lean proofs, adapting imports and documentation, separating the computational tests, replacing deprecated API usage, diagnosing elaboration errors, and running build, lint, and diff checks.
I reviewed every submitted declaration and understand the definitions, proofs, design choices, and attributes in this PR. I can explain and justify them independently.
The original Formal Conjectures implementation contained a substantial amount of LLM-generated code. This PR therefore carries the `LLM-generated` label. |
new-contributor
t-data
LLM-generated
|
181/0 |
Mathlib.lean,Mathlib/Data/Nat/MaxPrimeFac.lean,MathlibTest/MaxPrimeFac.lean |
3 |
52 |
['SnirBroshi', 'YaelDillies', 'bocowgill', 'github-actions'] |
YaelDillies assignee:YaelDillies |
0-2674 44 minutes ago |
0-2833 47 minutes ago |
1-70938 1 day |
| 43072 |
JadAbouHawili author:JadAbouHawili |
feat(Combinatorics/SimpleGraph): independence number of cycleGraph of order 1 is 1 |
---
<!-- Your PR title will become the first line of the commit message.
In this box, the text above the `---` (if not empty) will be appended
to the commit message, and can be used to give additional context or
details. Please leave a blank newline before the `---`, otherwise GitHub
will format the text above it as a title.
For details on the "pull request lifecycle" in mathlib, please see:
https://leanprover-community.github.io/contribute/index.html
In particular, note that most reviewers will only notice your PR
if it passes the continuous integration checks.
Please ask for help on https://leanprover.zulipchat.com if needed.
When merging, all the commits will be squashed into a single commit
listing all co-authors.
Co-authors in the squash commit are gathered from two sources:
First, all authors of commits to this PR branch are included. Thus,
one way to add co-authors is to include at least one commit authored by
each co-author among the commits in the pull request. If necessary, you
may create empty commits to indicate co-authorship, using commands like so:
git commit --author="Author Name <author@email.com>" --allow-empty -m "add Author Name as coauthor"
Second, co-authors can also be listed in lines at the very bottom of
the commit message (that is, directly before the `---`) using the following format:
Co-authored-by: Author Name <author@email.com>
If you are moving or deleting declarations, please include these lines
at the bottom of the commit message (before the `---`, and also before
any "Co-authored-by" lines) using the following format:
Moves:
- Vector.* -> List.Vector.*
- ...
Deletions:
- Nat.bit1_add_bit1
- ...
Any other comments you want to keep out of the PR commit should go
below the `---`, and placed outside this HTML comment, or else they
will be invisible to reviewers.
If this PR depends on other PRs, please list them below this comment,
using the following format:
- [ ] depends on: #abc [optional extra text]
- [ ] depends on: #xyz [optional extra text]
-->
[](https://gitpod.io/from-referrer/)
|
t-combinatorics
new-contributor
|
19/0 |
Mathlib/Combinatorics/SimpleGraph/CycleGraph.lean |
1 |
3 |
['SnirBroshi', 'github-actions'] |
nobody |
0-561 9 minutes ago |
0-23696 6 hours ago |
0-23890 6 hours |