The mathlib review queue

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

This dashboard was last updated on: April 16, 2026 at 07:27 UTC

Review queue

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
36786 SproutSeeds
author:SproutSeeds
feat(DoubleCounting): parity of odd-degree vertices in bipartite incidence Adds `odd_card_filter_odd_bipartiteAbove_iff_odd_card_filter_odd_bipartiteBelow` to `Mathlib.Combinatorics.Enumerative.DoubleCounting`. This is the small parity-helper first step for #25231. Validation: - `lake build Mathlib.Combinatorics.Enumerative.DoubleCounting` Supersedes closed #36077 after replaying the helper cleanly on current `master`. AI usage: used Codex for branch recovery, replay onto current `master`, and draft wording; final code choices and verification by me. new-contributor t-combinatorics large-import 17/0 Mathlib/Combinatorics/Enumerative/DoubleCounting.lean 1 2 ['github-actions'] nobody
29-17701
29 days ago
29-17784
29 days ago
29-17258
29 days
34797 vlad902
author:vlad902
feat(SimpleGraph): `cycleGraph.cycle` is a cycle (A follow-up PR will show that `cycleGraph.cycle` is also hamiltonian.) --- - [x] depends on: #35360 - [x] depends on: #34766 - [x] depends on: #34796 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 32/1 Mathlib/Combinatorics/SimpleGraph/Circulant.lean 1 7 ['Ruben-VandeVelde', 'github-actions', 'mathlib-dependent-issues', 'vlad902'] nobody
25-52688
25 days ago
27-49091
27 days ago
28-77484
28 days
35655 Rida-Hamadani
author:Rida-Hamadani
feat(SimpleGraph): strongly regular graphs have diameter 2 A strongly regular graph with positive `μ` must have diameter 2, as long as the vertex set is nontrivial and it is not complete. --- - [x] depends on: #35657 This statement is useful in the literature, I wanted to add it after seeing it being used in the proof of the Hoffman-Singleton theorem. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 18/0 Mathlib/Combinatorics/SimpleGraph/StronglyRegular.lean 1 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
24-38062
24 days ago
24-39661
24 days ago
24-54653
24 days
34633 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): define the Zarankiewicz function Defines the Zarankiewicz function $z(m, n; s, t)$ in terms of bipartite graphs. --- - [x] depends on: #34632 This comes from splitting up #25841 into smaller PRs. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 156/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Zarankiewicz.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 3 5 ['b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mitchell-horner'] nobody
23-79485
23 days ago
23-79550
23 days ago
23-84605
23 days
37109 zeekmartin
author:zeekmartin
feat(SimpleGraph): card of common neighbors equals card of triangles containing edge Adds `SimpleGraph.card_commonNeighbors_eq_card_triangles_containing_edge` to `Mathlib/Combinatorics/SimpleGraph/Clique.lean`. For adjacent vertices `u v` in a finite simple graph, establishes the bijection between common neighbors and 3-cliques containing the edge `{u, v}`: ```lean theorem card_commonNeighbors_eq_card_triangles_containing_edge {u v : α} (huv : G.Adj u v) : (G.commonNeighbors u v).toFinset.card = ((G.cliqueFinset 3).filter fun s => {u, v} ⊆ s).card ``` This connects `commonNeighbors` (defined in `Basic.lean`) with `cliqueFinset` — a gap not previously covered in `Clique.lean`. **AI disclosure**: Claude (Anthropic) was used as an assistant during the development of this proof. It helped with the initial proof structure and tactic suggestions. The proof was reviewed and validated step by step by the author, who can vouch for all the content. The mathematical idea originates from the author's prior Lean 4 work on spectral graph theory (github.com/zeekmartin/topostability-lean4). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics LLM-generated new-contributor 61/0 Mathlib/Combinatorics/SimpleGraph/Clique.lean 1 7 ['SnirBroshi', 'github-actions', 'zeekmartin'] nobody
22-48660
22 days ago
22-55819
22 days ago
22-55293
22 days
36850 whocares-abt
author:whocares-abt
feat(Combinatorics/SimpleGraph/Acyclic): add delete leaf from tree gives tree Added theorem stating Deleting a leaf from a tree produces a tree. t-combinatorics new-contributor 5/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 7 ['github-actions', 'vlad902'] nobody
21-61801
21 days ago
26-389
25 days ago
27-69119
27 days
36794 vihdzp
author:vihdzp
doc(SetTheory/Ordinal/Principal): improve documentation The module docstring now contains a description of what an `op`-principal actually is. I've also added some additional names for discoverability. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory documentation 26/20 Mathlib/SetTheory/Ordinal/Principal.lean,Mathlib/SetTheory/Ordinal/Veblen.lean 2 8 ['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] alreadydone
assignee:alreadydone
21-23112
21 days ago
26-23586
26 days ago
28-42263
28 days
37131 IvanRenison
author:IvanRenison
doc(Combinatorics/SimpleGraph/Partition): improve docstrings in `SimpleGraph.Partition` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 11/16 Mathlib/Combinatorics/SimpleGraph/Partition.lean 1 1 ['github-actions'] nobody
20-9527
20 days ago
22-28538
22 days ago
22-28012
22 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. --- - [ ] depends on: #31891 - [ ] depends on: #32296 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 159/0 Mathlib.lean,Mathlib/Geometry/Euclidean/Sphere/PolePolar.lean 2 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] JovanGerb
assignee:JovanGerb
19-23227
19 days ago
19-47179
19 days ago
19-47413
19 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 --- - [ ] depends on: #30981 - [ ] depends on: #30982 - [ ] depends on: #32019 - [ ] depends on: #32021 - [ ] depends on: #32023 - [ ] depends on: #32270 - [ ] depends on: #32290 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 189/0 Mathlib/Geometry/Euclidean/Angle/Incenter.lean 1 5 ['github-actions', 'jsm28', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'peakpoint'] JovanGerb
assignee:JovanGerb
19-23226
19 days ago
19-47193
19 days ago
19-47457
19 days
34909 SnirBroshi
author:SnirBroshi
feat(Data/Sym/Sym2): `fromRel` equivalence with `Sigma` over a `Quotient` Add a non-dependent recursor on members of a `fromRel` set, and the following `Equiv`s: - The `fromRel` set of a symmetric relation `r` is equivalent to summing that set restricted to fibers of `f`. - For a relation homomorphism `r →r r'` where `r` is symmetric, the `fromRel` set of `r` is equivalent to summing that set restricted to equivalence classes of `r'` using a `Subtype`. --- I find this recursor pretty useful when dealing with `fromRel`, the idea came from a suggestion by @kmill [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Eq.2Erec.20with.20a.20constant.20does.20nothing.3A.20h.20.E2.96.B8.20c.20.3D.20c/near/565176948) for another `Sym2` conundrum. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 43/0 Mathlib/Data/Sym/Sym2.lean 1 8 ['SnirBroshi', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] TwoFX and pechersky
assignee:TwoFX assignee:pechersky
19-23224
19 days ago
26-27820
26 days ago
68-73386
68 days
37084 SnirBroshi
author:SnirBroshi
feat(Order/PropInstances): relations and `Subsingleton` `r = ⊤ ↔ Refl r` and `r = ⊥ ↔ Irrefl r` given `Subsingleton` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 7/1 Mathlib/Order/PropInstances.lean 1 1 ['github-actions'] bryangingechen
assignee:bryangingechen
18-22995
18 days ago
22-79666
22 days ago
22-79140
22 days
34952 joneugster
author:joneugster
feat(scripts/autolabel): use `Cli` and integrate `curl` call into `autolabel` - use `Cli` for `lake exe autolabel` - add arguments `--pr xxx --gh` and `--pr xxx --curl ` to chose between different interaction methods with github - add `--force` to skip the check whether labels are already present. (note: the current `curl` setup doesn't perform this step and neither does the refactor, so I added a `Todo` to remember this. ) - make CI-workflow simpler and more robust by removing current stdout-parsing of the debug-messages which `autolabel` emits. ### Testing Make some local changes and commit them. Ensure your local `origin/master` is in sync with `upstream/master` if you are on a fork. - `lake exe autolabel`: prints the labels which would be applicable - `lake exe autolabel --pr 34952 --gh --force` adds these labels to this PR using `gh`. - `lake exe autolabel --pr 34952 --gh` adds these labels to this PR using `gh` if no topic labels are present. - `lake exe autolabel --pr 34952 --curl ` adds these labels to this PR using `curl`. This requires a github access token for authentication --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI 87/73 .github/workflows/add_label_from_diff.yaml,scripts/autolabel.lean 2 4 ['github-actions', 'mathlib-merge-conflicts'] adomani
assignee:adomani
17-69956
17 days ago
17-70239
17 days ago
50-24653
50 days
32282 jsm28
author:jsm28
feat(Geometry/Euclidean/Angle/Incenter): unoriented angle bisection Add lemmas giving unoriented angles involving the incenter and excenters of a triangle as expressions involving dividing angles of the triangle by 2, deduced from oriented bisection lemmas. --- - [ ] depends on: #30981 - [ ] depends on: #30982 - [ ] depends on: #31205 - [ ] depends on: #32019 - [ ] depends on: #32021 - [ ] depends on: #32259 - [ ] depends on: #32260 - [ ] depends on: #32270 - [ ] depends on: #32273 - [ ] depends on: #32278 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 98/0 Mathlib/Geometry/Euclidean/Angle/Incenter.lean 1 8 ['github-actions', 'jsm28', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'wwylele'] JovanGerb
assignee:JovanGerb
17-39659
17 days ago
19-47190
19 days ago
19-47400
19 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 --- 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'] jsm28
assignee:jsm28
17-39529
17 days ago
49-49092
49 days ago
51-82852
51 days
37006 hakii6
author:hakii6
feat(LinearAlgebra/Matrix/Block, Analysis/Normed/Algebra/MatrixExponential): add BlockTriangular.pow and BlockTriangular.exp # Summary Add BlockTriangular.pow and BlockTriangular.exp for proving "det (exp A) = exp (trace A)" # Which part using LLM The part I used LLM is for 1. Searching duplicated theorems and lemmas I may missed (I already search them myself first). 2. Help me handle the "variables and signatures", the "letI" part, some of lemmas and theorems trivial but hard to find the true one. 3. After I finished, let them helped me check the structure match the disciplines of mathlib. 4. Check the steps PR match the disciplines of mathlib Most things above are done by me first, then let them to make sure I'm not missing something. # More context More context can be found in a topic in "# new member" in Zulip [#new members > (Matrix and NormedSpace.exp) | det (exp A) = exp (trace A)](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/.28Matrix.20and.20NormedSpace.2Eexp.29.20.7C.20det.20.28exp.20A.29.20.3D.20exp.20.28trace.20A.29/with/580964688) new-contributor LLM-generated 54/1 Mathlib/Analysis/Normed/Algebra/MatrixExponential.lean,Mathlib/LinearAlgebra/Matrix/Block.lean,Mathlib/Topology/Instances/Matrix.lean 3 59 ['SnirBroshi', 'eric-wieser', 'github-actions', 'hakii6', 'wwylele'] nobody
17-29058
17 days ago
19-32026
19 days ago
24-22725
24 days
37373 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Sum): add `LocallyFinite (G ⊕g H)` instance --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 11/0 Mathlib/Combinatorics/SimpleGraph/Sum.lean 1 3 ['SnirBroshi', 'github-actions', 'themathqueen'] nobody
16-58042
16 days ago
16-61525
16 days ago
16-60999
16 days
36239 plp127
author:plp127
feat(FieldTheory/KrullTopology): define uniform group structure on galois group Endow the galois group of a field extension `Gal(L/K)` with the structure of a uniform group. Use this to prove some properties of the galois group earlier, for example, that the galois group is compact is immediate, and in more generality than the version proved in `FieldTheory/Galois/Profinite`. Deprecate some material which used to be used to define the krull topology, but is now unused since the krull topology comes out of the uniform structure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
271/177 Mathlib/FieldTheory/Galois/Infinite.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/FieldTheory/KrullTopology.lean,Mathlib/NumberTheory/Cyclotomic/CyclotomicCharacter.lean 4 17 ['github-actions', 'mathlib-merge-conflicts', 'plp127', 'vihdzp'] joelriou
assignee:joelriou
16-23079
16 days ago
18-13931
18 days ago
18-13405
18 days
37175 tb65536
author:tb65536
chore(GroupTheory/Nilpotent): move declarations into namespace This PR moves the declarations of `GroupTheory/Nilpotent` from the root namespace to either the `Subgroup` namespace or the `Group` namespace. I also switched over to the commutator element notation in a few places. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory
label:t-algebra$
194/34 Mathlib/GroupTheory/Commutator/Basic.lean,Mathlib/GroupTheory/Frattini.lean,Mathlib/GroupTheory/Nilpotent.lean,Mathlib/GroupTheory/SpecificGroups/ZGroup.lean 4 1 ['github-actions'] mattrobball
assignee:mattrobball
16-23070
16 days ago
21-42792
21 days ago
21-42268
21 days
37317 vihdzp
author:vihdzp
feat: a topology with a basis of clopens is completely regular --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 11/0 Mathlib/Topology/Separation/CompletelyRegular.lean 1 4 ['felixpernegger', 'github-actions', 'themathqueen', 'vihdzp'] urkud
assignee:urkud
15-64254
15 days ago
18-57716
18 days ago
18-57190
18 days
35316 mkaratarakis
author:mkaratarakis
feat: lemmas for the analytic part of the proof of the Gelfond–Schneider theorem (Part 4/5) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 85/0 Mathlib.lean,Mathlib/NumberTheory/Transcendental/AnalyticPart.lean 2 12 ['MichaelStollBayreuth', 'SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mkaratarakis'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
15-63626
15 days ago
15-63681
15 days ago
19-81612
19 days
37374 NoneMore
author:NoneMore
feat(Topology/DerivedSet): add relative derived set lemmas Add `relDerivedSet`, `relDerivedSet_subset`, and `IsClosed.relDerivedSet_eq`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 17/0 Mathlib/Topology/DerivedSet.lean 1 6 ['NoneMore', 'github-actions', 'plp127', 'vihdzp'] PatrickMassot
assignee:PatrickMassot
15-55532
15 days ago
15-57686
15 days ago
16-24174
16 days
36788 hommmmm
author:hommmmm
feat(RingTheory): height of span of a prime element is one ## Summary - Add `Ideal.height_span_singleton_eq_one_of_prime`: in a Noetherian integral domain, the ideal generated by a prime element has height one. ## Notes The new theorem follows directly from `height_le_one_of_isPrincipal_of_mem_minimalPrimes` (upper bound) and the fact that `span {p} ≠ ⊥` for `p` prime (lower bound). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 12/1 Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean 1 5 ['Multramate', 'github-actions', 'hommmmm'] mattrobball
assignee:mattrobball
15-33623
15 days ago
15-34643
15 days ago
29-14952
29 days
36781 hommmmm
author:hommmmm
feat(RingTheory/UniqueFactorizationDomain): UFD iff height one primes are principal We prove that a Noetherian integral domain is a UFD if and only if every prime ideal of height one is principal (`UniqueFactorizationMonoid.iff_height_one_prime_principal`). ## New declarations * `UniqueFactorizationMonoid.exists_height_one_le_of_finite_height`: given a prime of finite height ≥ 1, there exists a height one prime contained in it. * `UniqueFactorizationMonoid.ne_bot_of_height_one`: an ideal of height one is nonzero. * `UniqueFactorizationMonoid.height_ge_one_of_prime_ne_bot`: the height of a nonzero prime ideal in a domain is at least one. * `UniqueFactorizationMonoid.height_one_prime_principal`: in a UFD, every height one prime is principal. * `UniqueFactorizationMonoid.of_height_one_prime_principal`: every height one prime being principal implies UFD (Noetherian case). * `UniqueFactorizationMonoid.iff_height_one_prime_principal`: the full iff statement. ## References See https://stacks.math.columbia.edu/tag/0AFT ## AI Disclosure This code is written without AI, then uses Claude Code with cameronfreer's [Lean4-skills](https://github.com/cameronfreer/lean4-skills) (specifically, the `review`, `refactor`, and `golf` workflow) for style changes, refactoring and golfing. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor large-import 102/1 Mathlib/RingTheory/UniqueFactorizationDomain/Kaplansky.lean 1 8 ['Thmoas-Guan', 'chrisflav', 'github-actions', 'hommmmm', 'tb65536'] mattrobball
assignee:mattrobball
15-22764
15 days ago
24-41005
24 days ago
28-76086
28 days
37461 grunweg
author:grunweg
chore: golf using the field tactic --- In the spirit of #31314. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 32/43 Counterexamples/NowhereDifferentiable.lean,Mathlib/Analysis/Calculus/Monotone.lean,Mathlib/Analysis/Complex/BorelCaratheodory.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/Normed/Field/Lemmas.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogBounds.lean,Mathlib/Analysis/SpecialFunctions/Elliptic/Weierstrass.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/InformationTheory/KullbackLeibler/Basic.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/MeasureTheory/Integral/MeanValue.lean,Mathlib/NumberTheory/ModularForms/Discriminant.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/Defs.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/E2/MDifferentiable.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean,Mathlib/Probability/CentralLimitTheorem.lean,Mathlib/Probability/Distributions/Gaussian/CharFun.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/Hilbert90.lean,Mathlib/RingTheory/PowerSeries/Exp.lean,Mathlib/Topology/UnitInterval.lean 20 4 ['github-actions', 'grunweg', 'j-loreaux'] nobody
14-83938
14 days ago
14-85240
14 days ago
15-4786
15 days
37482 grunweg
author:grunweg
chore: test two consecutive simps in the flexible linter They are not linted, and should not be --- let's add a test to document this. Found when reviewing #36728. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy 9/1 MathlibTest/FlexibleLinter.lean 1 1 ['github-actions'] nobody
14-78967
14 days ago
14-79032
14 days ago
14-78506
14 days
37179 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph): add lemmas about left and right elements of `SimpleGraph.sum` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 18/0 Mathlib/Combinatorics/SimpleGraph/Sum.lean 1 3 ['WilliamCoram', 'github-actions'] nobody
14-71600
14 days ago
21-38131
21 days ago
21-37605
21 days
36886 Deep0Thinking
author:Deep0Thinking
feat(Combinatorics/Enumerative/Bonferroni): add Bonferroni inequalities This PR adds Bonferroni inequalities. Main theorems: - `Finset.indicator_biUnion_le_bonferroniIndicator_of_odd` - `Finset.bonferroniIndicator_le_indicator_biUnion_of_even` - `Finset.card_biUnion_le_bonferroniCard_of_odd` - `Finset.bonferroniCard_le_card_biUnion_of_even` Co-authored-by: Claude (Opus 4.6) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 334/4 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Bonferroni.lean,Mathlib/Combinatorics/Enumerative/InclusionExclusion.lean 3 4 ['AlexeyMilovanov', 'Deep0Thinking', 'github-actions'] nobody
14-66076
14 days ago
26-58724
26 days ago
26-59027
26 days
34273 gasparattila
author:gasparattila
feat(Topology/Sets): finite sets are dense in `(Nonempty)Compacts` --- - [x] depends on: #34266 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 35/0 Mathlib/Topology/Sets/VietorisTopology.lean 1 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'scholzhannah'] mcdoll
assignee:mcdoll
14-55814
14 days ago
22-52613
22 days ago
22-53337
22 days
35683 gasparattila
author:gasparattila
fix(Tactic/FunProp): detect `Continuous.subtype_mk` as compositional This PR changes `fun_prop` to detect some theorems involving dependent types, such as `Continous.subtype_mk` to be in compositional form. This lets `fun_prop` solve goals such as `Continuous fun x => (⟨x, trivial⟩ : {x : ℝ // True})`. --- These theorems become compositional: `Continuous.subtype_mk`, `Topology.IsEmbedding.inclusion`, `Topology.IsOpenEmbedding.inclusion`, `Topology.IsClosedEmbedding.inclusion`, `Measurable.subtype_mk`, `Measurable.imp`, `Path.symm_continuous_family`, `Continuous.upperHalfPlaneMk` These theorems become simple: `hasFDerivAt_prodMk_left`, `hasFDerivAt_prodMk_right`, `contDiff_prodMk_left`, `contDiff_prodMk_right` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 57/33 Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/FunctionData.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Topology/Homeomorph/Lemmas.lean,MathlibTest/fun_prop_dev.lean 5 6 ['gasparattila', 'github-actions', 'grunweg', 'lecopivo', 'mathlib-merge-conflicts'] dwrensha
assignee:dwrensha
14-38159
14 days ago
19-35293
19 days ago
51-32328
51 days
37523 matthewjasper
author:matthewjasper
feat: elements of Dedekind domain approximate elements of valuation ring Algebra part of showing that `R` is dense in `O_v` which is used to show that `R / v` is isomorphic to the residue field of `O_v` and construct the base change isomorphism for finite adeles. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 81/1 Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean 2 1 ['github-actions'] nobody
14-33878
14 days ago
14-33953
14 days ago
14-33427
14 days
37443 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Walks/Operations): permutations of support --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 15/0 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 2 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
14-32958
14 days ago
14-32983
14 days ago
15-42349
15 days
36224 gasparattila
author:gasparattila
feat(Analysis/Normed/Affine): (pseudo)metric on `V →ᴬ[𝕜] Q` --- - [x] depends on: #36083 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 33/32 Mathlib/Analysis/Normed/Affine/ContinuousAffineMap.lean,Mathlib/Analysis/Normed/Group/AddTorsor.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] sgouezel
assignee:sgouezel
14-23184
14 days ago
14-66946
14 days ago
15-7630
15 days
36917 iarnoldy
author:iarnoldy
feat(LinearAlgebra/CliffordAlgebra): bivector Lie subalgebra Define the submodule of grade-n elements (n-vectors) in a Clifford algebra and show that bivectors (n = 2) form a `LieSubalgebra` under the commutator bracket. This gives the standard construction of so(Q) from Cl(Q). Main definitions: * `CliffordAlgebra.nvector` — grade-n submodule, spanned by n-fold products of ι * `CliffordAlgebra.bivector` — nvector 2 Q, the bivector submodule * `CliffordAlgebra.bivectorLieSubalgebra` — LieSubalgebra of bivectors Main results: * `CliffordAlgebra.lie_ι_mul_ι` — explicit commutator formula for bivector generators * `CliffordAlgebra.lie_mem_bivector` — bracket closure of the bivector submodule * `CliffordAlgebra.bivector_le_evenOdd_zero` — bivectors lie in the even part The `LieModule` instance for `CliffordAlgebra Q` acting on itself is provided explicitly (`instLieModuleSelf`) because automatic synthesis exceeds the default heartbeat limit. AI disclosure: This code was generated with AI assistance (Claude, Anthropic). The submitter directed the construction and QA but is not a Lean programmer. The mathematical content is classical (Doran & Lasenby, Ch. 3). Extra review scrutiny is welcomed. Co-authored-by: Claude --- Open design questions for reviewers: 1. **Naming**: Is `nvector` the right name? Eric Wieser suggested generalizing to n-vectors. Alternatives: `ιProd`, `grade`, or following the `exteriorPower` pattern via `equivExterior` pullback. 2. **Scalar contamination**: The spanning set `{ι m₁ * ι m₂}` includes `ι m * ι m = Q(m)` (scalars). Eric suggested pulling back `exteriorPower` through `equivExterior` for pure grades (requires `Invertible (2 : R)`). Happy to rework if that's preferred. 3. **instLieModuleSelf**: Should this be an upstream issue rather than a local workaround? @ocfnash 4. **ι_mul_ι_comm'**: This may duplicate existing API (`ι_mul_ι_comm b a` plus `polar_comm`). Happy to inline if reviewers prefer. Discussed on Zulip: https://leanprover.zulipchat.com (Is there code for X? thread) new-contributor t-algebra LLM-generated
label:t-algebra$
338/0 Mathlib.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Bivector.lean 2 2 ['github-actions'] eric-wieser
assignee:eric-wieser
14-23177
14 days ago
26-29545
26 days ago
26-30244
26 days
37477 kebekus
author:kebekus
feat: canonical decomposition of complex-meromorphic functions on disks Establish the Finite Canonical Decomposition of meromorphic functions, where a complex-meromorphic function `f` on a disk is written as a product of an analytic function without zeros and poles, and canonical factors that take only values of norm one on the boundary of the disk. A future PR will extend this theorem to handle zeros/poles on the boundary of the disk. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 265/5 Mathlib/Analysis/Complex/CanonicalDecomposition.lean,Mathlib/Analysis/Meromorphic/Order.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean 3 1 ['github-actions'] sgouezel
assignee:sgouezel
14-23168
14 days ago
14-79582
14 days ago
14-79056
14 days
32583 MJ141592
author:MJ141592
refactor(SimpleGraph): change bridges not to require the edge to be present Remove the requirement for edges to exist in definition of isBridge, and then change the related lemmas to adjust for this, by renaming, fixing the statements and fixing the proofs, including in Acyclic. Closes #31690. --- - [x] depends on: #36802 - [x] depends on: #36804 t-combinatorics new-contributor 84/84 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean 4 20 ['MJ141592', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
13-80768
13 days ago
13-80804
13 days ago
14-22399
14 days
37541 EtienneC30
author:EtienneC30
feat: another version of the cardinality of the difference In mathlib there is `Set.ncard_diff` which states that `(t \ s).ncard = t.ncard - s.ncard` when `s ⊆ t` and `s` is finite. But one way to prove that `s` is finite is by showing that `t` is finite and using the `s ⊆ t` hypothesis, so this PR adds `Set.ncard_diff'` which assumes that `t` is finite instead of `s`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 5/0 Mathlib/Data/Set/Card.lean 1 1 ['github-actions'] nobody
13-64925
13 days ago
13-64996
13 days ago
13-64470
13 days
30900 vihdzp
author:vihdzp
feat: run-length encoding --- - [x] depends on: #30898 Moved from #17105. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 168/0 Mathlib.lean,Mathlib/Data/List/RunLength.lean,Mathlib/Data/List/SplitBy.lean 3 6 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'plp127'] pechersky
assignee:pechersky
13-53891
13 days ago
13-53948
13 days ago
55-83086
55 days
37574 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph): Add lemma `Walk.IsCircuit.isCycle_cycleBypass` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 8/3 Mathlib/Combinatorics/SimpleGraph/Paths.lean 1 1 ['github-actions'] nobody
13-34421
13 days ago
13-34490
13 days ago
13-33964
13 days
37577 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Walk): upgrade subset theorems to sublist/prefix/suffix Upgrades theorems about `p.support ⊆ q.support` / `p.darts ⊆ q.darts` / `p.edges ⊆ q.edges` to `List.IsInfix`/`List.IsSuffix`/`List.Sublist`, which imply the subset versions. --- I did not add such theorems where there was no subset theorem to begin with (e.g. `(p.take n).darts <+: p.darts`), as they are usually not worth stating since they're trivial and simp proves them. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 77/37 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 4 1 ['github-actions'] nobody
13-33060
13 days ago
13-33136
13 days ago
13-32610
13 days
36806 grunweg
author:grunweg
fix(Tactic/Continuity): mark Continuous.comp' as unsafe This issue was pre-existing: `Continuous.comp'` was never full safe, as a constant function could be written as the composition of any function and a constant function (and then applying the lemma could lead to something unprovable). The change in #31607 triggered such a case: make is an unsafe rule with very high probability instead. This change broke three proofs: one was easy to switch to fun_prop; the others seemed to depend on this being a safe rule. I have added a workaround for now. There was another test failure, exposing a pre-existing internal bug in aesop. With smaller imports, continuity succeeds [zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/aesop.20error.20during.20proof.20reconstruction.2C.20goal.20not.20normalised/with/580202602), so I have accepted this result as fine. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 54/2 Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Condensed/Light/TopCatAdjunction.lean,Mathlib/Condensed/TopCatAdjunction.lean,Mathlib/Topology/Continuous.lean,MathlibTest/Continuity.lean 5 1 ['github-actions'] dwrensha
assignee:dwrensha
13-23078
13 days ago
28-60970
28 days ago
28-60452
28 days
37536 grunweg
author:grunweg
chore: mark coordinateChange_apply_snd simp --- Inspired by #35978 and its follow-up #37535. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 8/9 Mathlib/Geometry/Manifold/VectorBundle/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/MDifferentiable.lean,Mathlib/Topology/FiberBundle/Trivialization.lean 3 4 ['github-actions', 'grunweg', 'leanprover-radar'] PatrickMassot
assignee:PatrickMassot
13-23070
13 days ago
13-70270
13 days ago
13-69744
13 days
37576 WenrongZou
author:WenrongZou
feat(MvPowerSeries): connection between rename and subst --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import 33/6 Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Rename.lean 2 3 ['BryceT233', 'WenrongZou', 'github-actions'] nobody
13-19534
13 days ago
13-33355
13 days ago
13-32829
13 days
36832 KryptosAI
author:KryptosAI
chore(Data/Finset/Card): rename `pred_card_le_card_erase` to `sub_one_card_le_card_erase` ## Summary The name `pred_card_le_card_erase` suggests `Nat.pred` but the statement uses `- 1` (i.e., `Nat.sub 1`). Rename to `sub_one_card_le_card_erase` to match the actual statement. A deprecated alias is added for backwards compatibility. ### Files changed - `Mathlib/Data/Finset/Card.lean` — definition renamed + deprecated alias - `Mathlib/Data/Finset/Powerset.lean` — reference updated - `Mathlib/Combinatorics/Additive/SubsetSum.lean` — reference updated - `Mathlib/Algebra/Polynomial/EraseLead.lean` — reference updated Addresses the `Finset.pred_card_le_card_erase` item in #21584. ## AI disclosure I used Claude Code to explore the codebase (finding all references to rename) and to draft the PR description. I reviewed and understand all changes — these are straightforward renames with a deprecated alias. new-contributor 22/15 Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Combinatorics/Additive/SubsetSum.lean,Mathlib/Combinatorics/SetFamily/AhlswedeZhang.lean,Mathlib/Combinatorics/SetFamily/Shadow.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Set/Card.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/RingTheory/Ideal/Operations.lean 9 5 ['KryptosAI', 'Multramate', 'github-actions', 'ooovi'] nobody
13-19361
13 days ago
13-19419
13 days ago
27-29221
27 days
36814 YaelDillies
author:YaelDillies
refactor(Combinatorics/SimpleGraph): no proof obligation in `rotate` If the walk doesn't go through the new vertex, return `nil` instead. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 44/31 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean 8 8 ['SnirBroshi', 'YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] nobody
12-79019
12 days ago
12-79042
12 days ago
26-62344
26 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. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 395/0 Mathlib.lean,Mathlib/Combinatorics/DiHypergraph/Basic.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
12-78975
12 days ago
12-79022
12 days ago
70-61963
70 days
37248 harahu
author:harahu
doc(Tactic): avoid lazy continuation lines We resolve the ambiguity inherent in lazy (un-indented) list item continuation lines by either indenting them or separating them by inserting a newline in the cases where the item continuation was a mistake. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation 131/116 Mathlib/Tactic/Algebraize.lean,Mathlib/Tactic/Basic.lean,Mathlib/Tactic/CategoryTheory/Coherence/PureCoherence.lean,Mathlib/Tactic/ComputeDegree.lean,Mathlib/Tactic/DepRewrite.lean,Mathlib/Tactic/Finiteness.lean,Mathlib/Tactic/FunProp.lean,Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/Theorems.lean,Mathlib/Tactic/Linarith/Oracle/FourierMotzkin.lean,Mathlib/Tactic/Linter/FlexibleLinter.lean,Mathlib/Tactic/MinImports.lean,Mathlib/Tactic/MoveAdd.lean,Mathlib/Tactic/Order.lean,Mathlib/Tactic/SimpIntro.lean,Mathlib/Tactic/Simps/Basic.lean,Mathlib/Tactic/Widget/InteractiveUnfold.lean 17 1 ['Multramate', 'github-actions'] nobody
12-63965
12 days ago
20-27498
20 days ago
20-32669
20 days
37495 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Sum): add homomorphism, embedding and isomorphism of sums --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 58/2 Mathlib/Combinatorics/SimpleGraph/Sum.lean 1 15 ['IvanRenison', 'YaelDillies', 'github-actions', 'mkaratarakis'] nobody
12-62815
12 days ago
12-63966
12 days ago
14-9053
14 days
34759 Hagb
author:Hagb
feat(RingTheory/MvPolynomial/MonomialOrder): add degree with `⊥` as degree of `0` `withBotDegree` is to distinguish the degree of zero polynomial from the degree of non-zero constant polynomial. `MonomialOrder.degree` of both are 0, while `withBotDegree` is `⊥` for zero polynomial and 0 for non-zero constant polynomial. `MonomialOrder.withBotDegree` is to [`MonomialOrder.degree`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=MonomialOrder.degree#doc) as [`Polynomial.degree`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=Polynomial.degree#doc) is to [`Polynomial.natDegree`](https://leanprover-community.github.io/mathlib4_docs/find/?pattern=Polynomial.natDegree#doc). It's upstreamized from https://github.com/WuProver/groebner_proj. --- It's upstream from [`Groebner/MonomialOrder.lean` in the repo `WuProver/groebner_proj`](https://github.com/WuProver/groebner_proj/blob/main/Groebner/MonomialOrder.lean). - [x] ~~depends on: #34755~~ - [x] depends on: #34756 - [x] depends on: #34758 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 245/2 Mathlib/Data/Finsupp/MonomialOrder.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean 2 5 ['github-actions', 'joneugster', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
12-51219
12 days ago
12-52657
12 days ago
12-54228
12 days
34705 mpenciak
author:mpenciak
feat(RingTheory): Grassmannian functor This PR shows that the association `A → G(k, (A ⊗[R] M); A)` for an `R`-algebra `A` and `R`-module `M` forms a functor. (AI disclosure: an early version of this PR was prepared with the help of Claude) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory LLM-generated large-import 138/2 Mathlib/LinearAlgebra/TensorProduct/Quotient.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean,Mathlib/RingTheory/Grassmannian.lean 3 12 ['chrisflav', 'github-actions', 'mathlib-merge-conflicts', 'mpenciak', 'robin-carlier'] chrisflav
assignee:chrisflav
12-49332
12 days ago
12-51997
12 days ago
55-36288
55 days
37245 DavidLedvinka
author:DavidLedvinka
feat(MeasureTheory): add Resolvent (Stieltjes/Cauchy) Transform This PR adds the definition of the `resolventTransform` of a measure and some API. This is a non-standard notion that generalizes both the Stieltjes Transform and Cauchy Transform of a (real-valued) measure so that (for example) the proof that these transforms define holomorphic functions off the support of the measure can be given for both at once. Perhaps these important special cases could be made into abbrevs? - [ ] depends on: #37172 189/0 Mathlib.lean,Mathlib/Algebra/Algebra/Spectrum/Basic.lean,Mathlib/MeasureTheory/Measure/ResolventTransform.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
12-49034
12 days ago
12-49078
12 days ago
13-30077
13 days
37399 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Paths): `IsPath` and `Nil` lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 10/3 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean 2 4 ['Rida-Hamadani', 'SnirBroshi', 'github-actions'] nobody
12-44392
12 days ago
16-15503
16 days ago
16-15121
16 days
34182 IlPreteRosso
author:IlPreteRosso
refactor(Data/Finsupp): deprecate direct single ↔ Set.indicator shortcuts, add indicator_eq_set_indicator Routes Finsupp.single ↔ Set.indicator through Pi.single instead of direct shortcuts. Adds `indicator_eq_set_indicator` bridging `Finsupp.indicator` and `Set.indicator` for non-dependent functions. Deprecates `single_eq_set_indicator` and `single_eq_indicator` — users should compose through `single_eq_pi_single` + `Set.indicator_singleton` instead. Golfs `single_eq_update` via `single_eq_pi_single`. Continues #34083. t-data new-contributor 27/19 Mathlib/Data/Finsupp/Indicator.lean,Mathlib/Data/Finsupp/Single.lean 2 31 ['IlPreteRosso', 'eric-wieser', 'github-actions', 'mathlib-bors', 'urkud'] TwoFX
assignee:TwoFX
12-44391
12 days ago
12-50652
12 days ago
85-18918
85 days
37624 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Maps): add theorems about composition --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 25/4 Mathlib/Combinatorics/SimpleGraph/Maps.lean 1 1 ['github-actions'] nobody
12-29262
12 days ago
12-29336
12 days ago
12-28810
12 days
37561 IvanRenison
author:IvanRenison
feat(Data/List): add lemma `List.notMem_subset` --- Zulip question: https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/List.2EnotMem_subset/with/583146215 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 3/0 Mathlib/Data/List/Basic.lean 1 1 ['github-actions'] nobody
12-25682
12 days ago
13-48178
13 days ago
13-47652
13 days
37252 artie2000
author:artie2000
feat(Algebra/Group/Submonoid/Support): properties of submonoid support * Prove how the support of a submonoid interacts with various operations --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
50/1 Mathlib/Algebra/Group/Submonoid/Support.lean 1 1 ['github-actions'] eric-wieser
assignee:eric-wieser
12-23209
12 days ago
20-23342
20 days ago
20-22816
20 days
37538 harahu
author:harahu
doc(Probability): avoid lazy continuation lines We resolve the ambiguity inherent in lazy (un-indented) list item continuation lines by either indenting them or separating them by inserting a newline in the cases where the item continuation was a mistake. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 7/4 Mathlib/Probability/Independence/InfinitePi.lean,Mathlib/Probability/Kernel/Category/SFinKer.lean,Mathlib/Probability/Kernel/Category/Stoch.lean,Mathlib/Probability/Notation.lean,Mathlib/Probability/Process/Filtration.lean,Mathlib/Probability/StrongLaw.lean 6 1 ['Multramate', 'github-actions'] kex-y
assignee:kex-y
12-23203
12 days ago
13-69054
13 days ago
13-68528
13 days
37593 IlPreteRosso
author:IlPreteRosso
refactor(Data.Finset.*Antidiagonal): rename set-based defs to `set*Antidiagonal` Renames set-based `Finset.mulAntidiagonal` → `setMulAntidiagonal` (and SMul/VAdd variants) to free the `mulAntidiagonal` name for the planned `HasMulAntidiagonal` typeclass. Deprecation aliases added. Supersedes #34551 t-ring-theory new-contributor 178/96 Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Data/Finset/MulAntidiagonal.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/HahnSeries/Summable.lean 6 2 ['github-actions'] nobody
12-12606
12 days ago
12-62252
12 days ago
12-63500
12 days
35733 mkaratarakis
author:mkaratarakis
feat: Algebraic setup and matrix coefficients for Gelfond-Schneider theorem This PR introduces the foundational algebraic setup and coefficient bounds required for the proof of the Gelfond-Schneider Theorem (Hilbert's Seventh Problem), which establishes that for algebraic numbers $\alpha \neq 0, 1$ and irrational algebraic $\beta$, the number $\alpha^\beta$ is transcendental. Following the contradiction argument presented in Loo-Keng Hua's "Introduction to Number Theory" (Chapter 17.9, 490 -493) Gelfond's Proof), this file constructs the common number field $K$ and sets up the scaled algebraic integers for the auxiliary linear system. This system will later be solved via Siegel's lemma (Lemma 8.2, 490, Hua). This PR is essentially the first half of page 490 in the book. The proof proceeds by assuming $\gamma = \alpha^\beta$ is algebraic, meaning $\alpha$, $\beta$, and $\gamma$ all lie in an algebraic field $K$ of degree $h$. 1. Bundles the common number field $K$, the complex embeddings, and the algebraic preimages $\alpha', \beta', \gamma'$, alongside the core hypotheses of the theorem. 2. Defines the field degree $h = [K : \mathbb{Q}]$, and bounds $m = 2h + 2$ and $n = q^2 / (2m)$ to control the dimensions of the linear system. 3. Defines $c_1$, a natural number chosen so that $c_1 \alpha$, $c_1 \beta$, and $c_1 \gamma$ are algebraic integers in $K$. We prove numerous bounding and integrality lemmas (`isIntegral_c₁α`, `isInt_β_bound`, etc.). 4. Formalizes the core algebraic coefficients $(a+b\beta)^k \alpha^{al} \gamma^{bl}$ which appear in the evaluation of the derivatives of the auxiliary function $R(x)$. 5. By scaling the system by $c_1^{n-1+2mq}$, we successfully restrict the entries of our linear system matrix `A` entirely to the ring of integers $\mathcal{O}_K$, preparing it for the application of Siegel's lemma. 6. House Bounds (`c₂`) : Establishes the foundational base integer $c_2$ to bound the absolute values of the conjugates (houses) of our coefficients. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 913/49 Mathlib.lean,Mathlib/NumberTheory/NumberField/House.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean,Mathlib/RingTheory/IntegralClosure/Algebra/Basic.lean 4 16 ['github-actions', 'mkaratarakis', 'tb65536'] tb65536
assignee:tb65536
11-56633
11 days ago
11-56688
11 days ago
24-36598
24 days
37636 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Copy): a graph is inducingly contained in another iff it's equivalent to an induced graph This is a version of `isIndContained_iff_exists_iso_subgraph` using `SimpleGraph.induce` instead of `Subgraph.IsInduced`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 8/0 Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 2 1 ['github-actions'] nobody
11-51360
11 days ago
11-51399
11 days ago
11-50957
11 days
36833 harahu
author:harahu
doc: demote repeated H1 headers Having more than one H1 header per file confuses search engines and thus makes documentation more difficult to find. Hence, we make sure that lean files only have a single H1 header in them. In the case of `Mathlib/Tactic/Common.lean`, we achieve this by adding a new module header. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation 12/10 Archive/Imo/Imo2002Q3.lean,Archive/Imo/Imo2010Q5.lean,Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Basic.lean,Mathlib/RingTheory/LocalProperties/Injective.lean,Mathlib/RingTheory/LocalProperties/ProjectiveDimension.lean,Mathlib/RingTheory/QuasiFinite/Weakly.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/Linter/EmptyLine.lean 9 2 ['github-actions', 'harahu', 'vihdzp'] nobody
11-43131
11 days ago
11-43187
11 days ago
11-43065
11 days
33392 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(LinearAlgebra/Transvection/Generation): non-exceptional case in Dieudonné's theorem We prove the theorem of [Dieudonné-1955][J. Dieudonné, “Sur les générateurs des groupes classiques”]. Let `K` be a division ring and `V` be a `K`-module. * `LinearEquiv.mem_transvections_pow_mul_dilatransvections_of_fixedReduce_eq_one`: If `e.fixedReduce = 1`, then `e` can be written as the product of `finrank K (V ⧸ e.fixedSubmodule) - 1` transvections and one dilatransvection. This is the first part of the non-exceptional case in Dieudonné's theorem. (This statement is not interesting when `e = 1`.) * `LinearEquiv.mem_transvections_pow_mul_dilatransvections_of_fixedReduce_ne_smul_id`: If `e.fixedReduce` is not a homothety, then `e` can be written as the product of `finrank K (V ⧸ e.fixedSubmodule) - 1` transvections and one dilatransvection. This is the second part of the non-exceptional case in Dieudonné's theorem. * `LinearEquiv.IsExceptional`: A linear equivalence `e : V ≃ₗ[K] V` is exceptional if `1 < finrank K (V ⧸ e.fixedSubmodule)` and if `e.fixedReduce` is a nontrivial homothety. * `LinearEquiv.mem_dilatransvections_pow_of_notIsExceptional`: This is the non-exceptional case in Dieudonné's theorem, as a combination of the two preceding statements. --- - [x] depends on: #33348 - [x] depends on: #33282 - [x] depends on: #33347 - [ ] depends on: #33387 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
574/0 Mathlib.lean,Mathlib/LinearAlgebra/Center.lean,Mathlib/LinearAlgebra/FiniteDimensional/Lemmas.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/Transvection/Basic.lean,Mathlib/LinearAlgebra/Transvection/Generation.lean 6 9 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] joelriou
assignee:joelriou
11-22948
11 days ago
19-82459
19 days ago
20-6951
20 days
35197 j-loreaux
author:j-loreaux
feat: Hölder framework for `lp` spaces --- - [ ] depends on: #35152 - [ ] depends on: #35198 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 315/9 Mathlib.lean,Mathlib/Analysis/Normed/Lp/LpEquiv.lean,Mathlib/Analysis/Normed/Lp/lpHolder.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/Normed/Operator/Basic.lean,Mathlib/Tactic/Linter/TextBased.lean 6 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] urkud
assignee:urkud
11-22945
11 days ago
13-38182
13 days ago
13-37940
13 days
37646 SnirBroshi
author:SnirBroshi
feat(Logic): surjective embeddings are equivs Upgrade `Equiv.ofBijective` / `Embedding.equivOfSurjective` / `RelIso.ofSurjective` to equivalences. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 27/1 Mathlib/Logic/Embedding/Basic.lean,Mathlib/Logic/Equiv/Defs.lean,Mathlib/Order/RelIso/Basic.lean 3 1 ['github-actions'] nobody
11-12628
11 days ago
11-32314
11 days ago
11-31788
11 days
35628 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Maps): characterize `neighborSet` and `edgeSet` across an embedding --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 66/0 Mathlib/Combinatorics/SimpleGraph/Maps.lean 1 10 ['SnirBroshi', 'YaelDillies', 'github-actions'] YaelDillies
assignee:YaelDillies
10-57582
10 days ago
11-39420
11 days ago
33-50642
33 days
37649 IvanRenison
author:IvanRenison
feat(Data): add theorem `Finset.image_eq_iff_eq_preimage` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 20/0 Mathlib/Data/Finset/Preimage.lean,Mathlib/Data/Set/Function.lean 2 3 ['github-actions', 'themathqueen'] nobody
10-57398
10 days ago
11-27487
11 days ago
11-26961
11 days
37027 mike1729
author:mike1729
refactor(LocallyConvex,Topology): split WeakDual/WeakSpace and rename WeakBilin Reorganize the weak topology files for cleaner dependencies: 1. **Rename** `Analysis.LocallyConvex.WeakDual` → `Analysis.LocallyConvex.WeakBilin`: This file contains only general `WeakBilin` infrastructure (`LinearMap.toSeminormFamily`, `weakBilin_withSeminorms`, `WeakBilin.locallyConvexSpace`, etc.) with no reference to `WeakDual`. The name now reflects the content. 2. **Split** `Topology.Algebra.Module.Spaces.WeakDual` into `WeakDual` and `WeakSpace`: The `WeakSpace` type, its instances, and `toWeakSpace/toWeakSpaceCLM` move to a new `Topology.Algebra.Module.Spaces.WeakSpace`. This allows downstream files about weak spaces to avoid depending on WeakDual. 3. **Add** `WeakSpace.seminormFamily` and `WeakSpace.withSeminorms` to `Analysis.LocallyConvex.WeakSpace`: The weak topology on `WeakSpace 𝕜 E` is generated by the seminorm family `fun f x ↦ ‖f x‖` indexed by `StrongDual 𝕜 E`, via the general `LinearMap.weakBilin_withSeminorms` applied to the flipped `topDualPairing`. Moves: - Mathlib.Analysis.LocallyConvex.WeakDual → Mathlib.Analysis.LocallyConvex.WeakBilin - WeakSpace → Mathlib.Topology.Algebra.Module.Spaces.WeakSpace - toWeakSpace → Mathlib.Topology.Algebra.Module.Spaces.WeakSpace - toWeakSpaceCLM → Mathlib.Topology.Algebra.Module.Spaces.WeakSpace CC @j-loreaux --- - [ ] depends on: #37314 new-contributor file-removed 192/114 Mathlib.lean,Mathlib/Analysis/LocallyConvex/WeakBilin.lean,Mathlib/Analysis/LocallyConvex/WeakSpace.lean,Mathlib/Analysis/Normed/Module/WeakDual.lean,Mathlib/Topology/Algebra/Module/Spaces/WeakDual.lean,Mathlib/Topology/Algebra/Module/Spaces/WeakSpace.lean 6 6 ['github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
10-55362
10 days ago
10-55556
10 days ago
20-70085
20 days
37675 vihdzp
author:vihdzp
feat: `Order.cof Ordinal = univ` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory t-order 11/0 Mathlib/SetTheory/Cardinal/Cofinality.lean 1 1 ['github-actions'] nobody
10-38845
10 days ago
10-38919
10 days ago
10-38393
10 days
37676 IvanRenison
author:IvanRenison
feat(Data/Finset/Preimage): add lemmas about `Equiv.symm` --- `Finset` version of lemmas already existing for `Set`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 15/0 Mathlib/Data/Finset/Preimage.lean 1 1 ['github-actions'] nobody
10-35775
10 days ago
10-35856
10 days ago
10-35330
10 days
34031 lua-vr
author:lua-vr
feat(Dynamics/BirkhoffSum): add the maximal ergodic theorem --- This file exports three constants: ```lean public def birkhoffAverageSupSet (f : α → α) (g : α → ℝ) (a : ℝ) : Set α := {x | ∃ n : ℕ, a < birkhoffAverage ℝ f g n x} public theorem meas_birkhoffAverageSupSet_smul_const_le_integral (a : ℝ) (ha : 0 < a) : μ.real (birkhoffAverageSupSet f g a) • a ≤ ∫ x in birkhoffAverageSupSet f g a, g x ∂μ public theorem meas_birkhoffAverageSupSet_smul_const_le_norm (a : ℝ) (ha : 0 < a) : μ.real (birkhoffAverageSupSet f (fun x ↦ ‖g x‖) a) • a ≤ ∫ x, ‖g x‖ ∂μ ``` In my interpretation, the other constants are auxiliary, so I did not make them public. If it's of independent interest, `birkhoffMax` could be exported or moved to a dedicated file, but I'm not sure of that at the moment. - [x] depends on: #34030 - [x] depends on: #34029 - [x] depends on: #34025 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics 291/0 Mathlib.lean,Mathlib/Dynamics/BirkhoffSum/Maximal.lean 2 4 ['github-actions', 'lua-vr', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] ADedecker
assignee:ADedecker
10-22973
10 days ago
41-64780
41 days ago
41-64624
41 days
37311 CoolRmal
author:CoolRmal
feat: lemmas about liminf multiplied by a constant Add some analogues of [ENNReal.limsup_const_mul_of_ne_top](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/Filter/ENNReal.html#ENNReal.limsup_const_mul_of_ne_top) for liminf. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 34/5 Mathlib/Order/Filter/ENNReal.lean 1 1 ['github-actions'] bryangingechen
assignee:bryangingechen
10-22969
10 days ago
18-69418
18 days ago
18-69234
18 days
37441 lecopivo
author:lecopivo
fix(FunProp): be less strict about the shape of morphism theorems Don't be so restrictive about the shape of morphism theorems Right now, `fun_prop` has a problem with a bundled morphism `Foo α` that coerces to `α → α → α` . The coerced function has two arguments and there is an unnecessary restriction about this. This PR lifts that restriction. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60fun_prop.60.20in.20.60FunLike.60.20with.20multiple.20arguments/with/582731349) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 42/14 Mathlib/Tactic/FunProp/Core.lean,Mathlib/Tactic/FunProp/Theorems.lean,MathlibTest/fun_prop_dev.lean 3 1 ['github-actions'] adamtopaz
assignee:adamtopaz
10-22967
10 days ago
15-60074
15 days ago
15-59596
15 days
36643 Thmoas-Guan
author:Thmoas-Guan
feat(Homology): interaction of projective and injective dimension and SES In this PR, we directly implemented the relation of `projectiveDimension` and `injectiveDimension` in SES. --- - [ ] depends on: #36817 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 159/0 Mathlib/CategoryTheory/Abelian/Injective/Dimension.lean,Mathlib/CategoryTheory/Abelian/Projective/Dimension.lean 2 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
10-5611
10 days ago
10-5634
10 days ago
16-40549
16 days
36889 KryptosAI
author:KryptosAI
feat(LinearAlgebra/Matrix/MoorePenrose): define the Moore-Penrose pseudo-inverse Defines `IsMoorePenroseInverse` and constructs the Moore-Penrose pseudo-inverse for matrices over `RCLike` fields. Closes #24787. `Defs.lean` defines the predicate using the heterogeneous four-condition characterization from the issue, plus uniqueness for semigroups with `StarMul`. `Basic.lean` constructs the inverse via orthogonal projection and `ker(f)ᗮ ≃ₗ range(f)`, then proves: ```lean theorem exists_isMoorePenroseInverse (A : Matrix m n 𝕜) : ∃ (As : Matrix n m 𝕜), IsMoorePenroseInverse A As def moorePenroseInverse (A : Matrix m n 𝕜) : Matrix n m 𝕜 lemma moorePenroseInverse_conjTranspose : moorePenroseInverse (Aᴴ) = (moorePenroseInverse A)ᴴ lemma moorePenroseInverse_eq_nonsing_inv (hA : IsUnit A) : moorePenroseInverse A = A⁻¹ ``` ### AI disclosure - **Gemini 2.5 Pro**: proof planning, initial code, edits - **Claude Code (Opus 4.6)**: debugging, compilation, type-checking against mathlib4 I reviewed and directed all changes. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor LLM-generated
label:t-algebra$
402/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/MoorePenrose/Basic.lean,Mathlib/LinearAlgebra/Matrix/MoorePenrose/Defs.lean 3 29 ['KryptosAI', 'eric-wieser', 'github-actions', 'themathqueen', 'vihdzp'] ocfnash
assignee:ocfnash
9-61108
9 days ago
13-19419
13 days ago
24-51967
24 days
34507 metakunt
author:metakunt
feat(NumberTheory/AKSPrimality): Adds the AKS primality test Adds the completed proof for the AKS primality test. Everything except the final theorem is marked private as it's only needed for the final proof. Also everything except the final theorem is namespaced with AKS. ---- Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Aks.20primality.20Theorem.206.2E1.20Claim.20.28i.29.20proven t-number-theory 645/0 Mathlib.lean,Mathlib/NumberTheory/AKSPrimality.lean 2 51 ['github-actions', 'jcommelin', 'kim-em', 'metakunt', 'qawbecrdtey', 'tb65536', 'vihdzp'] tb65536
assignee:tb65536
9-59677
9 days ago
18-4003
18 days ago
47-82638
47 days
37189 Brian-Nugent
author:Brian-Nugent
feat(AlgebraicGeometry): The pushforward of a quasi-coherent sheaf between affines is quasi-coherent To be more precise, we show that if `AlgebraicGeometry.Scheme.Modules.fromTildeΓ` is an isomorphism then the same holds for the pushforward. This will show that being quasicoherent is stable under pushforward for affine morphisms once it is shown that `AlgebraicGeometry.Scheme.Modules.fromTildeΓ` being an isomorphism is equivalent to being quasicoherent. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 170/1 Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/AlgebraicGeometry/Modules/Tilde.lean,Mathlib/Topology/Sheaves/SheafCondition/Sites.lean 3 7 ['Brian-Nugent', 'github-actions', 'joelriou'] adamtopaz
assignee:adamtopaz
9-51078
9 days ago
9-51135
9 days ago
16-16852
16 days
34728 j-loreaux
author:j-loreaux
feat: continuous linear equivalence between continuous `ℝ`- and `𝕜`-linear functionals (in either the strong or weak-⋆ topologies) This realizes the map `StrongDual.extendRCLikeₗ`, after pre- and post-composing so that it is an equivalence between the weak duals, as a *continuous* linear equivalence. In addition, when the space is a topological vector space, we realize `StrongDual.extendRCLikeₗ` as a *continuous* linear equivalence between the strong duals. --- - [x] depends on: #34543 The placement in `Analysis/Normed/Module/WeakDual` seems suboptimal because this has nothing to do with the norm. This is because `WeakDual.toStrongDual` is already in this file, which should probably be moved to `Topology/Algebra/Module/WeakDual`. However, even if that moves, the declarations added in this PR cannot easily go with it because they involve `RCLike`. Potentially, they could move to `Analysis/RCLike/Extend` if that file gained the `Topology/Algebra/Module/WeakDual` import. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 93/2 Mathlib/Analysis/Normed/Module/RCLike/Extend.lean,Mathlib/Analysis/Normed/Module/WeakDual.lean 2 9 ['ADedecker', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] urkud
assignee:urkud
9-42725
9 days ago
9-42786
9 days ago
36-9323
36 days
37709 j-loreaux
author:j-loreaux
feat: add some missing convenience lemmas about ordered modules --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
32/0 Mathlib/Algebra/Order/Module/Defs.lean 1 2 ['github-actions', 'themathqueen'] nobody
9-41950
9 days ago
9-43975
9 days ago
9-43449
9 days
37702 grunweg
author:grunweg
chore: golf using {norm,push}_cast Not exhaustive --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 23/22 Archive/Imo/Imo2025Q3.lean,Mathlib/Algebra/Ring/GeomSum.lean,Mathlib/Analysis/Asymptotics/LinearGrowth.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Data/Int/Log.lean,Mathlib/GroupTheory/CommutingProbability.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/QExpansion.lean,Mathlib/NumberTheory/SumFourSquares.lean,Mathlib/RingTheory/DividedPowers/RatAlgebra.lean,Mathlib/RingTheory/LittleWedderburn.lean,Mathlib/RingTheory/WittVector/WittPolynomial.lean 12 5 ['github-actions', 'grunweg', 'j-loreaux'] nobody
9-36465
9 days ago
9-36465
9 days ago
9-47905
9 days
37714 mortarsanjaya
author:mortarsanjaya
feat(Algebra/Order/Floor/Defs): `Nat.cast` is strictly monotone in `FloorSemiring` and `FloorRing` As title says, and without the `IsOrderedRing` assumption. Other than that, I removed the `IsOrderedRing` assumption from pretty much all the lemmas in `Algebra/Order/Floor/Defs` that could possibly have this assumption removed, and reduced some `IsStrictOrderedRing` assumptions to `IsOrderedRing` + `Nontrivial`. Due to strict monotonicity, we can also provide `CharZero` instance on `FloorSemiring` and `FloorRing`. Thus we can remove the `NeZero` and `Nontrivial` instances on them. The changes on `/Ring` and `/Semiring` are trivial changes due to some lemmas not requiring an `IsOrderedRing` instance anymore. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
104/29 Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/ContinuedFractions/Computation/TerminatesIffRat.lean,Mathlib/Algebra/Order/Floor/Defs.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semiring.lean 5 4 ['github-actions', 'mathlib-bors', 'mortarsanjaya'] nobody
9-30751
9 days ago
9-30751
9 days ago
9-33420
9 days
36723 oliver-butterley
author:oliver-butterley
fix(`ClearExcept`): modify so that each `isAuxDecl` is retained This PR updates the defintion of `ClearExcept` to skip any `isAuxDecl` and adds a test to confirm this behaviour. The intent is that clear * - only clears user-visible local declarations; hidden auxiliary declarations should be handled by more specific mechanisms when needed. **Motivation** When writing a recursive proof in tactic mode, Lean places the recursive hypothesis in the local context as an *auxiliary declaration* (`LocalDecl.isAuxDecl`). This declaration is: - Completely invisible in the Infoview (even with all display options enabled) - Required for the recursive call to elaborate Previously the `clear * -` tactic (`Mathlib.Tactic.ClearExcept`) iterates over **all** declarations in the local context and clears everything not in the explicit keep set or a type-class instance. As such it silently clears the recursive hypothesis. While the hypothesis can technically be added to the keep set by name, it is not shown in the Infoview, making it easy to overlook. In simple examples this is never an issue, the inconvenience was found when working with software verification where the context gets huge and needs clearing for performance and where the recursive goals are closed by automation and so it is easy to overlook the need to explicitly add the name of the theorem to the exclude list. Zulip discussion: ([#general > ClearExcept clears even if isAuxDecl, is this intended?](https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/ClearExcept.20clears.20even.20if.20isAuxDecl.2C.20is.20this.20intended.3F/with/578745941)). --- - [ ] depends on: #36961 (refactor proof which uses clear*- to clear auxDecl created by wlog) - [ ] depends on: #36966 (warning that clearExcept does nothing in this use) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 22/8 Mathlib/Data/Vector/Basic.lean,Mathlib/Tactic/ClearExcept.lean,MathlibTest/ClearExcept.lean 3 9 ['adam84-hub', 'github-actions', 'grunweg', 'mathlib-dependent-issues', 'oliver-butterley'] thorimur
assignee:thorimur
9-23054
9 days ago
15-59510
15 days ago
15-58984
15 days
37171 SnirBroshi
author:SnirBroshi
chore(Data/Int/Init): generalize `le_induction` from `Prop` to `Sort*` + def lemmas --- [Zulip 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Add.20note.20to.20help.20search.20similar.20thms/near/535331432) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data large-import 56/48 Mathlib/Data/Int/Basic.lean,Mathlib/Data/Int/Init.lean,Mathlib/GroupTheory/CoprodI.lean 3 5 ['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'plp127'] joneugster
assignee:joneugster
9-23053
9 days ago
15-12000
15 days ago
16-19176
16 days
37724 xgenereux
author:xgenereux
feat(UniqueFactorizationDomain/Multiplicity): WfDvdMonoid.max_power_factor for finset A version of `WfDvdMonoid.max_power_factor` for finsets/finsupp. That is, we take the highest power which divides everything in the finset. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 66/10 Mathlib/RingTheory/UniqueFactorizationDomain/Multiplicity.lean 1 1 ['github-actions'] nobody
9-18515
9 days ago
9-18597
9 days ago
9-18071
9 days
37690 yuanyi-350
author:yuanyi-350
feat(Combinatorics/Enumerative/Bell): sum over partition shapes ## Summary - add multiplicative lemmas relating `Multiset.bell` when inserting a part - prove `Nat.bell` as a sum of `Multiset.bell` over partition shapes - Kill TODO in `Mathlib/Combinatorics/Enumerative/Bell.lean` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 153/16 Mathlib/Combinatorics/Enumerative/Bell.lean 1 1 ['github-actions'] nobody
8-83927
8 days ago
9-82552
9 days ago
9-82026
9 days
37543 EtienneC30
author:EtienneC30
feat: lemmas related to setBernoulli `setBer(u, p)` only gives mass to families of sets contained in `u`, thus `setBer(u, p) S = setBer(u, p) {s | s ∈ S ∧ s ⊆ u}`. Add a `Measure.real` version of `setBernoulli_singleton`. `setBer(∅, p) = Measure.dirac ∅`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 28/1 Mathlib/Probability/Distributions/SetBernoulli.lean 1 7 ['DavidLedvinka', 'EtienneC30', 'github-actions', 'kex-y'] kex-y
assignee:kex-y
8-76755
8 days ago
8-76808
8 days ago
13-57998
13 days
37747 JovanGerb
author:JovanGerb
chore(Order/Filter/AtTopBot/Basic): use `to_dual` This PR uses `to_dual` for `atTop`/`atBot`. A lot of theorems that have been tagged contain the expression `∀ a ≥ b, ...`, which means that their dual will be `∀ a, b ≥ a → ...`, which is obviourly undesirable. Hence, I would like to ask the reviewers to reconsider the possibility of merging #32985. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 56/164 Mathlib/Order/Filter/AtTopBot/Basic.lean 1 1 ['github-actions'] nobody
8-61325
8 days ago
8-61401
8 days ago
8-60875
8 days
37762 EtienneC30
author:EtienneC30
feat: scalar multiplication of an `NNReal` against `1 : ENNReal` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 4/3 Mathlib/Data/ENNReal/Action.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Probability.lean,Mathlib/Probability/Distributions/SetBernoulli.lean 3 1 ['github-actions'] nobody
8-53917
8 days ago
8-53980
8 days ago
8-54697
8 days
37752 JovanGerb
author:JovanGerb
chore(Order/CompleteLattice/Lemmas): use `to_dual` Use `to_dual` for lemmas about `CompleteLattice`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 27/56 Mathlib/Order/CompleteLattice/Lemmas.lean 1 1 ['github-actions', 'vihdzp'] nobody
8-53419
8 days ago
8-60077
8 days ago
8-59551
8 days
37753 JovanGerb
author:JovanGerb
chore(Order/Filter/Basic): use `to_dual` for `≤ᶠ` Use `to_dual` on lemmas about `EventuallyLE`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 19/6 Mathlib/Order/Filter/Basic.lean 1 2 ['github-actions', 'vihdzp'] nobody
8-53330
8 days ago
8-59942
8 days ago
8-59416
8 days
33520 NoneMore
author:NoneMore
feat(ModelTheory/ElementarySubstructures): add a variant of Tarski-Vaught test taking sets as input There should exist an `ElementarySubstructure.copy` such that we can directly bundle the set itself instaed of its closure as an elementary substructure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic new-contributor 91/0 Mathlib/ModelTheory/ElementarySubstructures.lean 1 9 ['Citronhat', 'NoneMore', 'fpvandoorn', 'github-actions'] fpvandoorn
assignee:fpvandoorn
8-51357
8 days ago
20-78278
20 days ago
102-69767
102 days
37744 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/Ideal/IsAugmentation): define the concept of an augmentation ideal Define an augmentation ideal in an R-algebra A: this is an `Ideal A` which is a complement to `⊥ : Subalgebra R A` in `A`. (This subalgebra consists of `R`-multiples of `1`.) Co-authored with: @mariainesdff --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 98/3 Mathlib.lean,Mathlib/Algebra/Algebra/Subalgebra/Tower.lean,Mathlib/Algebra/Module/Submodule/RestrictScalars.lean,Mathlib/RingTheory/Ideal/IsAugmentation.lean 4 1 ['github-actions'] nobody
8-51110
8 days ago
8-51110
8 days ago
8-50974
8 days
37642 SnirBroshi
author:SnirBroshi
chore(Combinatorics/SimpleGraph): tidy various files --- Concept inspired by @Ruben-VandeVelde :) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 89/72 Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Combinatorics/SimpleGraph/Copy.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Basic.lean,Mathlib/Combinatorics/SimpleGraph/IncMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Trails.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Subwalks.lean 8 2 ['SnirBroshi', 'github-actions'] nobody
8-47886
8 days ago
8-47946
8 days ago
10-64057
10 days
37738 khwilson
author:khwilson
feat(Topology/Order/Bornology): generalize `cobounded_eq` `Real.cobounded_eq` and `Int.cobounded_eq` are used in several places throughout Mathlib. They are currently proved in terms of the Metric topology on `Int` and `Real`, but they're really properties of the order bornology on those objects. Generalize those constructions to `IsOrderBornology` for `LinearOrder`'s and add a few more constructions that are true in other circumstances, e.g., `cobounded NNReal = .atTop` follows from the fact that `NNReal` is both `NoMaxOrder` and `OrderBot`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge t-order 57/18 Mathlib/Analysis/Polynomial/Basic.lean,Mathlib/Analysis/SpecialFunctions/Complex/LogBounds.lean,Mathlib/Topology/Instances/Int.lean,Mathlib/Topology/Instances/Real/Lemmas.lean,Mathlib/Topology/Order/Bornology.lean 5 14 ['YaelDillies', 'github-actions', 'khwilson', 'vihdzp'] nobody
8-29602
8 days ago
8-67548
8 days ago
8-67865
8 days
35826 quangvdao
author:quangvdao
feat(Probability/ProbabilityMassFunction): total variation distance and MetricSpace instance Define total variation distance on probability mass functions, provide a `MetricSpace` instance, and prove the data processing inequality. The extended TV distance `PMF.etvDist` is defined in `ℝ≥0∞` as `(1/2) ∑ x, absDiff (p x) (q x)`, using a new symmetric absolute difference `ENNReal.absDiff`. The real-valued `PMF.tvDist` is its `toReal`. New definitions: - `ENNReal.absDiff`: symmetric absolute difference `(a - b) + (b - a)` - `PMF.etvDist`: extended total variation distance - `PMF.tvDist`: real-valued total variation distance - `PMF.instMetricSpace`: `MetricSpace` instance on `PMF α` Main results: - `ENNReal.absDiff_triangle`: triangle inequality for `absDiff` - `ENNReal.absDiff_tsum_le`: subadditivity over infinite sums - `PMF.etvDist_le_one`: TV distance is at most 1 - `PMF.etvDist_map_le`: data processing inequality (deterministic maps) - `PMF.etvDist_bind_right_le`: data processing inequality (Markov kernels) - `PMF.etvDist_option_punit`: closed form for binary distributions Supersedes #33680 with a complete, sorry-free implementation. See Zulip discussion: This PR was authored with the support of Claude (Cursor IDE). --- This PR provides a complete formalization of total variation distance for PMFs, including: 1. **`ENNReal.absDiff`** (`Mathlib/Data/ENNReal/AbsDiff.lean`): A symmetric absolute difference for `ℝ≥0∞` with triangle inequality, connection to real absolute value, and algebraic properties. The tsum-related lemmas (`absDiff_tsum_le`, `tsum_fiber`) are placed in the TV distance file to avoid pulling topology imports into `Data.ENNReal`. 2. **`PMF.etvDist` / `PMF.tvDist`** (`Mathlib/Probability/ProbabilityMassFunction/TotalVariation.lean`): Total variation distance with a `MetricSpace` instance, data processing inequality for both deterministic maps and Markov kernels, and a closed form for binary distributions. Compared to #33680, this PR: - Has no `sorry`s - Defines the distance in `ℝ≥0∞` first (following Mathlib convention for `edist`/`dist`) - Includes the data processing inequality - Has full documentation and passes all Mathlib linters Made with [Cursor](https://cursor.com) t-measure-probability LLM-generated 459/0 Mathlib.lean,Mathlib/Data/ENNReal/AbsDiff.lean,Mathlib/Probability/ProbabilityMassFunction/TotalVariation.lean 3 6 ['BoltonBailey', 'EtienneC30', 'github-actions', 'joneugster', 'quangvdao'] kex-y
assignee:kex-y
8-22994
8 days ago
40-36440
40 days ago
40-36695
40 days
37304 vihdzp
author:vihdzp
feat: if `s ∪ t` is directed then one of `s` or `t` is --- Co-authored-by: Kamille Bidan <25210160030@m.fudan.edu.cn> [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 57/0 Mathlib/Order/Bounds/Basic.lean 1 12 ['NoneMore', 'b-mehta', 'fpvandoorn', 'github-actions', 'mathlib-bors', 'plp127', 'vihdzp'] bryangingechen
assignee:bryangingechen
8-22993
8 days ago
9-55309
9 days ago
12-62183
12 days
37466 xgenereux
author:xgenereux
feat(Torsion/PrimaryComponent): direct sum of primaryComponent on primes is the whole module Let `M(P)` be the `primaryComponent` for `P : HeightOneSpectrum A`, we have $$M \cong \bigoplus_{P} M(P).$$ This is implemented as `DirectSum.IsInternal`. Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
68/1 Mathlib/Algebra/Module/Torsion/PrimaryComponent.lean 1 1 ['github-actions'] ocfnash
assignee:ocfnash
8-22991
8 days ago
15-26752
15 days ago
15-26226
15 days
37784 SnirBroshi
author:SnirBroshi
feat(Order/ConditionallyCompleteLattice/Basic): `ConditionallyCompleteLinearOrderBot (WithBot α)` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 29/0 Mathlib/Order/ConditionallyCompleteLattice/Basic.lean 1 1 ['github-actions'] nobody
8-18827
8 days ago
8-18902
8 days ago
8-18376
8 days
31176 mcdoll
author:mcdoll
feat(Analysis): Taylor's theorem with the integral remainder Prove Taylor's theorem with the integral remainder in higher dimensions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 145/1 Mathlib.lean,Mathlib/Analysis/Calculus/TaylorIntegral.lean,docs/100.yaml,docs/undergrad.yaml 4 7 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'mcdoll', 'sgouezel'] sgouezel
assignee:sgouezel
8-9772
8 days ago
8-9831
8 days ago
15-41048
15 days
37544 SnirBroshi
author:SnirBroshi
chore(Combinatorics/SimpleGraph/Coloring): move `ConcreteColorings.lean` and `EdgeLabeling.lean` to `Coloring/` Moves `SimpleGraph/ConcreteColorings.lean` to `SimpleGraph/Coloring/Constructions.lean` and `SimpleGraph/EdgeLabeling.lean` to `SimpleGraph/Coloring/EdgeLabeling.lean`. See [Zulip](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Coloring.20module.20names/with/583281500) --- [Zulip](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Coloring.20module.20names/with/583281500) might want to rename `ConcreteColorings` (Edit: the poll chose `Constructions.lean`) #37546 adds module deprecations [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-combinatorics maintainer-merge 2/2 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Constructions.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/EdgeLabeling.lean 3 2 ['YaelDillies', 'github-actions', 'ooovi'] nobody
7-80318
7 days ago
10-60770
10 days ago
10-60388
10 days
37619 FernandoChu
author:FernandoChu
feat(topology): Small inductive dimension Adds a type class for small inductive dimension. See also https://github.com/leanprover-community/mathlib4/pull/37444. Co-authored-by: Andrew Yang [the.erd.one@gmail.com](mailto:the.erd.one@gmail.com) AI disclosure: Claude code assisted in preparing this PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 76/0 Mathlib.lean,Mathlib/Topology/SmallInductiveDimension.lean 2 4 ['FernandoChu', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] ocfnash
assignee:ocfnash
7-78150
7 days ago
7-82109
7 days ago
11-51622
11 days
37530 mcdoll
author:mcdoll
fix(Topology/Algebra): fix bad simps and make arguments implicit for `PointwiseConvergenceCLM` We delete all `simps` calls in the definitions of operators on `PointwiseConvergenceCLM` and replace them with `apply_apply` lemmas that do not abuse the defeq between `SLₚₜ` and `SL`. This made the linter discover some typeclass duplications, which we remove by restructuring the file. As a consequence of the new `simp` lemmas, we can remove all `set_option backward.isDefEq.respectTransparency false in` in `Analysis.Distribution.TemperedDistribution`. Moreover, we make several arguments implicit, which can be inferred in almost all practical situations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) not-ready-to-merge 88/69 Mathlib/Analysis/Distribution/TemperedDistribution.lean,Mathlib/Topology/Algebra/Module/Spaces/PointwiseConvergenceCLM.lean 2 4 ['github-actions', 'jcommelin', 'mathlib-merge-conflicts', 'mcdoll'] nobody
7-78106
7 days ago
8-29015
8 days ago
11-61649
11 days
36849 mike1729
author:mike1729
feat(Analysis/Normed/Module/SchauderBasis): basic sequences and Grünblum criterium This PR introduces the theory of basic sequences in Banach spaces, following Albiac–Kalton. Defines basic sequences in normed spaces, and prove the classical Grünblum criterium for recognizing them. ### Main Definitions - `IsBasicSequence`: A `Prop` asserting that initial partial sums of `e` are bounded by `K` times the full partial sum. - `IsBasicSequence.toSchauderBasis`: Constructs a `SchauderBasis` on the algebraic span of a nonzero basic sequence. ### Main Results - `IsBasicSequence.linearIndependent`: A nonzero basic sequence is linearly independent. - `IsBasicSequence.coe_toSchauderBasis_apply`: The `n`-th basis vector of the constructed Schauder basis coerces to `e n` in the ambient space. - `IsBasicSequence.enormProjBound_le`: The projection bound of the constructed basis is at most `ENNReal.ofReal K`. --- - follow up to : #34209 - blocks : #35473 The next planned PRs: - general selection principle for basic sequences - characterization when a set contains a basic sequence in terms of weak closure and compactness - Eberlein–Šmulian theorem - weakly compact subsets of a Banach space are Fréchet–Urysohn spaces [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-analysis new-contributor 278/1 Mathlib.lean,Mathlib/Analysis/Normed/Module/SchauderBasis/Basic.lean,Mathlib/Analysis/Normed/Module/SchauderBasis/BasicSequence.lean 3 7 ['github-actions', 'j-loreaux', 'mike1729'] sgouezel
assignee:sgouezel
7-76529
7 days ago
7-79237
7 days ago
27-19212
27 days
37342 vasnesterov
author:vasnesterov
feat(Tactic/ComputeAsymptotics/Multiseries): non-primitive corecursion for Seq: more `FriendlyOperation` API This is a continuation of #35072. This PR adds more API about friendly operations: * `FriendlyOperation.coind`: a coinductive principle for proving that operation is friendly * `FriendlyOperationClass.eq_of_bisim`: a generalisation of `Seq.eq_of_bisim'` for proving two sequences are equal. --- - [x] depends on: #35072 This is a part of the `compute_asymptotics` tactic (#28291). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data t-meta 161/0 Mathlib/Tactic/ComputeAsymptotics/Multiseries/Corecursion.lean 1 2 ['github-actions', 'mathlib-dependent-issues'] nobody
7-75039
7 days ago
13-65906
13 days ago
13-65712
13 days
36378 EtienneC30
author:EtienneC30
refactor: define the geometric distribution via a sum of Dirac masses Change the definition of `geometricMeasure p` to be `Measure.sum (fun n ↦ ENNReal.ofReal ((1 - p) ^ n * p)) • (.dirac n))` instead of using `PMF`. This allows to directly use API for measures instead of having to develop an API for `PMF`, which anyway is defined as a sum of Dirac masses. Also add some results about integrals against the geometricMeasure. --- - [x] depends on: #36355 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability large-import 138/25 Mathlib/Probability/Distributions/Geometric.lean 1 41 ['DavidLedvinka', 'EtienneC30', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'pfaffelh'] RemyDegenne
assignee:RemyDegenne
7-70172
7 days ago
15-65468
15 days ago
37-60211
37 days
36495 AlexKontorovich
author:AlexKontorovich
chore(Finset/NatDivisors): refactor `card_divisors_mul` and `sum_divisors_mul` to not rely on `ArithmeticFunction` `Nat.Coprime.card_divisors_mul` and `Nat.Coprime.sum_divisors_mul` are moved to not rely on `ArithmeticFunction`. See zulip discussion here: [#mathlib4 > Library design question, e.g.`Nat.Coprime.card_divisors_mul` @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Library.20design.20question.2C.20e.2Eg.2E.60Nat.2ECoprime.2Ecard_divisors_mul.60/near/577769899) Co-authored-by: Ziyan Wei and Aayush Rajasekaran --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-number-theory t-algebra
label:t-algebra$
41/14 Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Data/Finset/NatDivisors.lean,Mathlib/NumberTheory/ArithmeticFunction/Misc.lean 3 5 ['AlexKontorovich', 'arajasek', 'github-actions'] alreadydone
assignee:alreadydone
7-65921
7 days ago
7-65977
7 days ago
30-59510
30 days
37800 dtumad
author:dtumad
feat(Probability): Add definition of `SPMF` based on existing `PMF` This PR adds a definition of `SPMF A` based on the existing `PMF A` definition, and adds basic monadic operations on them. --- There's a few different projects now using a definition along these lines so it would be good to align things. I tried to just port just the most basic things for now until the definitions can be agreed on. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 231/0 Mathlib.lean,Mathlib/Probability/ProbabilityMassFunction/Basic.lean,Mathlib/Probability/ProbabilityMassFunction/Constructions.lean,Mathlib/Probability/ProbabilityMassFunction/Monad.lean,Mathlib/Probability/ProbabilityMassFunction/SPMF.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean 6 2 ['github-actions'] nobody
7-65890
7 days ago
7-65954
7 days ago
7-67145
7 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. maintainer-merge 120/165 Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Data/Set/Semiring.lean 2 41 ['Parcly-Taxel', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'sgouezel'] nobody
7-61076
7 days ago
7-61334
7 days ago
9-1812
9 days
36604 JovanGerb
author:JovanGerb
feat(Translate): reorder universes This PR improves the heuristic for reordering of universes in `to_dual`/`to_additive`. The previous heuristic worked well when the first two universes had to be swapped. For example for translating `a ^ n` to `n • a`, and for dualizing `GaloisConnection`. However, in Category theory we sometimes need to swap more universes because a category instance comes with 2 universes which both need to be swapped. In particular, the comma category, and adjunctions both need this feature. This PR doesn't add any syntax for specifying the reordering of universes. It is assumed that the universe reordering can always be inferred from the normal reordering and from the type. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 204/91 Mathlib/CategoryTheory/Comma/Basic.lean,Mathlib/Tactic/Translate/Core.lean,Mathlib/Tactic/Translate/Reorder.lean,MathlibTest/ToDual.lean 4 8 ['JovanGerb', 'bryangingechen', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] dwrensha
assignee:dwrensha
7-56389
7 days ago
7-56415
7 days ago
21-71576
21 days
36999 themathqueen
author:themathqueen
feat(Analysis/RCLike): lifting `C(X, ℝ)` to `C(X, 𝕜)` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 131/1 Mathlib.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Analysis/RCLike/ContinuousMap.lean 3 7 ['github-actions', 'j-loreaux', 'themathqueen'] urkud
assignee:urkud
7-39230
7 days ago
7-38932
7 days ago
23-49114
23 days
37185 gasparattila
author:gasparattila
chore(Data/Finset/Lattice/Fold): rename `comp_sup_*` to `apply_sup_*` These lemmas are of the form `g (s.sup f) = s.sup (g ∘ f)` with no composition on the LHS. --- - [x] depends on: #37047 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 44/26 Mathlib/Algebra/Order/Ring/Finset.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/Normed/Group/Ultra.lean,Mathlib/Data/ENNReal/Lemmas.lean,Mathlib/Data/Finset/Lattice/Fold.lean,Mathlib/Data/Finset/Max.lean,Mathlib/Data/NNReal/Basic.lean,Mathlib/Order/PartialSups.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/Defs.lean,Mathlib/Topology/ContinuousMap/CompactlySupported.lean,Mathlib/Topology/ContinuousMap/Ordered.lean 11 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
7-32803
7 days ago
7-35837
7 days ago
7-35637
7 days
35865 vihdzp
author:vihdzp
chore: review `Cardinal.ord` API This PR does the following: - Mark `Cardinal.ord` as no expose. - Prove the defining property `gciOrdCard` earlier. - Deprecate the unused `ord.orderEmbedding` (it simply restates that the function is strictly monotonic). - Rename `ord_nat` → `ord_natCast`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 39/36 Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean 3 6 ['github-actions', 'mathlib-merge-conflicts'] alreadydone
assignee:alreadydone
7-32319
7 days ago
7-32344
7 days ago
42-62500
42 days
36740 euprunin
author:euprunin
chore: golf using `grind` The goal of this PR is to decrease the number of times lemmas are called explicitly. Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (differences <30 ms considered measurement noise): * `AlgebraicGeometry.Scheme.isBasis_affineOpens`: unchanged 🎉 * `SimpleGraph.Walk.takeUntil_eq_take`: 263 ms before, 180 ms after 🎉 * `SimpleGraph.Walk.dropUntil_eq_drop`: 382 ms before, 261 ms after 🎉 * `Int.image_Ico_emod`: unchanged 🎉 * `Equiv.Perm.ofSubtype_swap_eq`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 7/33 Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Decomp.lean,Mathlib/Data/Int/Interval.lean,Mathlib/GroupTheory/Perm/Support.lean 4 7 ['artie2000', 'chenson2018', 'github-actions', 'mathlib-merge-conflicts'] nobody
7-27978
7 days ago
13-68927
13 days ago
29-40220
29 days
37722 SabrinaJewson
author:SabrinaJewson
feat(Order/Cover): intervals equal singletons iff To complement `Set.Icc_eq_singleton_iff`, this introduces: - `Set.Ioc_eq_singleton_iff` - `Set.Ico_eq_singleton_iff` - `Set.Ioi_eq_singleton_iff` - `Set.Iio_eq_singleton_iff` - `Set.Ioo_eq_singleton_iff` Unforunately because of the order of the ands, the last cannot be made self-dual. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 39/0 Mathlib/Order/Cover.lean 1 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
7-24933
7 days ago
7-24957
7 days ago
9-11193
9 days
36314 JovanGerb
author:JovanGerb
feat(gcongr): support `rintro` patterns This PR adds support for `rintro` patterns in the `with` clause of `gcongr`. This makes it consistent with `congr!`. I've only found one case in mathlib where this could actually be used to shorten a proof. I split the gcongr `elab` into a separate `syntax` and `elab_rules`, which makes it easier to deal with the syntax. I noticed that the implementation of `congr!` was unnecessarily converting back and forth between `rintroPat` and `rcasesPat`, so I changed it to simply only use `rintroPat`, and then did the same in `gcongr`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 41/28 Mathlib/Combinatorics/SimpleGraph/Regularity/Uniform.lean,Mathlib/Tactic/CongrExclamation.lean,Mathlib/Tactic/Convert.lean,Mathlib/Tactic/Core.lean,Mathlib/Tactic/GCongr/Core.lean 5 2 ['dupuisf', 'github-actions'] thorimur
assignee:thorimur
7-23230
7 days ago
39-72639
39 days ago
39-72241
39 days
36472 EtienneC30
author:EtienneC30
feat: finite dimensional distribution of Brownian motion Define `gaussianProjectiveFamily : (I : Finset ℝ≥0) → Measure (I → ℝ)`. Each `gaussianProjectiveFamily I` is the centered Gaussian measure over `I → ℝ` with covariance matrix given by `brownianCovMatrix I s t := min s t`. Prove that these measures satisfy `IsProjectiveMeasureFamily`, which means that they can be extended into a measure over `ℝ≥0 → ℝ` thanks to the Kolmogorov's extension theorem (not in Mathlib yet). The obtained measure is a measure over the set of real processes indexed by `ℝ≥0` and is the law of the Brownian motion. --- - [x] depends on: #36143 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) brownian t-measure-probability 226/1 Mathlib.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/Probability/BrownianMotion/GaussianProjectiveFamily.lean,Mathlib/Probability/Distributions/Gaussian/HasGaussianLaw/Basic.lean,Mathlib/Probability/Moments/Basic.lean 5 2 ['github-actions', 'mathlib-dependent-issues'] RemyDegenne
assignee:RemyDegenne
7-23228
7 days ago
30-74032
30 days ago
30-73507
30 days
37098 vihdzp
author:vihdzp
feat: singular cardinals We define a singular cardinal as an infinite cardinal which is larger than its cofinality. That's to say, every cardinal is exactly one of the following three: finite, regular, or singular. Re-opened from #17005, with permission. --- Co-authored-by: Nir Paz - [x] depends on: #36933 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 113/28 Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Regular.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean 4 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'plp127'] alreadydone
assignee:alreadydone
7-23225
7 days ago
10-63237
10 days ago
22-27070
22 days
37222 SnirBroshi
author:SnirBroshi
feat(LinearAlgebra/Matrix/ConjTranspose): `conjTranspose` as an `AlgEquiv` Wrap `Matrix.conjTranspose` as a `StarAlgEquiv` to the opposite ring. Also upgrade the existing `RingEquiv` to a `StarRingEquiv`. --- This relies on `TrivialStar R` (the matrix has entries in `α` which is an `R`-algebra) because an `AlgEquiv` requires `f (r • M) = r • (f M)` but `conjTranspose` gives `(r • M)ᴴ = (star r) • Mᴴ`. Unlike `LinearEquiv` there doesn't seem to be a ["semilinear" variant of it over `starRingEnd`](https://github.com/leanprover-community/mathlib4/blob/3871d9aa5a510dda9dcf837fbb6ba30d6927d504/Mathlib/Algebra/Module/LinearMap/Star.lean#L25). - [x] depends on: #37178 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
29/27 Mathlib/LinearAlgebra/Matrix/ConjTranspose.lean 1 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] ocfnash
assignee:ocfnash
7-23223
7 days ago
15-12287
15 days ago
15-12337
15 days
37623 IvanRenison
author:IvanRenison
feat(Order/RelIso): add theorems about `RelHom.comp` and `RelEmbedding.trans` Co-authored-by: SnirBroshi <26556598+SnirBroshi@users.noreply.github.com> --- Missing of this theorems noticed by @SnirBroshi in #37598 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 18/0 Mathlib/Order/RelIso/Basic.lean 1 6 ['IvanRenison', 'SnirBroshi', 'eric-wieser', 'github-actions'] bryangingechen
assignee:bryangingechen
7-23219
7 days ago
10-52608
10 days ago
11-75617
11 days
37770 tb65536
author:tb65536
feat(NumberTheory/ArithmeticFunction/LFunction): an euler product of power series is the limit of the euler products This PR proves that an Euler product of arithmetic functions constructed from power series is the limit of the partial Euler products by checking that `ofPowerSeries` satisfies the hypothesis of `tendsTo_eulerProduct_of_tendsTo`. This requires assuming that the `q`'s tend to infinity, which can be expressed in terms of the `Northcott` predicate from the heights directory. On the one hand, `Northcott` is perhaps not the best name for this rather general predicate, but at least in this case it is still a somewhat reasonable name in the main use case where the `q`'s are the norms of points on `Spec R`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory t-algebra
label:t-algebra$
28/0 Mathlib/NumberTheory/ArithmeticFunction/LFunction.lean,Mathlib/RingTheory/Ideal/Quotient/HasFiniteQuotients.lean 2 1 ['github-actions'] riccardobrasca
assignee:riccardobrasca
7-23215
7 days ago
8-39998
8 days ago
8-39473
8 days
37791 SnkXyx
author:SnkXyx
feat(Algebra/MvPolynomial/Variables): add some lemmas about `vars` These lemmas are used in #36103 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
18/0 Mathlib/Algebra/MvPolynomial/Variables.lean 1 3 ['Hagb', 'github-actions'] nobody
7-20700
7 days ago
7-82901
7 days ago
7-83462
7 days
37819 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): add `OmegaCompletePartialOrder` instance for `WithBot` with basic `ωScottContinuous` lemmas This is a modification of #34093. See #34093 for details. --- - [x] depends on: #33941 - [x] depends on: #37258 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 337/10 Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/TypeTags.lean,Mathlib/Order/WithBot.lean 6 3 ['github-actions', 'mathlib-dependent-issues'] Komyyy
assignee:Komyyy
7-16818
7 days ago
7-16861
7 days ago
7-20153
7 days
37346 euprunin
author:euprunin
chore: golf using `grind` The goal of this PR is to decrease the number of times lemmas are called explicitly. Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (differences <30 ms considered measurement noise): * `✅️ SimpleGraph.Walk.IsPath.getVert_injOn`: unchanged 🎉 * `✅️ SimpleGraph.Walk.length_bypass_le`: unchanged 🎉 * `✅️ Rat.floor_intCast_div_natCast`: unchanged 🎉 * `✅️ InnerProductGeometry.norm_eq_of_angle_sub_eq_angle_sub_rev_of_angle_ne_pi`: unchanged 🎉 * `✅️ padicNorm.zero_of_padicNorm_eq_zero`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 7/45 Mathlib/Combinatorics/SimpleGraph/Paths.lean,Mathlib/Data/Rat/Floor.lean,Mathlib/Geometry/Euclidean/Triangle.lean,Mathlib/NumberTheory/Padics/PadicNorm.lean 4 8 ['FernandoChu', 'chenson2018', 'euprunin', 'github-actions'] nobody
6-83749
6 days ago
17-33165
17 days ago
17-32639
17 days
32546 anishrajeev
author:anishrajeev
feat(ModelTheory): Prove compactness of the type space Define the space of types and prove various topological properties of it (zero dimensional, totally separated, compact, baire). The goal is to formalize the proof of the Omitting Types Theorem - [ ] depends on: #32215 t-logic new-contributor large-import 31/1 Mathlib/ModelTheory/Topology/Types.lean 1 12 ['NoneMore', 'anishrajeev', 'fpvandoorn', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] fpvandoorn
assignee:fpvandoorn
6-77498
6 days ago
8-9158
8 days ago
12-6591
12 days
37698 Qulinecier
author:Qulinecier
feat: add TendstoInDistribution.continuousOn_comp_prodMk_of_tendstoInMeasure_const This PR adds `TendstoInDistribution.continuousOn_comp_prodMk_of_tendstoInMeasure_const`, a generalization of the existing `TendstoInDistribution.continuous_comp_prodMk_of_tendstoInMeasure_const` (Slutsky's theorem) to functions that are only continuous on a closed subset `s` of the domain, rather than everywhere. This is useful when `g` is only well-behaved on a proper closed subset, such as division (away from zero) or logarithm (on the positive reals), where the previous version requiring global continuity was not applicable. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 92/0 Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean 1 2 ['github-actions'] nobody
6-71551
6 days ago
9-60238
9 days ago
9-59712
9 days
36938 kebekus
author:kebekus
feat: Poisson Integral Formula for the circle average of `log ‖· - ρ‖` Establish an analogue of the **Poisson Integral Formula** for the circle average of `log ‖· - ρ‖` along the circle with radius `‖ρ‖`. The result will be used to establish Poisson's generalization of the classic Jensen formula in complex analysis. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 207/2 Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Complex/Poisson.lean,Mathlib/Analysis/SpecialFunctions/Complex/CircleMap.lean 3 26 ['github-actions', 'j-loreaux', 'kebekus', 'sgouezel'] sgouezel
assignee:sgouezel
6-63662
6 days ago
6-63662
6 days ago
23-76692
23 days
37848 rwst
author:rwst
feat(RingTheory/PowerSeries/Log): log and exp as inverses --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 87/0 Mathlib/RingTheory/PowerSeries/Log.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean 2 1 ['github-actions'] nobody
6-58383
6 days ago
6-58465
6 days ago
6-57939
6 days
37717 adomasbaliuka
author:adomasbaliuka
feat(Analysis/SpecialFunctions/Log): Extends log_mul_self_StrictMonoOn - Extends `log_mul_self_monotoneOn` (which had a TODO indicating that it should be extended) to `mul_log_self_StrictMonoOn` - Adds inequalities [suggested by](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Naming.2FSpelling.3A.20.60mul_log.60.20or.20.60log_mul_self.60.3F/near/583874012) @SnirBroshi like `x - 1 ≤ x * log x` - Consistently uses intervals in `Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean` - `NegMulLog.lean`: module docstring explains that (many) lemmas `*_mul_log_*` are also in this file (Re)naming of lemmas also discussed on Zulip [#mathlib4 > Naming/Spelling: `mul_log` or `log_mul_self`?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Naming.2FSpelling.3A.20.60mul_log.60.20or.20.60log_mul_self.60.3F/with/583877549). Deprecations: - `log_mul_self_monotoneOn` (superseded by `mul_log_StrictMonoOn`) --- Naming may need discussion. We could furthermore rename the last three lemmas in `Monotone.lean`: [Real.abs_log_mul_self_lt](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/SpecialFunctions/Log/Basic.html#Real.abs_log_mul_self_lt), [Real.abs_log_mul_self_rpow_lt](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/SpecialFunctions/Pow/Real.html#Real.abs_log_mul_self_rpow_lt), [tendsto_log_mul_self_nhdsLT_zero](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/SpecialFunctions/Pow/Asymptotics.html#tendsto_log_mul_self_nhdsLT_zero) from `log_mul_self` to `mul_log` for consistency. But maybe the burden of renaming them is worse than the slightly inconsistant naming? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis large-import 60/27 Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean,Mathlib/Analysis/SpecialFunctions/Log/NegMulLog.lean 2 19 ['SnirBroshi', 'adomasbaliuka', 'github-actions'] urkud
assignee:urkud
6-53607
6 days ago
6-71949
6 days ago
8-71481
8 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 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](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 26 ['ADedecker', 'EtienneC30', 'felixpernegger', 'github-actions'] urkud
assignee:urkud
6-51885
6 days ago
6-51945
6 days ago
21-26293
21 days
37312 CoolRmal
author:CoolRmal
feat(MeasureTheory): Outer regular measures are determined by values on bounded open sets We proved that - Every open set in a metric space is a countable union of bounded open sets. - Outer regular measures are determined by values on bounded open sets. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 19/0 Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/Topology/MetricSpace/Bounded.lean 2 6 ['CoolRmal', 'EtienneC30', 'github-actions', 'kex-y'] kex-y
assignee:kex-y
6-50816
6 days ago
6-50850
6 days ago
18-52860
18 days
34138 pfaffelh
author:pfaffelh
feat(MeasureTheory): Introduce `DiscreteMeasure α` giving rise to a `Measure α` as a sum of `dirac`s Define `DiscreteMeasure α` as a structure with `weight : α → ℝ≥0∞` Define `toMeasure (w : DiscreteMeasure α) : Measure α` as a sum of diracs Show properties of the resulting objects This PR intends to start a more userfriendly interaction with discrete probability (measure) theory, in contrast to probability mass functions (`PMF`). There are two main differences between `DiscreteMeasure` and `PMF`: * Every `PMF` hast the additional property `HasSum 1`, making the resulting measure a probability measure. (For `DiscreteMeasure`, I intend to use the typeclass `IsProbabilityMeasure`in a later PR instead.) * The `toMeasure` function of `MassFunction` defines the measure as a sum of diracs, which immediately makes computations possible. Discussion thread on [zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/PMF.20Refactor.3A.20FunLike.20vs.20Definition.20Change) - depends on: #37060 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor 212/0 Mathlib.lean,Mathlib/Algebra/GroupWithZero/Indicator.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/MeasureTheory/Measure/DiscreteMeasure.lean 4 23 ['DavidLedvinka', 'github-actions', 'mathlib-merge-conflicts', 'metakunt', 'ocfnash', 'pfaffelh'] ocfnash
assignee:ocfnash
6-46154
6 days ago
6-73882
6 days ago
78-50688
78 days
36676 euprunin
author:euprunin
chore: replace long terminal `simp only […]`:s (≥3 lemmas) with bare `simp`:s The goal of this PR is to decrease the number of times lemmas are called explicitly. Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (differences <30 ms considered measurement noise): * `Polynomial.map_comp`: unchanged 🎉 * `AlgebraicGeometry.IsClosedImmersion.Spec_iff`: 152 ms before, 107 ms after 🎉 * `nnnorm_pow_le`: unchanged 🎉 * `norm_pow_le`: unchanged 🎉 * `integral_sin`: unchanged 🎉 * `SimpleGraph.Subgraph.le_induce_union`: unchanged 🎉 * `ENNReal.iSup_add_iSup`: unchanged 🎉 * `ENat.iSup_add_iSup`: unchanged 🎉 * `ENat.mul_epow`: unchanged 🎉 * `EReal.abs_eq_zero_iff`: unchanged 🎉 * `Finset.disjoint_biUnion_left`: unchanged 🎉 * `List.splitOnP.go_acc`: unchanged 🎉 * `Multiset.count_map_eq_count`: unchanged 🎉 * `Nat.toDigitsCore_length`: unchanged 🎉 * `PartENat.pos_iff_one_le`: unchanged 🎉 * `Rat.intCast_div_self`: unchanged 🎉 * `Set.biUnion_empty_finset`: unchanged 🎉 * `Quot.subsingleton_iff`: unchanged 🎉 * `Equiv.Perm.support_closure_subset_union`: unchanged 🎉 * `Module.Basis.reindexRange_repr'`: unchanged 🎉 * `MeasureTheory.mul_le_addHaar_image_of_lt_det`: unchanged 🎉 * `MeasureTheory.memLp_finset_sum`: unchanged 🎉 * `MeasureTheory.exists_lt_lowerSemicontinuous_integral_lt`: 450 ms before, 404 ms after 🎉 * `BoundedContinuousFunction.toReal_lintegral_coe_eq_integral`: unchanged 🎉 * `nullMeasurableSet_region_between_oc`: unchanged 🎉 * `nullMeasurableSet_region_between_co`: unchanged 🎉 * `nullMeasurableSet_region_between_cc`: unchanged 🎉 * `MeasureTheory.integral_le_liminf_integral_of_forall_isOpen_measure_le_liminf_measure`: unchanged 🎉 * `padicValNat.pow_add_pow`: unchanged 🎉 * `Monotone.biUnion_Ico_Ioc_map_succ`: unchanged 🎉 * `ProbabilityTheory.condIndepSets_singleton_iff`: unchanged 🎉 * `ProbabilityTheory.sum_variance_truncation_le`: unchanged 🎉 * `IsLocalRing.CotangentSpace.span_image_eq_top_iff`: unchanged 🎉 * `galRestrict'_galLift`: 163 ms before, 48 ms after 🎉 * `Valuation.ne_zero_of_isUnit`: unchanged 🎉 * `hasProd_prod`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 35/35 Mathlib/Algebra/Polynomial/Eval/Defs.lean,Mathlib/Analysis/Normed/Ring/Basic.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/ENat/Lattice.lean,Mathlib/Data/ENat/Pow.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/Finset/Union.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Nat/Digits/Defs.lean,Mathlib/Data/Rat/Lemmas.lean,Mathlib/Data/Set/Constructions.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/Perm/Finite.lean,Mathlib/LinearAlgebra/Basis/Defs.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Integral/Bochner/VitaliCaratheodory.lean,Mathlib/MeasureTheory/Integral/BoundedContinuousFunction.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Measure/Portmanteau.lean,Mathlib/NumberTheory/Multiplicity.lean,Mathlib/Order/SuccPred/IntervalSucc.lean,Mathlib/Probability/Independence/Conditional.lean,Mathlib/Probability/StrongLaw.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/IntegralClosure/IntegralRestrict.lean,Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean 30 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
6-43467
6 days ago
10-73536
10 days ago
29-63538
29 days
36774 euprunin
author:euprunin
chore: replace long terminal `rw […]`:s (≥4 lemmas) with bare `simp`:s The goal of this PR is to decrease the number of times lemmas are called explicitly. Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (differences <30 ms considered measurement noise): * `Finset.lcm_union`: unchanged 🎉 * `Finset.gcd_union`: unchanged 🎉 * `Polynomial.derivative_eval₂_C`: unchanged 🎉 * `Polynomial.expand_pow`: unchanged 🎉 * `Cardinal.mk_real`: unchanged 🎉 * `Real.log_zpow`: unchanged 🎉 * `Matroid.eRank_le_encard_add_eRk_compl`: unchanged 🎉 * `DFinsupp.single_tsub`: unchanged 🎉 * `EReal.inv_neg`: unchanged 🎉 * `Finsupp.toMultiset_map`: unchanged 🎉 * `Finsupp.single_tsub`: unchanged 🎉 * `Multiset.countP_map`: unchanged 🎉 * `Nat.ascFactorial_eq_factorial_mul_choose'`: unchanged 🎉 * `Real.sign_intCast`: unchanged 🎉 * `Real.volume_eball`: unchanged 🎉 * `Real.volume_closedEBall`: unchanged 🎉 * `LFunction_ne_zero_of_not_quadratic_or_ne_one`: 295 ms before, 152 ms after 🎉 * `hasSum_one_div_nat_pow_mul_cos`: unchanged 🎉 * `inv_eq_of_aeval_divX_ne_zero`: unchanged 🎉 * `AlgebraicIndependent.aeval_comp_mvPolynomialOptionEquivPolynomialAdjoin`: unchanged 🎉 * `Ordinal.deriv_mul_eq_opow_omega0_mul`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 22/24 Mathlib/Algebra/GCDMonoid/Finset.lean,Mathlib/Algebra/Polynomial/Derivative.lean,Mathlib/Algebra/Polynomial/Expand.lean,Mathlib/Analysis/Real/Cardinality.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Combinatorics/Matroid/Rank/ENat.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/Finsupp/Multiset.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Multiset/Filter.lean,Mathlib/Data/Nat/Choose/Basic.lean,Mathlib/Data/Real/Sign.lean,Mathlib/MeasureTheory/Measure/Lebesgue/Basic.lean,Mathlib/NumberTheory/LSeries/Nonvanishing.lean,Mathlib/NumberTheory/ZetaValues.lean,Mathlib/RingTheory/Algebraic/Basic.lean,Mathlib/RingTheory/AlgebraicIndependent/Basic.lean,Mathlib/SetTheory/Ordinal/FixedPoint.lean 19 1 ['artie2000', 'github-actions'] nobody
6-43428
6 days ago
29-51480
29 days ago
29-50954
29 days
34154 euprunin
author:euprunin
chore: golf using `grind` (and add four supporting `grind` annotations) The goal of this golfing PR is to decrease the number of times lemmas are called explicitly (replacing calls to lemmas with calls to tactics). Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (shown if ≥10 ms before or after): * `Orientation.nonneg_inner_and_areaForm_eq_zero_iff_sameRay`: 311 ms before, 284 ms after 🎉 * `UV.compression_self`: 29 ms before, 19 ms after 🎉 * `IsSepClosed.exists_root_C_mul_X_pow_add_C_mul_X_add_C`: 405 ms before, 291 ms after 🎉 * `InnerProductGeometry.norm_add_eq_add_norm_iff_angle_eq_zero`: 425 ms before, 309 ms after 🎉 This golfing PR is batched under the following guidelines: * Up to ~5 changed files per PR * Up to ~25 changed declarations per PR * Up to ~100 changed lines per PR --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 12/34 Mathlib/Algebra/Polynomial/Degree/Defs.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Analysis/InnerProductSpace/TwoDim.lean,Mathlib/Combinatorics/SetFamily/Compression/UV.lean,Mathlib/FieldTheory/IsSepClosed.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Basic.lean 6 23 ['Parcly-Taxel', 'Vierkantor', 'artie2000', 'chenson2018', 'euprunin', 'github-actions', 'leanprover-radar', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'tb65536'] Vierkantor
assignee:Vierkantor
6-43268
6 days ago
9-42655
9 days ago
73-67019
73 days
34375 jvanwinden
author:jvanwinden
feat(MeasureTheory/Function/AEEqOfLIntegral): introduce lemmas for rewriting a.e. inequalities Introduce the following lemmas: - ae_le_const_iff_forall_gt_imp_ae_lt, - ae_const_le_iff_forall_lt_imp_ae_gt, - ae_le_const_iff_forall_gt_imp_ae_le, - ae_const_le_iff_forall_lt_imp_ae_ge, which can be used get an epsilon of room in a.e. inequalities, with the epsilon being outside the a.e. quantifier. The 'le/ge' variants require a dense ordering. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 31/44 Mathlib/MeasureTheory/Function/AEEqOfLIntegral.lean,Mathlib/Topology/Order/LiminfLimsup.lean 2 13 ['EtienneC30', 'github-actions', 'jvanwinden', 'urkud'] kex-y
assignee:kex-y
6-42959
6 days ago
6-49304
6 days ago
47-53655
47 days
37291 IvanRenison
author:IvanRenison
refactor(Combinatorics/SimpleGraph): move `chromaticNumber_le_two_iff_isBipartite` and `chromaticNumber_eq_two_iff` to `Bipartite` file --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 10/12 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean 2 2 ['Ruben-VandeVelde', 'github-actions'] nobody
6-42260
6 days ago
19-30068
19 days ago
19-29542
19 days
37743 Raph-DG
author:Raph-DG
chore(RingTheory): Connecting dimensionLEOne and krullDimLE --- We should probably also change the name of DimensionLEOne to something more descriptive. I'm not sure what this should be, perhaps NonZeroPrimesMaximal or if we want to keep the relation to krull dim maybe KrullDimZeroOrDomainOfKrullDimOne (this is horrendous but maybe somebody can come up with a nice refinement) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 9/0 Mathlib/RingTheory/KrullDimension/Regular.lean 1 1 ['github-actions'] nobody
6-37537
6 days ago
8-64898
8 days ago
8-64865
8 days
36686 euprunin
author:euprunin
chore: golf using `grind` The goal of this PR is to decrease the number of times lemmas are called explicitly. Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (differences <30 ms considered measurement noise): * `List.prod_map_ite`: unchanged 🎉 * `Path.Homotopy.trans_assoc_reparam`: 2938 ms before, 717 ms after 🎉 * `SimplexCategory.δ_comp_δ`: 522 ms before, 316 ms after 🎉 * `Finsupp.ext_iff'`: unchanged 🎉 * `Computation.bind_assoc`: unchanged 🎉 * `Set.piecewise_insert`: unchanged 🎉 * `ZMod.valMinAbs_mem_Ioc`: unchanged 🎉 * `Matrix.det_eq_of_forall_row_eq_smul_add_pred_aux`: 2141 ms before, 2004 ms after 🎉 Profiled using `set_option trace.profiler true in`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 11/51 Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/Data/Finsupp/Defs.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Set/Piecewise.lean,Mathlib/Data/ZMod/ValMinAbs.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean 8 11 ['artie2000', 'chenson2018', 'euprunin', 'github-actions', 'ooovi'] nobody
6-36445
6 days ago
31-57441
31 days ago
31-56915
31 days
37697 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Clique): add theorems about cliques and induced graphs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 22/0 Mathlib/Combinatorics/SimpleGraph/Clique.lean 1 9 ['Rida-Hamadani', 'SnirBroshi', 'github-actions'] nobody
6-36054
6 days ago
9-60499
9 days ago
9-59973
9 days
37682 SabrinaJewson
author:SabrinaJewson
refactor(Order/OrdContinuous): redefine left and right order continuity to not require preserving ⊥/⊤ `LeftOrdContinuous` currently requires that `f ⊥ = ⊥`, but this means that many functions that are perhaps intuitively left-continuous (like `f x = x + 1` on `ℝ≥0`) are not. In particular, this change means that functions between conditionally complete lattices are `LeftOrdContinuous` iff they are monotone and topologically left continuous (see `MonotoneOn.map_csSup_of_continuousWithinAt` for the reverse direction). If one wants the concept that existed before, one can either accept the `f ⊥ = ⊥` hypothesis separately or, if the function is between complete lattices, use the left side of a `GaloisConnection` (which is equivalent, although I think this is not yet in Mathlib). This removes the definitional equality of the type in favour of a structure. Since most of the time users will be working with the `sSup` versions and not with `IsLUB`, I think this is justified. As a consequence, this removes the definitional equality between `LeftOrdContinuous` and `RightOrdContinuous` of the dual – the latter could be redefined to re-add this, but we do have conversion functions. `LeftOrdContinuous.continuousWithinAt_Iic` is rewritten to accomodate these changes; the superfluous `DenselyOrdered` assumption is also removed. [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/LeftOrdContinuous.20requires.20f.28.E2.8A.A5.29.20.3D.20.E2.8A.A5/near/582932491) --- - [x] depends on: #37735 - [x] depends on: #37772 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order 52/38 Mathlib/Order/OrdContinuous.lean,Mathlib/Order/SemiconjSup.lean,Mathlib/Topology/Order/Basic.lean 3 10 ['SabrinaJewson', 'astrainfinita', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] nobody
6-31190
6 days ago
6-31262
6 days ago
8-27845
8 days
37388 xgenereux
author:xgenereux
feat(FunctionField): constant extensions are finite Let `F` be a function field over `Fq`. If `E` is an algebraic extension of `Fq` which is contained in `F` then it is finite over `Fq`. To implement this, we model the following tower of extensions: ``` E(X) - F / \ | E[X] Fq(X) / \ / E Fq[X] \ / Fq ``` by assuming algebra hypotheses on the level of `Fq[X]` and `E[X]` and use ``` attribute [local instance] Polynomial.algebra ``` together with the scoped `RatFunc` instances `RatFunc.liftAlgebra` and `RatFunc.isScalarTower_liftAlgebra` to obtain the appropriate algebra instances from `RatFunc Fq/E`. One annoying thing is that using these instances creates a diamond with `RatFunc.instSMulOfFractionRingPolynomial`, I am working on trying to find a fix but don't have anything at the moment. I am open to suggestions! Here are some details on this diamond: Since both `RatFunc E` and `FractionRing E[X]` (which are not defeq) have an `IsFractionRing E[X]` instance we get two maps coming from `RatFunc.liftAlgebra`: 1. (RatFunc.liftAlgebra Fq (FractionRing E[X])) 2. (RatFunc.liftAlgebra Fq (RatFunc E)) Where the first one is transported back to `RatFunc E` via `RatFunc.instSMulOfFractionRingPolynomial`. Analyzing ``` @RatFunc.instSMulOfFractionRingPolynomial _ _ (RatFunc Fq) (RatFunc.liftAlgebra Fq (FractionRing E[X])).toSMul = (RatFunc.liftAlgebra Fq (RatFunc E)).toSMul ``` we see that this boils down to `{ toFractionRing := (IsLocalization.lift ⋯) x } = (IsFractionRing.lift ⋯) x` not being defeq. Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 64/0 Mathlib/NumberTheory/FunctionField.lean,docs/references.bib 2 2 ['github-actions', 'mathlib-merge-conflicts'] tb65536
assignee:tb65536
6-29610
6 days ago
6-29668
6 days ago
16-35489
16 days
35413 joneugster
author:joneugster
fix(Util/CountHeartbeats): move elaboration in #count_heartbeats inside a namespace This PR continues the work from #21182. Original PR: https://github.com/leanprover-community/mathlib4/pull/21182 t-meta 73/6 Mathlib/Util/CountHeartbeats.lean,MathlibTest/CountHeartbeats.lean 2 3 ['github-actions', 'joneugster', 'mathlib-bors'] adamtopaz
assignee:adamtopaz
6-23027
6 days ago
58-52871
58 days ago
58-52345
58 days
36545 yuanyi-350
author:yuanyi-350
feat(ProbabilityTheory): Add Kolmogorov's inequality ref: https://en.wikipedia.org/wiki/Kolmogorov%27s_inequality --- - [x] depends on: #36542 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability large-import 147/0 Mathlib.lean,Mathlib/Probability/CondVar.lean,Mathlib/Probability/Martingale/Kolmogorov.lean,Mathlib/Probability/Martingale/OptionalStopping.lean 4 3 ['CoolRmal', 'github-actions', 'mathlib-dependent-issues'] kex-y
assignee:kex-y
6-23024
6 days ago
33-74574
33 days ago
33-75837
33 days
37439 ADedecker
author:ADedecker
feat: UniformConvergenceCLM version of ContinuousLinearEquiv.arrowCongr The absence of simp lemmas comes from the fact that the natural lemmas would break the API boundary. I will try to think about how to make this cleaner. --- - [ ] depends on: #37614 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 137/55 Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/Algebra/Module/Spaces/ContinuousLinearMap.lean,Mathlib/Topology/Algebra/Module/Spaces/UniformConvergenceCLM.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] loefflerd
assignee:loefflerd
6-23018
6 days ago
8-71605
8 days ago
10-9260
10 days
37828 EtienneC30
author:EtienneC30
feat: aemeasurable version of `map_measureReal_apply` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 7/2 Mathlib/MeasureTheory/Measure/Real.lean 1 1 ['github-actions'] RemyDegenne
assignee:RemyDegenne
6-23013
6 days ago
6-85818
6 days ago
6-85292
6 days
37830 EtienneC30
author:EtienneC30
feat: the law of independent random variables is the product of their laws --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 50/0 Mathlib/Probability/HasLaw.lean,Mathlib/Probability/Independence/InfinitePi.lean 2 1 ['github-actions'] RemyDegenne
assignee:RemyDegenne
6-23012
6 days ago
6-82060
6 days ago
6-81534
6 days
37873 artie2000
author:artie2000
chore(FieldTheory/Minpoly/Basic): reorganise section variables * Remove duplicate sections This PR does not affect any declarations (including variable explicitness) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
5/18 Mathlib/FieldTheory/Minpoly/Basic.lean 1 1 ['github-actions'] nobody
6-18949
6 days ago
6-19074
6 days ago
6-18548
6 days
28546 Sfgangloff
author:Sfgangloff
feat(SymbolicDynamics): basic setup of Zd, full shift, cylinders, pat… This PR adds a **group-generic** foundation for symbolic dynamics over an arbitrary group `G`, together with convenient specializations for `ℤ` and `ℤ^d`. Summary of additions: - **Full shift and shift action** - `abbrev FullShift (A G) := G → A` (inherits product topology from the Π-type). - Right shift `shift g x` with convention `(shift g x) h = x (h * g)`. - **Cylinders and topology** - `cylinder U x : Set (G → A)` for finite `U : Finset G`. - Cylinders are open under `[DiscreteTopology A]`; with a finite alphabet they are also closed. - Equality with dependent products: `cylinder U x = Set.pi (↑U) (fun i => ({x i} : Set A))`, enabling use of the `Set.pi` API. - **Patterns, occurrences, and subshifts** - `Pattern A G` with finite `support : Finset G` and `data : support → A`. - `Pattern.occursIn p x g` (occurrence at translate `g`) and the expected shift law. - `forbids F` and `Subshift A G` (closed, shift-invariant subsets). - `FixedSupport A G U` with an equivalence to `(U → A)` to obtain finiteness. - **Language on finite shapes and counting** - `languageOn X U`, `languageCardOn X U`, and `patternCountOn Y U`. - **Entropy along a shape sequence** - `limsupAtTop` (as an `sInf` of eventual upper bounds). - `entropyAlong X F hF := limsup (log (patternCountOn X (F n) + 1) / |F n|)` for any nonempty finite shapes `F : ℕ → Finset G` (the `+ 1` avoids `log 0`). - **Specializations** - `IntShapes`: segments `[-n,n]` on `Multiplicative ℤ`, with `entropy_Z`. - `ZdShapes`: boxes `[-n,n]^d` on `ℤ^d` (as functions `Fin d → ℤ`), with `entropy_Zd`. Mathematical remarks: - The API is **shape-parametric**: entropy is defined along user-provided finite shapes. - On **amenable** groups, using a **Følner** sequence yields a canonical value (Ornstein–Weiss). This PR does not assume amenability; the family of shapes is an explicit input. Motivation: Provide a clean, reusable base for symbolic dynamics on groups in mathlib. Future work: - Add a Følner predicate and prove shape-independence / limit existence on amenable groups. - Expand the `ℤ`/`ℤ^d` toolkit (alternative shapes, mixing, factors). - Develop 1D theory and, longer-term, multidimensional SFT results (e.g. along the lines of Hochman–Meyerovitch). t-dynamics new-contributor 665/0 Mathlib.lean,Mathlib/Dynamics/SymbolicDynamics/Basic.lean,Mathlib/Tactic/Translate/ToAdditive.lean 3 183 ['Sfgangloff', 'botbaki-review', 'eric-wieser', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'sgouezel'] urkud
assignee:urkud
6-7997
6 days ago
6-8032
6 days ago
151-19352
151 days
37748 YaelDillies
author:YaelDillies
chore: syntactically generalise `symm_mk` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 36/38 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Module/Equiv/Defs.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/Algebra/Star/StarRingHom.lean,Mathlib/Logic/Equiv/Defs.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/Morita/Matrix.lean,Mathlib/RingTheory/Polynomial/Quotient.lean,Mathlib/RingTheory/TensorProduct/Free.lean 10 8 ['JovanGerb', 'YaelDillies', 'eric-wieser', 'github-actions'] nobody
6-7432
6 days ago
7-72938
7 days ago
7-77709
7 days
36416 j-loreaux
author:j-loreaux
feat(Analysis/CStarAlgebra): norms of sums of orthogonal selfadjoint elements --- - [ ] depends on: #36407 - [ ] depends on: #37569 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis maintainer-merge 130/1 Mathlib/Algebra/Star/BigOperators.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/Analysis/CStarAlgebra/Fuglede.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean 4 22 ['github-actions', 'grunweg', 'j-loreaux', 'loefflerd', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'themathqueen'] loefflerd
assignee:loefflerd
5-85504
5 days ago
6-14679
6 days ago
11-79583
11 days
33443 sahanwijetunga
author:sahanwijetunga
feat: Define Isometries of Bilinear Spaces --- We define Isometries of Bilinear Spaces, closely following the implementation of isometries of quadratic spaces. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor maintainer-merge
label:t-algebra$
278/0 Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/Isometry.lean,Mathlib/LinearAlgebra/BilinearForm/IsometryEquiv.lean 3 25 ['github-actions', 'robin-carlier', 'sahanwijetunga'] mattrobball
assignee:mattrobball
5-85323
5 days ago
5-85482
5 days ago
54-25664
54 days
37845 grunweg
author:grunweg
chore: golf using positivity --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 13/14 Archive/Imo/Imo2008Q3.lean,Archive/OxfordInvariants/Summer2021/Week3P1.lean,Mathlib/Analysis/InnerProductSpace/Positive.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Pochhammer.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Uniform.lean,Mathlib/Data/ZMod/ValMinAbs.lean,Mathlib/NumberTheory/ClassNumber/Finite.lean 9 3 ['github-actions', 'grunweg', 'leanprover-radar'] nobody
5-79054
5 days ago
6-60317
6 days ago
6-59791
6 days
37771 tb65536
author:tb65536
feat(AlgebraicGeometry/EllipticCurve/LFunction): define the L-Function of an elliptic curve This PR defines the L-Function of an elliptic curve. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory t-algebra t-algebraic-geometry
label:t-algebra$
83/0 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/LFunction.lean,Mathlib/Tactic/Linter/DirectoryDependency.lean 3 3 ['github-actions', 'tb65536', 'wwylele'] riccardobrasca
assignee:riccardobrasca
5-75688
5 days ago
8-35531
8 days ago
8-35007
8 days
37840 tb65536
author:tb65536
chore(RingTheory/Localization/AtPrime/Basic): use `under` instead of `comap (algebraMap R S)` This PR switches over from `comap (algebraMap R S)` to `under`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
162/144 Mathlib/AlgebraicGeometry/Noetherian.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/RingTheory/DedekindDomain/Dvr.lean,Mathlib/RingTheory/Etale/QuasiFinite.lean,Mathlib/RingTheory/Frobenius.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Localization.lean,Mathlib/RingTheory/Ideal/GoingUp.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Localization.lean,Mathlib/RingTheory/IntegralClosure/GoingDown.lean,Mathlib/RingTheory/Jacobson/Ring.lean,Mathlib/RingTheory/KrullDimension/Polynomial.lean,Mathlib/RingTheory/LocalProperties/Injective.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/Localization/AtPrime/Extension.lean,Mathlib/RingTheory/Localization/Ideal.lean,Mathlib/RingTheory/QuasiFinite/Basic.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean 19 2 ['github-actions', 'robin-carlier', 'tb65536'] erdOne
assignee:erdOne
5-75536
5 days ago
6-63502
6 days ago
6-62983
6 days
34271 gasparattila
author:gasparattila
feat(Topology/Sets): second-countability of `(Nonempty)Compacts` --- - [x] depends on: #34266 - [x] depends on: #34268 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 17/76 Mathlib/Topology/MetricSpace/Closeds.lean,Mathlib/Topology/Sets/VietorisTopology.lean 2 8 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'scholzhannah'] mcdoll
assignee:mcdoll
5-75144
5 days ago
7-77026
7 days ago
14-48545
14 days
36401 JovanGerb
author:JovanGerb
feat(positivity): positivity extension for `a - b` This PR adds support in `positivity` for proving things about subtraction. For example, if the goal is `0 < a - b`, and there is a local hypothesis of type `b < a`, then we close the goal. The motivation is that we want `positivity` to be a flexible tactic. So, when trying to prove `0 < a - b` using a local hypothesis, we should look for the simp normal form of this, which is `b < a`. --- [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Can.20I.20make.20positivity.20work.20for.20this.3F/near/578277240) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta maintainer-merge 63/26 Mathlib/Analysis/Calculus/Taylor.lean,Mathlib/Analysis/Complex/AbelLimit.lean,Mathlib/Analysis/Complex/BorelCaratheodory.lean,Mathlib/Analysis/Complex/Hadamard.lean,Mathlib/Analysis/Convex/BetweenList.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/Geometry/Manifold/Riemannian/PathELength.lean,Mathlib/Tactic/Positivity/Basic.lean,MathlibTest/positivity.lean 10 10 ['JovanGerb', 'github-actions', 'hrmacbeth', 'j-loreaux', 'joneugster', 'leanprover-radar'] joneugster
assignee:joneugster
5-74025
5 days ago
5-77938
5 days ago
23-48315
23 days
37882 tb65536
author:tb65536
feat(RingTheory): instances for flatness and projectivity of localizations This PR adds instances for flatness and projectivity of localizations. Note that we already have `Module.Flat.localizedModule`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
12/0 Mathlib/RingTheory/Flat/Stability.lean,Mathlib/RingTheory/LocalProperties/Projective.lean 2 1 ['github-actions'] nobody
5-63886
5 days ago
5-63886
5 days ago
5-67111
5 days
26304 Raph-DG
author:Raph-DG
feat(AlgebraicGeometry): Pushforward of algebraic cycles In this PR we define a notion of the "pushfoward of functions with locally finite support". We give this PR the suggestive title "pushforward of algebraic cycles" because we will go on to model algebraic cycles on a scheme X as functions from X to the integers with locally finite support. - [x] depends on: #26225 - [x] depends on: #26259 - [x] depends on: #35807 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 165/0 Mathlib.lean,Mathlib/Topology/LocallyFinsupp/Pushforward.lean 2 24 ['Raph-DG', 'chrisflav', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] joelriou
assignee:joelriou
5-63868
5 days ago
5-79268
5 days ago
11-27045
11 days
37884 DanielJHorton
author:DanielJHorton
feat(LinearAlgebra/TensorProduct/Baisc): add lift_zero theorem for TensorProduct --- Added the following theorem to `TensorProduct` ``` @[simp] theorem lift_zero : lift (0 : M →ₛₗ[σ₁₂] N →ₛₗ[σ₁₂] P₂) = 0 := Eq.symm <| lift.unique fun _ _ => by simp only [LinearMap.zero_apply] ``` new-contributor t-algebra easy
label:t-algebra$
4/0 Mathlib/LinearAlgebra/TensorProduct/Basic.lean 1 2 ['github-actions'] nobody
5-62791
5 days ago
5-65068
5 days ago
5-64613
5 days
37890 tb65536
author:tb65536
feat(RingTheory/Spectrum/Prime/FreeLocus): add variant of `Module.rankAtStalk_eq` for better rewriting This PR adds a variant of `Module.rankAtStalk_eq` for better rewriting. I also generalized `Ideal.Fiber` to `Module`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
8/2 Mathlib/RingTheory/LocalRing/ResidueField/Fiber.lean,Mathlib/RingTheory/Spectrum/Prime/FreeLocus.lean 2 1 ['github-actions'] nobody
5-61617
5 days ago
5-61617
5 days ago
5-61092
5 days
37858 tb65536
author:tb65536
feat(RingTheory/LocalRing/ResidueField/Fiber): `Ideal.Fiber` is a quotient of a localization This PR proves that `Ideal.Fiber` is a quotient of a localization. This is needed for #37130. --- - [ ] depends on: #37380 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
16/0 Mathlib/RingTheory/LocalRing/ResidueField/Fiber.lean 1 2 ['github-actions', 'mathlib-dependent-issues'] nobody
5-61435
5 days ago
5-61438
5 days ago
5-61652
5 days
36501 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/GradedAlgebra/Homogeneous/RingQuot): graded structure on the quotient of a graded ring by a homogeneous ideal Define the graded structure on the quotient of a graded ring by a homogeneous ideal Co-authored with: @mariainesdff (This is WIP because it still needs some `erw`, various instances do not seem to match, and the overall structure has to be cleaned-up. - Maybe define the graded structure on the quotient of a graded module by a homogeneous submodule. - There is also an issue of working with ring congruences rather than with ideals. ) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
600/2 Mathlib.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/Data/DFinsupp/BigOperators.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/RingQuot.lean 5 11 ['AntoineChambert-Loir', 'chrisflav', 'eric-wieser', 'github-actions', 'robin-carlier'] ocfnash and robin-carlier
assignee:ocfnash assignee:robin-carlier
5-60228
5 days ago
16-63169
16 days ago
16-62656
16 days
37900 tb65536
author:tb65536
feat(RingTheory/Localization/FractionRing): add `IsFractionRing.ofAlgEquiv` and `IsFractionRing.ofAlgHom` This PR gives constructors for `IsFractionRing` from an `AlgEquiv` and from an `AlgHom`. The first is just a specialization of `IsLocalization.isLocalization_of_algEquiv`, but the second has a bit more content. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
9/0 Mathlib/RingTheory/Localization/FractionRing.lean 1 3 ['github-actions', 'tb65536'] nobody
5-49904
5 days ago
5-49904
5 days ago
5-49379
5 days
35243 ScottCarnahan
author:ScottCarnahan
refactor(Algebra/MonoidAlgebra/PointwiseSMul): switch action from Finsupp to (Add)MonoidAlgebra and multiplicativize This PR moves the API for convolution action on functions from `Finsupp` to `MonoidAlgebra`, adding a `Semiring` hypothesis. We do this move, because the convolution action of finsupps on formal functions is more naturally expressed as an action by the monoid algebra with its convolutional multiplication. This PR also multiplicativizes, preserving the original material with `to_additive`. --- The large import is on a module that will be deprecated - I had to add the imports to make the deprecated flags work, but ultimately they will be irrelevant. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-algebra
label:t-algebra$
167/118 Mathlib.lean,Mathlib/Algebra/MonoidAlgebra/PointwiseSMul.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/Data/Finsupp/PointwiseSMul.lean,Mathlib/Data/Set/SMulAntidiagonal.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/Summable.lean 7 5 ['ScottCarnahan', 'github-actions', 'mathlib-merge-conflicts', 'ocfnash'] ocfnash
assignee:ocfnash
5-46623
5 days ago
5-46679
5 days ago
40-61301
40 days
33715 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(LinearAlgebra/Projectivization/Action): prove that the action is 2-transitive and primitive Define the action of the special linear group on the projectivization. Prove that it is 2-transitive and primitive. --- - [x] depends on: #33387 - [x] depends on: #33347 - [x] depends on: #32757 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
246/4 Mathlib/LinearAlgebra/FiniteDimensional/Basic.lean,Mathlib/LinearAlgebra/FiniteDimensional/Lemmas.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/Projectivization/Basic.lean,Mathlib/LinearAlgebra/SpecialLinearGroup.lean,Mathlib/LinearAlgebra/Transvection/Basic.lean 6 12 ['AntoineChambert-Loir', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] joelriou
assignee:joelriou
5-30692
5 days ago
5-30746
5 days ago
11-54816
11 days
35622 SnirBroshi
author:SnirBroshi
feat(Logic/Function/Basic): `onFun` and `swap` preserve relation properties --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 141/19 Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/Logic/Function/Defs.lean,Mathlib/Order/Defs/Unbundled.lean,Mathlib/Order/OrderIsoNat.lean,Mathlib/Order/RelClasses.lean,Mathlib/Order/WellFounded.lean,Mathlib/Order/WithBot.lean 8 7 ['SnirBroshi', 'github-actions', 'leanprover-radar', 'vihdzp'] nobody
5-23239
5 days ago
41-13662
41 days ago
52-83387
52 days
36856 harahu
author:harahu
doc(Geometry): tidy bibliography entry Use canonical author names and rename the bib key to match the corrected ASCII transcription of Domínguez. Sources: https://fama.iff.csic.es/personas/margalef/margalef.html ; https://produccioncientifica.ucm.es/investigadores/166066/tesis Normalize the title and move the translation information into a note phrased as 'Translated from the Spanish original'. Sources: https://books.google.com/books/about/Differential_Topology.html?id=gexAr04vRT4C ; https://books.google.com/books/about/Topolog%C3%ADa_diferencial.html?id=0PRMy3ffm4QC Use the conventional publisher form 'North-Holland Publishing Co., Amsterdam' instead of the imported catalog-style field. Sources: https://search.worldcat.org/title/Differential-topology/oclc/25713102 ; https://www.ams.org/tran/2010-362-08/S0002-9947-10-05073-7/ Prepared with assistance from Codex. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry LLM-generated 8/7 Mathlib/Geometry/Manifold/Immersion.lean,docs/references.bib 2 4 ['github-actions', 'grunweg', 'harahu'] nobody
5-23237
5 days ago
27-39188
27 days ago
27-49883
27 days
35394 HugLycan
author:HugLycan
feat(Tactic/Positivity): make positivity work for types that are not partial orders Make positivity work for types that are not partial orders Most PositivityExt haven't been updated for non partial order cases yet. They will be updated in the later PR. `Strictness` now does not depend `Q(PartialOrder $α)`, and the constructors of `Strictness` now have their order typeclass arguments. In order to help `Qq` synth instances property, we have to move `assertInstancesCommute` to inner branch, manually add `haveI'` or explicitly pass the order typeclass instance into `.positive`/`.nonnegative`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-meta 611/322 Mathlib/Algebra/Order/AbsoluteValue/Basic.lean,Mathlib/Algebra/Order/Algebra.lean,Mathlib/Algebra/Order/BigOperators/Expect.lean,Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Field/Power.lean,Mathlib/Algebra/Order/Floor/Extended.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Module/Field.lean,Mathlib/Analysis/Complex/BorelCaratheodory.lean,Mathlib/Analysis/Complex/Order.lean,Mathlib/Analysis/SpecialFunctions/Bernstein.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Arctan.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/DerivHyp.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Removal.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/ENNReal/Real.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/Data/Rat/Cast/Order.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Measure/Real.lean,Mathlib/NumberTheory/ArithmeticFunction/Misc.lean,Mathlib/NumberTheory/ArithmeticFunction/Zeta.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Positivity/Finset.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean 37 23 ['HugLycan', 'JovanGerb', 'fpvandoorn', 'github-actions', 'joneugster'] dwrensha
assignee:dwrensha
5-23141
5 days ago
27-80005
27 days ago
27-82597
27 days
37513 chrisflav
author:chrisflav
feat(AlgebraicGeometry): geometrically connected schemes --- - [x] depends on: #37515 - [x] depends on: #37514 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 129/0 Mathlib.lean,Mathlib/AlgebraicGeometry/Geometrically/Connected.lean,Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/Topology/Connected/Basic.lean 4 5 ['chrisflav', 'github-actions', 'mathlib-dependent-issues'] adamtopaz
assignee:adamtopaz
5-23136
5 days ago
8-33458
8 days ago
8-34186
8 days
37542 martinwintermath
author:martinwintermath
chore(LinearAlgebra/Dual): deprecate `Module.dualPairing` - deprecate `Module.dualPairing` (and associated lemmas) since merely synonym for identity (essentially always easier to just use `.id`, see next bullet point) - remove use of deprecated lemmas - remove from file doc-string - generalize `dualPairing_nondegenerate` + rename to `id_nondegenerate` - add accompanying `id_separatingLeft`, `id_separatingRight` and versions for `Dual.eval` (similar lemmas have also been proposed in #34487) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
46/24 Mathlib/Analysis/Convex/Cone/TensorProduct.lean,Mathlib/Geometry/Convex/Cone/TensorProduct.lean,Mathlib/LinearAlgebra/Dual/Defs.lean,Mathlib/LinearAlgebra/Dual/Lemmas.lean 4 3 ['artie2000', 'github-actions'] dagurtomas
assignee:dagurtomas
5-23134
5 days ago
13-59100
13 days ago
13-58574
13 days
37617 harahu
author:harahu
doc(FieldTheory): avoid lazy continuation lines We resolve the ambiguity inherent in lazy (un-indented) list item continuation lines by either indenting them or separating them by inserting a newline in the cases where the item continuation was a mistake. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
33/31 Mathlib/FieldTheory/CardinalEmb.lean,Mathlib/FieldTheory/Finite/Extension.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/FieldTheory/IsAlgClosed/Basic.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/FieldTheory/PolynomialGaloisGroup.lean,Mathlib/FieldTheory/RatFunc/Basic.lean 7 1 ['github-actions'] dagurtomas
assignee:dagurtomas
5-23133
5 days ago
12-41091
12 days ago
12-40565
12 days
37871 JJYYY-JJY
author:JJYYY-JJY
feat: support intros and simple rintro in introMerge * Extend the `introMerge` linter to handle `intros` and a safe subset of `rintro` tactics, allowing it to suggest merging a wider variety of adjacent introduction tactics. * Introduce helper functions to normalize supported `rcases` and `rintro` patterns into equivalent `intro` arguments for consistent analysis. * Add tests to verify the correct merging of mixed introduction tactics and ensure intervening tactics prevent merging. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta new-contributor 101/9 Mathlib/Dynamics/OmegaLimit.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,MathlibTest/TacticAnalysis.lean 3 3 ['copilot-pull-request-reviewer', 'github-actions'] dwrensha
assignee:dwrensha
5-23129
5 days ago
6-14140
6 days ago
6-16851
6 days
37846 grunweg
author:grunweg
fix(positivity): still prove non-negativity in the `Nat.cast` extension if positivity fails --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta maintainer-merge 11/2 Mathlib/Tactic/Positivity/Basic.lean,MathlibTest/positivity.lean 2 4 ['dwrensha', 'github-actions'] dwrensha
assignee:dwrensha
5-20970
5 days ago
5-69590
5 days ago
5-69066
5 days
36764 euprunin
author:euprunin
chore: golf using `grind` The goal of this PR is to decrease the number of times lemmas are called explicitly. Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (differences <30 ms considered measurement noise): * `DirectSum.lequivCongrLeft_lof`: unchanged 🎉 * `AnalyticOnNhd.preimage_mem_codiscreteWithin`: unchanged 🎉 * `mem_permsOfList_of_mem`: unchanged 🎉 * `PNat.mod_le`: unchanged 🎉 * `Computation.map_parallel`: unchanged 🎉 * `Sigma.curry_update`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 11/41 Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Analysis/Analytic/IsolatedZeros.lean,Mathlib/Data/Fintype/Perm.lean,Mathlib/Data/PNat/Basic.lean,Mathlib/Data/Seq/Parallel.lean,Mathlib/Data/Sigma/Basic.lean 6 13 ['chenson2018', 'euprunin', 'github-actions', 'mathlib-merge-conflicts'] nobody
5-345
5 days ago
5-405
4 days ago
29-58058
29 days
37055 euprunin
author:euprunin
chore: golf using `grind` The goal of this PR is to decrease the number of times lemmas are called explicitly. Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (differences <30 ms considered measurement noise): * `OreLocalization.smul'_char`: unchanged 🎉 * `Equiv.Perm.cycleOf_mem_cycleFactorsFinset_iff`: unchanged 🎉 * `StrictMono.ite'`: unchanged 🎉 * `Mathlib.Meta.NormNum.isInt_ediv`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 10/29 Mathlib/GroupTheory/OreLocalization/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Tactic/NormNum/DivMod.lean 4 11 ['chenson2018', 'euprunin', 'github-actions'] nobody
4-84385
4 days ago
4-84446
4 days ago
22-81504
22 days
36693 euprunin
author:euprunin
chore: golf using `grind` The goal of this PR is to decrease the number of times lemmas are called explicitly. Any decrease in compilation time is a welcome side effect, although it is not a primary objective. Trace profiling results (differences <30 ms considered measurement noise): * `Equiv.Perm.ofSubtype_swap_eq`: unchanged 🎉 * `Filter.hasBasis_biInf_of_directed'`: unchanged 🎉 Profiled using `set_option trace.profiler true in`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 2/10 Mathlib/GroupTheory/Perm/Support.lean 1 4 ['artie2000', 'chenson2018', 'euprunin', 'github-actions'] nobody
4-84349
4 days ago
31-40517
31 days ago
31-39991
31 days
37803 tb65536
author:tb65536
feat(RingTheory/LocalRing/FlatLength): lengths along flat extensions of local rings This PR adds a new file with results relating lengths along flat extensions of local rings. --- - [x] depends on: #37104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
113/0 Mathlib.lean,Mathlib/RingTheory/LocalRing/FlatLength.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
4-77987
4 days ago
4-77989
4 days ago
4-77465
4 days
37930 vlad902
author:vlad902
chore(SimpleGraph): move `cycleGraph` to its own file PR #34797 re-defined `cycleGraph` independent of `circulantGraph`. Now move the definition of `cycleGraph` to its own file so that the definition can be used without importing the algebra hierarchy. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 142/117 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Circulant.lean,Mathlib/Combinatorics/SimpleGraph/Cycle.lean 3 1 ['github-actions'] nobody
4-67068
4 days ago
4-67123
4 days ago
4-66984
4 days
37584 kennethgoodman
author:kennethgoodman
feat(Data/Nat/Fib): formalize Lamé's theorem ## Summary Formalize [Lamé's theorem](https://en.wikipedia.org/wiki/Lam%C3%A9%27s_theorem) (1844), the founding result of computational complexity theory. **Lamé's Theorem:** If the Euclidean algorithm on inputs `(a, b)` with `b ≤ a` takes `n + 1` division steps, then `b ≥ fib(n + 1)` and `a ≥ fib(n + 2)`. ### New definitions - `Nat.euclidSteps`: counts the number of division steps in the Euclidean algorithm on natural number inputs. ### New theorems - `Nat.fib_le_of_euclidSteps`: the main Lamé bound — Fibonacci lower bound on inputs given a step count. - `Nat.euclidSteps_le_of_lt_fib`: the contrapositive — step count upper bound given a Fibonacci bound on the smaller input. - `Nat.add_mod_le`: helper lemma that `b + a % b ≤ a` when `b ≤ a` and `0 < b`. ### Proof strategy Induction on `n`, tracking both elements of the pair. The key insight is that each Euclidean step replaces `(a, b)` with `(b, a % b)`, and since `a ≥ b + a % b` (because `a / b ≥ 1`), the Fibonacci recurrence `fib(n+3) = fib(n+2) + fib(n+1)` matches the structure of the algorithm. ### References - Gabriel Lamé, *Note sur la limite du nombre des divisions dans la recherche du plus grand commun diviseur entre deux nombres entiers*, Comptes rendus de l'Académie des sciences, 1844. --- ### AI usage disclosure Per the [Mathlib AI guidelines](https://leanprover-community.github.io/contribute/index.html#use-of-ai): Claude Code (Claude Opus 4.6) was used to assist with writing the Lean 4 proof code, fixing tactic errors, and drafting this PR description. The mathematical proof (induction on step count, tracking both pair elements through the Fibonacci recurrence) was designed by hand and verified on paper before formalization. I have reviewed and understand every line of the resulting Lean code and can explain all proof steps. --- - [x] builds cleanly (`lake build Mathlib.Data.Nat.Fib.Lame`) - [x] no `sorry` - [x] lines ≤ 100 characters, no trailing whitespace - [x] `autoImplicit false` - [x] docstrings on all public declarations new-contributor LLM-generated 121/0 Mathlib.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/Fib/Basic.lean,Mathlib/Data/Nat/Fib/Lame.lean,docs/1000.yaml 5 24 ['euprunin', 'github-actions', 'kennethgoodman', 'vihdzp', 'wwylele'] nobody
4-63267
4 days ago
4-66154
4 days ago
12-21593
12 days
31662 edwin1729
author:edwin1729
feat(Topology/Order): topological basis of scott topology on Complete… …PartialOrder --- [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.3E.20Algebraic.20complete.20partial.20order.20and.20domain.20theory/with/536359313) for this PR. (2/5) PRs in domain theory, proving that scott topologies over Algebraic DCPOs (`CompletePartialOrder`) are sober. The main reference is [Renata, Duality in Domain Theory](https://alyata.github.io/documents/duality_domain_theory.pdf). But the statements can also be found in the canonical text [Abramsky and Jung](https://www.cs.ox.ac.uk/people/samson.abramsky/handbook.pdf) This first PR proves two prerequisites, namely: - the specialization order induced by the scott topology corresponds to the existing order of the DCPO. Prop 3.1.5 in [Duality in Domain Theory](https://alyata.github.io/documents/duality_domain_theory.pdf) and Prop 2.3.2(1) in [Abramsky and Jung](https://www.cs.ox.ac.uk/people/samson.abramsky/handbook.pdf) - the upward closures of compact elements of the DCPO form a topological basis for the Scott Topology. Prop 3.5.2 in [Duality in Domain Theory](https://alyata.github.io/documents/duality_domain_theory.pdf) and Prop 2.3.6(2) in [Abramsky and Jung](https://www.cs.ox.ac.uk/people/samson.abramsky/handbook.pdf) - [x] depends on: #33061 **The next PR is here:** #31670 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 235/1 Mathlib.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/ScottTopologyDCPO.lean,docs/references.bib 4 67 ['b-mehta', 'edwin1729', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'plp127'] urkud
assignee:urkud
4-53337
4 days ago
39-64376
39 days ago
46-30167
46 days
37904 maddycrim
author:maddycrim
feat(LinearAlgebra/PiTensorProduct/PiEquiv): Tensor Product and Direct Product Commute for Finitely Presented Modules From FLT Project. Main definitions: * `tensorPi_equiv_piTensor'` : `M ⊗[R] (Π i, N i) ≃ₗ[R] Π i, (M ⊗[R] N i)` for finite free modules * `tensorPi_equiv_piTensor` : the same but for finitely-presented modules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
264/0 Mathlib.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/LinearAlgebra/PiTensorProduct/PiEquiv.lean 4 5 ['github-actions', 'maddycrim', 'themathqueen'] nobody
4-46258
4 days ago
5-46197
5 days ago
5-47157
5 days
37911 SnirBroshi
author:SnirBroshi
chore(Order/Closure): generalize from `PartialOrder` to `Preorder` where possible Rearranges declarations to a new `Preorder` section above the existing `PartialOrder` section. --- Only reordered existing decls, and modified `variable` statements. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 41/36 Mathlib/Order/Closure.lean 1 4 ['github-actions', 'leanprover-radar', 'themathqueen'] nobody
4-44471
4 days ago
5-29589
5 days ago
5-29063
5 days
37700 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Maps): add `Iso.induceIso` Similar to `induceHom` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 29/0 Mathlib/Combinatorics/SimpleGraph/Maps.lean 1 3 ['github-actions', 'vlad902'] nobody
4-43298
4 days ago
4-43356
4 days ago
9-55147
9 days
37640 IvanRenison
author:IvanRenison
feat(Order/RelIso): add lemmas about congruence with `relIso` --- In #37598 I realized this is missing [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 33/1 Mathlib/Order/RelIso/Basic.lean 1 10 ['IvanRenison', 'Komyyy', 'github-actions'] Komyyy
assignee:Komyyy
4-43269
4 days ago
4-43322
4 days ago
10-45018
10 days
37774 weisbrja
author:weisbrja
fix: change variables in `bicompl` to `Sort*` and add missing theorem mentioned in `bicompl` docs [#mathlib4 > Why does Mathlib use Type* instead of Sort* in some places?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Why.20does.20Mathlib.20use.20Type.2A.20instead.20of.20Sort.2A.20in.20some.20places.3F/with/583882342) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic 6/1 Mathlib/Logic/Function/Basic.lean 1 7 ['github-actions', 'kbuzzard', 'leanprover-radar', 'weisbrja'] nobody
4-40650
4 days ago
4-50117
4 days ago
8-35347
8 days
36018 wwylele
author:wwylele
feat(LinearAlgebra/AffineSpace): shifting a subspace towards a point This is preparing to calculate the volume of a simplex by integrating the cross-section created by shifting the base plane. Part of #34826. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
297/0 Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Shift.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean 3 7 ['copilot-pull-request-reviewer', 'github-actions', 'mathlib-bors'] kim-em
assignee:kim-em
4-30896
4 days ago
10-56977
10 days ago
35-26926
35 days
37928 AlexeyMilovanov
author:AlexeyMilovanov
refactor(Computability.Encoding): unbundle Γ and remove FinEncoding This PR unbundles the alphabet `Γ` from the `Encoding` structure and completely removes `FinEncoding`. `Encoding`: The alphabet `Γ` is now an explicit parameter: `structure Encoding (α : Type u) (Γ : Type v)`. `FinEncoding`: Removed. Finiteness is now handled via standard typeclasses (e.g., `[Fintype Γ] (e : Encoding α Γ)`). Combinators: Functions like `finEncodingPair` are simplified to `encodingPair`, dropping the `fin` prefix and `[Fintype]` requirements where no longer needed. Downstream: Mechanically updated `Mathlib.Computability` and `Mathlib.ModelTheory` to pass the explicit `Γ` and use `[Fintype Γ]` where `FinEncoding` was previously required. new-contributor 30/67 Mathlib/Computability/Encoding.lean,Mathlib/ModelTheory/Encoding.lean 2 5 ['github-actions', 'vihdzp'] nobody
4-30334
4 days ago
4-75685
4 days ago
4-75159
4 days
36553 j-loreaux
author:j-loreaux
feat: add IsMulCommutative instances for directed families of commutative subobjects --- - [ ] depends on: #36549 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
169/1 Mathlib/Algebra/Algebra/NonUnitalSubalgebra.lean,Mathlib/Algebra/Algebra/Subalgebra/Directed.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/Subsemigroup/Membership.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Star/NonUnitalSubalgebra.lean,Mathlib/Algebra/Star/Subalgebra.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean 11 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] kim-em
assignee:kim-em
4-22821
4 days ago
14-48637
14 days ago
14-48315
14 days
37358 grunweg
author:grunweg
chore(Geometry/Manifold): don't expose definitions depending on choice Some definitions in `Immersion.lean` still depend on choice, but need to be exposed for subsequent instances using their definition. We leave them alone for now. Also make not exposing definition the default in `LocalDiffeomorph.lean`; four definitions have useful definitional equalities, the others do not. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry tech debt 12/12 Mathlib/Geometry/Manifold/Immersion.lean,Mathlib/Geometry/Manifold/IsManifold/InteriorBoundary.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean,Mathlib/Geometry/Manifold/VectorBundle/Basic.lean 4 1 ['github-actions'] PatrickMassot
assignee:PatrickMassot
4-22819
4 days ago
5-55013
5 days ago
5-54860
5 days
37522 matthewjasper
author:matthewjasper
chore: adjust Module.Finite instance priority Make instances that are rarely going to be helpful lower priority. Increase the priority of `FiniteDimensional.complexToReal`, because it's more likely correct than the other priority 100 `Module.Finite` instances. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
6/4 Mathlib/LinearAlgebra/Complex/FiniteDimensional.lean,Mathlib/LinearAlgebra/Dimension/Free.lean,Mathlib/LinearAlgebra/Dual/Lemmas.lean 3 3 ['github-actions', 'grunweg', 'leanprover-radar'] eric-wieser
assignee:eric-wieser
4-22819
4 days ago
14-36315
14 days ago
14-35789
14 days
37580 ldct
author:ldct
chore: list hints in order of priority List hints in order of priority so it's easier to tell what order `hint` tries them in. In a dependent PR I intend to add a tactic to this list. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 9/9 Mathlib/Tactic/Common.lean,MathlibTest/hintAll.lean 2 3 ['github-actions', 'grunweg', 'ldct'] JovanGerb
assignee:JovanGerb
4-22818
4 days ago
5-22533
5 days ago
5-29086
5 days
37941 NoahW314
author:NoahW314
feat(RingTheory/MvPolynomial/Homogeneous): add `homogeneousComponent` lemma Add a lemma about the `support` of the `(weighted)HomogeneousComponent` of a `MvPolynomial`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 10/0 Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean 2 1 ['github-actions'] nobody
4-19221
4 days ago
4-19293
4 days ago
4-18767
4 days
36385 CoolRmal
author:CoolRmal
feat: a sequential and countably compact space is sequentially compact The main result proved in this PR is that a sequential and countably compact space is sequentially compact. We also prove some lemmas: 1. If `f` is an embedding, then `A` is sequentially compact iff `f '' A` is sequentially compact. This result is then used to show the equivalence of `IsSeqCompact A` and `SeqCompactSpace A`. 2. If `f` is inducing, then `A` is countably compact iff `f '' A` is countably compact. This result is then used to show the equivalence of `IsCountablyCompact A` and `CountablyCompactSpace A`. 3. If `f` converges and `g` is another function such that `g x ∈ closure {f x}` for all `x`, then `g` also converges. --- - [x] depends on: #36174 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 146/13 Mathlib/Topology/Compactness/CountablyCompact.lean,Mathlib/Topology/Inseparable.lean,docs/references.bib 3 33 ['ADedecker', 'CoolRmal', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'scholzhannah'] PatrickMassot
assignee:PatrickMassot
4-7507
4 days ago
4-7565
4 days ago
15-83229
15 days
37886 LLaurance
author:LLaurance
chore(Algebra): shorten proofs by removing lemmas used in simp --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
6/10 Mathlib/Algebra/Free.lean,Mathlib/Algebra/FreeAlgebra.lean 2 3 ['LLaurance', 'github-actions', 'themathqueen'] nobody
4-4210
4 days ago
5-60309
5 days ago
5-59783
5 days
36328 Multramate
author:Multramate
feat(AlgebraicGeometry/EllipticCurve): improve API for maps and base changes Dot notation for concrete Weierstrass curves (`Affine`/`Jacobian`/`Projective`) does not quite work on `W : WeierstrassCurve F` even though they're all abbreviations of `WeierstrassCurve`, which is annoying for functions that return `WeierstrassCurve`s (currently just `map`, `baseChange`, and `variableChange`). For instance, for an `A : Affine F`, the expression `A.baseChange K` is a `WeierstrassCurve K` rather than an `Affine K`, so `(A.baseChange K).polynomial` will not work since `polynomial` is a function of `Affine K` rather than `WeierstrassCurve K`; instead we have to do `(A.baseChange K).toAffine.polynomial`, which is wordy. This PR introduces abbreviations `Affine/Jacobian/Projective.map/baseChange` to get around this, and introduces scoped notations `W/K`, where the slashes are given by `\textf`. The notation `W⟮K⟯` for `(W.baseChange K)Point` seems to be useless so far and can now be replaced by `(W/K).Point`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 295/299 Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/DivisionPolynomial/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Basic.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Formula.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Reduction.lean,Mathlib/AlgebraicGeometry/EllipticCurve/VariableChange.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Weierstrass.lean 13 2 ['github-actions', 'joelriou'] joelriou
assignee:joelriou
3-76272
3 days ago
3-76330
3 days ago
39-32646
39 days
37506 wwylele
author:wwylele
feat(Analysis/InnerProductSpace): singleton basis for 1d space This was brought up in #36462. Similar to existing `FiniteDimensional.basisSingleton`, this provides a OrthonormalBasis version. Also adds simp lemma for `∀ (i j : ι), P i j` for subsingleton `ι`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis maintainer-merge 49/4 Mathlib/Analysis/InnerProductSpace/Orthonormal.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Diam.lean,Mathlib/Logic/Basic.lean 5 36 ['eric-wieser', 'github-actions', 'leanprover-radar', 'loefflerd', 'themathqueen', 'wwylele'] loefflerd
assignee:loefflerd
3-64034
3 days ago
10-65072
10 days ago
14-24797
14 days
37950 martinwintermath
author:martinwintermath
feat(Algebra/Order/Hom): add lemmas about order and `MonoidHomClass` Add * `map_inv_le_map_inv_iff_map_le_map` (and additive version) proving `f x⁻¹ ≤ g x⁻¹ ↔ g x ≤ f x` in a setting where inverses only exists in the domain of `f` and `g`. * `MonoidHom.ext_iff_le` (and additive version) proving `f = g ↔ (∀ x, f x ≤ g x)`, i.e. an ordered analogue of function extensionality. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
24/0 Mathlib/Algebra/Order/Hom/Monoid.lean 1 5 ['SnirBroshi', 'github-actions', 'themathqueen'] nobody
3-60504
3 days ago
3-62171
3 days ago
3-64427
3 days
37955 artie2000
author:artie2000
feat(Algebra/Polynomial): lemmas about `modByMonic` * Add various small lemmas about `Polynomial.modByMonic` * Remove unneccesary commutativity assumption on `Polynomial.aeval_eq_zero_of_dvd_aeval_eq_zero` by proving `Polynomial.aeval_dvd` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
20/6 Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/RingDivision.lean,Mathlib/FieldTheory/Minpoly/Basic.lean,Mathlib/RingTheory/Polynomial/IsIntegral.lean 5 1 ['github-actions'] nobody
3-57517
3 days ago
3-57577
3 days ago
3-57899
3 days
37952 JovanGerb
author:JovanGerb
feat(FastInstance): suggest using `inferInstance` when possible It is easy to accidentally write `fast_instance%` when there already exists an instance. This PR adds a linter against that. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 35/39 Mathlib/Algebra/Field/Subfield/Defs.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/RingTheory/NonUnitalSubring/Defs.lean,Mathlib/Tactic/FastInstance.lean,MathlibTest/fast_instance.lean 7 1 ['github-actions'] nobody
3-51219
3 days ago
3-51278
3 days ago
3-55447
3 days
37720 cjrl
author:cjrl
feat(Data/Fintype/Card): existsUnique_notMem_image_of_injective_of_card_succ This pull requests adds a small theorem `existsUnique_notMem_image_of_injective_of_card_succ` to `Mathlib/Data/Fintype/Card` that says given an injective map f : α → β such that β has cardinality one more than α, there exists a unique element of β not in the image of f. This can be viewed as going in the opposite direction of `card_lt_of_injective_of_notMem`. This little fact is needed for our Latin Square PR #36698. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor t-set-theory 15/0 Mathlib/Data/Fintype/Card.lean 1 6 ['IvanRenison', 'cjrl', 'github-actions'] nobody
3-43638
3 days ago
3-43696
3 days ago
9-10621
9 days
37190 cjrl
author:cjrl
feat(Combinatorics): Set-Valued Pigeonhole Principle This PR contributes two theorems to combinatorics: - `exists_lt_card_cover_of_card_biUnion_lt_card` is a set-valued version of the pigeonhole principle. - `sum_card_eq_sum_card_cover_biUnion` is a set theoretic corollary of a double counting result proved for bipartite graphs (`Finset.sum_card_bipartiteAbove_eq_sum_card_bipartiteBelow`). This was needed to prove the above pigeonhole principle. The motivation for these results is our Latin Square PR #36698. These results were proved in less general terms in that PR, but are independent of Latin Square considerations and so we have generalized and moved them into more relevant files. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 38/0 Mathlib/Combinatorics/Enumerative/DoubleCounting.lean,Mathlib/Combinatorics/Pigeonhole.lean 2 16 ['IvanRenison', 'cjrl', 'ghseeli', 'github-actions', 'j-loreaux', 'vlad902'] nobody
3-42830
3 days ago
3-42881
3 days ago
19-13154
19 days
37956 artie2000
author:artie2000
feat(Algebra/Polynomial): lemmas about polynomial degree * Add various small lemmas about polynomial degree --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
29/2 Mathlib/Algebra/Polynomial/Degree/Defs.lean,Mathlib/Algebra/Polynomial/Degree/Operations.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Monic.lean,MathlibTest/hintAll.lean 5 4 ['github-actions', 'vihdzp'] nobody
3-32155
3 days ago
3-50195
3 days ago
3-51470
3 days
37670 vihdzp
author:vihdzp
feat: miscellaneous results on `DirSupClosed` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order large-import 80/7 Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/DirSupClosed.lean 2 10 ['Komyyy', 'github-actions', 'mathlib-splicebot', 'vihdzp'] Komyyy
assignee:Komyyy
3-30886
3 days ago
4-33364
4 days ago
9-71225
9 days
37960 DanielJHorton
author:DanielJHorton
doc: typo in docstring for alternatingMapToDual t-algebra easy new-contributor
label:t-algebra$
1/1 Mathlib/LinearAlgebra/ExteriorPower/Pairing.lean 1 2 ['github-actions'] nobody
3-29467
3 days ago
3-46487
3 days ago
3-45961
3 days
37967 vihdzp
author:vihdzp
chore: add `simp` to `aleph0_lt_univ`, etc Used in the CGT repo. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory easy 5/1 Mathlib/SetTheory/Ordinal/Univ.lean 1 2 ['github-actions'] nobody
3-24086
3 days ago
3-24063
3 days ago
3-23725
3 days
28685 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): prove the minimal-degree version of the Erdős-Stone theorem Proves the minimal degree-version of the Erdős-Stone theorem: If `G` has a minimal degree of at least `(1 - 1 / r + o(1)) * card V`, then `G` contains a copy of a `completeEquipartiteGraph` in `r + 1` parts each of size `t`. The double-counting construction from the proof is available in `namespace ErdosStone`. --- - [x] depends on: #25843 - [x] depends on: #27597 - [x] depends on: #27599 - [x] depends on: #28443 - [x] depends on: #28445 - [x] depends on: #28446 - [x] depends on: #28447 This is the first of several pull requests towards the full Erdős-Stone(-Simonovits) theorem, hence the name of the file. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 323/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean 2 6 ['YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] awainverse and b-mehta
assignee:b-mehta assignee:awainverse
3-22738
3 days ago
45-2713
45 days ago
45-2233
45 days
34805 DavidLedvinka
author:DavidLedvinka
feat(Tactic): generalize ofScientific NormNum extension to `DivisionSemiring` Co-authored-by: @hrmacbeth t-meta 68/20 Mathlib/Tactic/NormNum/Inv.lean,Mathlib/Tactic/NormNum/OfScientific.lean,MathlibTest/norm_num.lean 3 26 ['DavidLedvinka', 'JovanGerb', 'b-mehta', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'thorimur'] thorimur
assignee:thorimur
3-22736
3 days ago
25-40185
25 days ago
45-81071
45 days
35043 winstonyin
author:winstonyin
refactor(Analysis/ODE): restate existence and uniqueness using integral curve API * Create `Mathlib/Analysis/ODE/ExistUnique.lean` to collect existence and uniqueness results for ODEs stated in terms of the integral curve API (`IsIntegralCurve`, `IsIntegralCurveOn`, `IsIntegralCurveAt`). * Move and restate the Picard-Lindelöf existence theorems from `PicardLindelof.lean` and the $C^1$ vector field results using `IsIntegralCurveOn`/`IsIntegralCurveAt` instead of raw `HasDerivWithinAt`/`HasDerivAt`. * Move and restate the Grönwall-based uniqueness theorems from `Gronwall.lean` using `IsIntegralCurveOn` with half-open intervals (`Ico`/`Ioc`) instead of `HasDerivWithinAt … (Ici t)`/`HasDerivWithinAt … (Iic t)`. * Rename uniqueness theorems to use dot notation on the integral curve types (e.g. `ODE_solution_unique_of_mem_Icc_right` becomes `IsIntegralCurveOn.eqOn_Icc_right`). * Add `IsIntegralCurveOn.eqOn_inter`: if two integral curves on preconnected sets `I` and `J` agree at a point in both sets, they agree on `I ∩ J`. * Add deprecation aliases for all renamed lemmas. - [ ] depends on: #29186 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 421/308 Mathlib.lean,Mathlib/Analysis/ODE/ExistUnique.lean,Mathlib/Analysis/ODE/Gronwall.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,docs/1000.yaml,docs/undergrad.yaml 7 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] ADedecker
assignee:ADedecker
3-22735
3 days ago
14-32980
14 days ago
19-5792
19 days
36334 Multramate
author:Multramate
feat(AlgebraicGeometry/EllipticCurve): add notation and pretty printer for points Co-authored-by: Kenny Lau --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry t-meta 41/0 Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Jacobian/Point.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Projective/Point.lean 3 11 ['CBirkbeck', 'Multramate', 'erdOne', 'github-actions', 'riccardobrasca'] adamtopaz
assignee:adamtopaz
3-22734
3 days ago
39-39790
39 days ago
39-39264
39 days
37214 Kha
author:Kha
perf(Tactic/Abel): use `mkAuxTheorem` for proof term Removes some duplication from types of nested proofs t-meta 4/1 Mathlib/Tactic/Abel.lean 1 5 ['JovanGerb', 'Kha', 'github-actions', 'leanprover-radar'] JovanGerb
assignee:JovanGerb
3-22733
3 days ago
20-58119
20 days ago
20-57593
20 days
37942 yanghangAI
author:yanghangAI
feat(MeasureTheory/Integral/IntervalIntegral/Fubini): Fubini swap for two iterated interval integrals ## Summary Adds `MeasureTheory.intervalIntegral_swap_continuous`: Fubini's theorem for two iterated `intervalIntegral`s on `ℝ` under joint continuity of the integrand. ```lean lemma intervalIntegral_swap_continuous {f : ℝ → ℝ → ℝ} (hf : Continuous (Function.uncurry f)) (a b c d : ℝ) : (∫ y in c..d, ∫ x in a..b, f x y) = (∫ x in a..b, ∫ y in c..d, f x y) ``` ## Motivation Mathlib already provides: - `MeasureTheory.integral_integral_swap` — swaps two full integrals under product integrability - `MeasureTheory.intervalIntegral_integral_swap` — swaps one interval integral with one full integral Neither directly swaps two iterated interval integrals, which is a common idiom when reducing two-dimensional integrals to iterated one-dimensional ones (for example when reducing a double integral over a rectangle to iterated 1D integrals in calculus proofs). This PR fills that gap. ## Proof The proof handles all four orientation combinations (`a ≤ b` vs `b ≤ a`, `c ≤ d` vs `d ≤ c`). It reduces to the ordered case via `intervalIntegral.integral_symm` / `intervalIntegral.integral_neg`, then converts both interval integrals to a single `setIntegral` over `Set.Icc a b ×ˢ Set.Icc c d` via `setIntegral_prod` and `setIntegral_prod_swap`. Integrability on the compact product rectangle comes from `ContinuousOn.integrableOn_compact`. ## AI assistance disclosure This PR was prepared with help from [Claude Code](https://claude.com/claude-code) (Anthropic's Claude Opus 4.6). Specifically, Claude Code: - drafted the initial proof structure and the orientation case split; - located the relevant Mathlib lemmas (`setIntegral_prod`, `setIntegral_prod_swap`, `ContinuousOn.integrableOn_compact`, `Ioc_ae_eq_Icc`) and wired them together; - iterated on compiler errors until the proof built cleanly under `lake build`, `lake exe shake`, and `lake exe lint-style`. All mathematical content was reviewed by me before committing, and I verified the final version builds cleanly in a fresh Mathlib tree. I am responsible for the correctness and style of this PR and will handle any review feedback myself. Happy to discuss the workflow with maintainers if there's interest or concern. ## Zulip I posted in \`#mathlib4 > general\` asking if this was duplicate work — no responses yet, proceeding since it's a small standalone helper. Happy to close if this conflicts with anyone's in-flight branch. t-measure-probability new-contributor LLM-generated 47/0 Mathlib/MeasureTheory/Integral/Prod.lean 1 4 ['CoolRmal', 'github-actions', 'wwylele'] EtienneC30
assignee:EtienneC30
3-22728
3 days ago
4-14368
4 days ago
4-13842
4 days
37965 vihdzp
author:vihdzp
feat: an infinite type has a "pathological relation" In the sense that `{y | ¬ r x y}` and `{x | r x y}` are both of cardinal `< #α`. --- Truthfully I'm not convinced that we need to have this `exists_pathological_rel` theorem. This property is satisfied by any well-ordering of minimal order type, and the theorems `mk_Iio_lt` and `mk_Iic_lt` already prove as much. Though I guess it can still be useful if the type already has an existing `<` relation. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 33/19 Counterexamples/Phillips.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean 3 10 ['eric-wieser', 'github-actions', 'vihdzp'] nobody
3-13298
3 days ago
3-15211
3 days ago
3-19876
3 days
37625 slavanaprienko
author:slavanaprienko
feat(LinearAlgebra/Matrix/Charpoly): general coefficient formula as sum of principal minors This PR adds a general formula for the coefficients of `det(1 + X • M)` as sums of principal minors, generalizing the existing `coeff_det_one_add_X_smul_one` (k=1, trace) and `det_eq_sign_charpoly_coeff` (k=n, determinant). It also derives the corresponding formula for the coefficients of the characteristic polynomial via `charpolyRev`. New results: - `det_piecewise_one_eq_submatrix_det`: relates piecewise-with-identity to principal submatrix determinants - `coeff_det_one_add_X_smul_eq_sum_minors`: the k-th coefficient of `det(1 + X • M)` equals the sum of k×k principal minors - `charpoly_coeff_eq_sum_minors`: coefficients of the characteristic polynomial as signed sums of principal minors --- t-algebra new-contributor
label:t-algebra$
105/1 Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean 1 24 ['eric-wieser', 'github-actions', 'slavanaprienko', 'wwylele'] nobody
3-13100
3 days ago
11-11129
11 days ago
12-26091
12 days
37973 vihdzp
author:vihdzp
chore(Order/Interval/Set/InitialSeg): clean up file We do various small golfs, remove unneeded namespaces, and deprecate some confusing names. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 28/37 Mathlib/Order/Interval/Set/InitialSeg.lean 1 1 ['github-actions'] nobody
3-10008
3 days ago
3-10517
3 days ago
3-9991
3 days
37678 vihdzp
author:vihdzp
chore(Dynamics/FixedPoints/Defs): create `Defs` file --- I got a large import warning on another PR for simply importing the definition `Function.fixedPoints`, which I found rather silly. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics tech debt maintainer-merge 67/44 Mathlib.lean,Mathlib/Dynamics/FixedPoints/Basic.lean,Mathlib/Dynamics/FixedPoints/Defs.lean,Mathlib/Logic/Function/Defs.lean 4 2 ['Ruben-VandeVelde', 'github-actions'] urkud
assignee:urkud
2-81121
2 days ago
10-31409
10 days ago
10-31461
10 days
36965 vihdzp
author:vihdzp
chore(SetTheory/Cardinal): tweak `succ` lemmas We leave the `SuccOrder` instance unexposed. It doesn't have any particularly good def-eqs, it's simply defined as the infimum of all larger cardinals. We also golf some surrounding theorems. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory maintainer-merge 54/61 Mathlib/LinearAlgebra/Dimension/Basic.lean,Mathlib/Order/SuccPred/CompleteLinearOrder.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Ordinal/Basic.lean 5 4 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts'] b-mehta
assignee:b-mehta
2-77171
2 days ago
3-8628
3 days ago
25-2312
25 days
37138 dtumad
author:dtumad
feat(Data/FinEnum): instances for standard signed and unsigned integer types Adds `FinEnum` instances for `UIntN`/`IntN` for various `N`, and for platform sized integers. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor maintainer-merge 45/0 Mathlib/Data/FinEnum.lean 1 11 ['dtumad', 'github-actions', 'joneugster', 'linesthatinterlace'] joneugster
assignee:joneugster
2-75543
2 days ago
15-57328
15 days ago
20-6635
20 days
37389 martinwintermath
author:martinwintermath
chore(LinearAlgebra/SesquilinearForm): generalize `orthogonalBilin` in order to simplify definition of `orthogonal` - generalize `Submodule.orthogonalBilin` to `CommSemiring` and `AddCommMonoid`, and to general sesquilinear forms with inputs from different modules. This enables subsequent changes. - redefine `BilinForm.orthogonal` in terms of `orthogonalBilin`. - reorder arguments of `Submodule.orthogonalBilin` to match other instances of duality across mathlib. For comparison Before ```lean4 Submodule.orthogonalBilin.{u_1, u_2, u_5, u_6} {R : Type u_1} {R₁ : Type u_2} {M : Type u_5} {M₁ : Type u_6} [CommRing R] [CommRing R₁] [AddCommGroup M₁] [Module R₁ M₁] [AddCommGroup M] [Module R M] {I₁ I₂ : R₁ →+* R} (N : Submodule R₁ M₁) (B : M₁ →ₛₗ[I₁] M₁ →ₛₗ[I₂] M) : Submodule R₁ M₁ ``` After ```lean4 Submodule.orthogonalBilin.{u_1, u_2, u_3, u_5, u_6, u_7} {R : Type u_1} {R₁ : Type u_2} {R₂ : Type u_3} {M : Type u_5} {M₁ : Type u_6} {M₂ : Type u_7} [CommSemiring R] [CommSemiring R₁] [CommSemiring R₂] [AddCommMonoid M] [Module R M] [AddCommMonoid M₁] [Module R₁ M₁] [AddCommMonoid M₂] [Module R₂ M₂] {I₁ : R₁ →+* R} {I₂ : R₂ →+* R} (B : M₁ →ₛₗ[I₁] M₂ →ₛₗ[I₂] M) (N : Submodule R₁ M₁) : Submodule R₂ M₂ ``` A few fixes in other files have been necessary as well. This is an extract from #37381. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
29/21 Mathlib/Algebra/Lie/InvariantForm.lean,Mathlib/LinearAlgebra/BilinearForm/Orthogonal.lean,Mathlib/LinearAlgebra/QuadraticForm/Basic.lean,Mathlib/LinearAlgebra/RootSystem/Finite/Nondegenerate.lean,Mathlib/LinearAlgebra/SesquilinearForm/Basic.lean 5 8 ['eric-wieser', 'github-actions', 'martinwintermath', 'themathqueen', 'vihdzp'] ocfnash
assignee:ocfnash
2-72591
2 days ago
3-45101
3 days ago
16-34856
16 days
37995 grunweg
author:grunweg
doc(1000.yaml): note Koebe 1/4 and Sard's theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation easy 7/2 docs/1000.yaml 1 1 ['github-actions'] nobody
2-70914
2 days ago
2-70978
2 days ago
2-71040
2 days
36954 FMLJohn
author:FMLJohn
feat(Topology/ClosedBases): `TopologicalSpace.IsClosedBasis` and `TopologicalSpace.IsClosedSubbasis s` In this pull request, I have defined closed bases and closed subbases of topologies, and proved some basic properties of them. ## Main definitions * `TopologicalSpace.IsClosedBasis s`: A closed basis of a topological space `α` is a collection of closed sets `s : Set (Set α)` such that every closed subset of `α` can be written as an intersection of elements of `s`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 117/0 Mathlib.lean,Mathlib/Topology/Bases.lean,Mathlib/Topology/ClosedBases.lean 3 19 ['github-actions', 'scholzhannah'] PatrickMassot
assignee:PatrickMassot
2-69942
2 days ago
7-83730
7 days ago
22-49007
22 days
36155 grunweg
author:grunweg
feat: custom elaborators for TangentSpace and tangentMap(Within) And use these to golf the differential geometry files a bit further. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry t-meta 85/30 Mathlib/Geometry/Manifold/ContMDiffMFDeriv.lean,Mathlib/Geometry/Manifold/GroupLieAlgebra.lean,Mathlib/Geometry/Manifold/IntegralCurve/Basic.lean,Mathlib/Geometry/Manifold/MFDeriv/SpecificFunctions.lean,Mathlib/Geometry/Manifold/MFDeriv/Tangent.lean,Mathlib/Geometry/Manifold/Notation.lean,Mathlib/Topology/FiberBundle/Constructions.lean,MathlibTest/DifferentialGeometry/Notation/Basic.lean 8 5 ['github-actions', 'grunweg', 'mathlib-merge-conflicts', 'ocfnash'] PatrickMassot
assignee:PatrickMassot
2-68668
2 days ago
2-68462
2 days ago
40-76394
40 days
35402 samueloettl
author:samueloettl
feat(Dynamics/BirkhoffSum): birkhoffAverage const --- I think this is useful and one of these should be a simp lemma. I'm not really sure if I got the naming of the theorems correct. When generalizing to the assumption (n : R) ≠ 0 instead of the special case CharZero R with n ≠ 0 I had to use "open Classical in". I'm a bit unfamiliar with that part so please check if this makes sense. See also https://github.com/leanprover-community/mathlib4/pull/35307#discussion_r2823586252 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor 14/0 Mathlib/Dynamics/BirkhoffSum/Average.lean 1 10 ['Maldooor', 'github-actions', 'samueloettl'] nobody
2-68527
2 days ago
2-68585
2 days ago
58-61438
58 days
37814 sglasman
author:sglasman
feat: Equivalence between HopfAlgCat R and Hopf (ModuleCat R) This PR resolves a TODO by demonstrating an equivalence of categories between two models of the category of Hopf algebras over a commutative ring R, that of Hopf objects in the module category of R and that of types with a `HopfAlgebra R` instance. --- AI declaration: I consulted with Claude on proof strategies. The proofs were ultimately written by me. new-contributor large-import 214/4 Mathlib/CategoryTheory/Monoidal/Hopf_.lean,Mathlib/RingTheory/HopfAlgebra/Basic.lean 2 4 ['github-actions', 'robin-carlier', 'sglasman'] nobody
2-62390
2 days ago
7-38319
7 days ago
7-37793
7 days
38003 grunweg
author:grunweg
chore(downstream_repos.yml): update physlib name and repository --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy CI 2/2 scripts/downstream_repos.yml 1 1 ['github-actions', 'jstoobysmith'] nobody
2-61539
2 days ago
2-61683
2 days ago
2-61157
2 days
30077 agjftucker
author:agjftucker
feat(Analysis/Calculus/ImplicitFunction): define implicitFunctionOfBivariate Introduce a further specialization of the implicit function theorem; one which applies to a curried bivariate function. --- - [x] depends on: #26985 This is in large part a response to sgouezel's review comment on #16743 > The real question is whether it's best to formulate the result for curried or uncurried function. My bet is that curried would be better since most functions on products in fact come in curried form, but since you've already written fully the uncurried version (and a todo saying that it would be good having the curried version as well), let's keep it like that for now. #26985 reviewed by j-loreaux and later on by winstonyin. #16743 and #26300 reviewed by sgouezel. [Zulip chat](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Inverse.20function.20theorem.20and.20ContinuousLinearEquiv/with/567586606) with Yury Kudryashov. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis maintainer-merge 187/0 Mathlib.lean,Mathlib/Analysis/Calculus/FDeriv/Partial.lean,Mathlib/Analysis/Calculus/ImplicitFunction/Bivariate.lean,Mathlib/Analysis/Calculus/ImplicitFunction/ProdDomain.lean 4 14 ['agjftucker', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] j-loreaux
assignee:j-loreaux
2-61313
2 days ago
2-61374
2 days ago
54-41148
54 days
34675 YaelDillies
author:YaelDillies
feat: comultiplication as a bialgebra hom From Toric --- - [x] depends on: #32245 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory toric 71/12 Mathlib/RingTheory/Bialgebra/TensorProduct.lean,Mathlib/RingTheory/Coalgebra/TensorProduct.lean 2 6 ['YaelDillies', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'riccardobrasca'] nobody
2-61277
2 days ago
3-84757
3 days ago
3-84232
3 days
37832 YaelDillies
author:YaelDillies
chore(Algebra/Order/GroupWithZero): flatten `Unbundled` folder The algebraic order classes are unbundled now. --- More thought is needed to do the same for `Algebra.Order.Monoid` since filenames conflict. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-algebra t-order
label:t-algebra$
20/20 Mathlib.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/BigOperators/GroupWithZero/List.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Field/Pointwise.lean,Mathlib/Algebra/Order/GroupWithZero/Basic.lean,Mathlib/Algebra/Order/GroupWithZero/Bounds.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Defs.lean,Mathlib/Algebra/Order/GroupWithZero/Finset.lean,Mathlib/Algebra/Order/GroupWithZero/OrderIso.lean,Mathlib/Algebra/Order/GroupWithZero/Submonoid.lean,Mathlib/Algebra/Order/GroupWithZero/WithZero.lean,Mathlib/Algebra/Order/Nonneg/Basic.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Order/Filter/IsBounded.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/Tactic/FieldSimp/Lemmas.lean 19 1 ['github-actions'] nobody
2-60215
2 days ago
6-74594
6 days ago
6-76446
6 days
37929 Vierkantor
author:Vierkantor
chore(Tactic): rewrite `reduce_mod_char` tactic docstring This PR rewrites the docstrings for the `reduce_mod_char` tactic, to consistently match the official style guide, to make sure they are complete while not getting too long. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-meta 22/12 Mathlib/Tactic/ReduceModChar.lean 1 1 ['github-actions'] nobody
2-59603
2 days ago
2-59670
2 days ago
2-59868
2 days
37931 Vierkantor
author:Vierkantor
chore(Tactic): make the (deprecated) `replace` syntax a `@[tactic_alt]` This PR replaces the tactic docstring for Mathlib's version of `replace` with a `@[tactic_alt]` attribute + `tactic_extension`. Also update the module docs which did not get updated when `replace` got upstreamed to core Lean. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-meta 7/31 Mathlib/Tactic/Replace.lean 1 1 ['github-actions'] nobody
2-59603
2 days ago
2-59663
2 days ago
2-59859
2 days
38005 robin-carlier
author:robin-carlier
chore(Algebra): remove simps projections for structures of bundled objects I noticed that currently, adding a `@[simps]` tag to a `ModuleCat`-valued definition will generate projections for the `isModule` fields. These projections are removed. Same in `BialgCat` and `HopfAlgCat`. --- I did not look very hard for all cases of this, but those three should be a starter. Renaming `carrier` to `coe` will break a few things, so I opted for keeping it like this for now, feel free to disagree, but this will make the diff bigger. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
4/0 Mathlib/Algebra/Category/BialgCat/Basic.lean,Mathlib/Algebra/Category/HopfAlgCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Semi.lean 4 1 ['github-actions'] nobody
2-52419
2 days ago
2-52476
2 days ago
2-55095
2 days
34773 semaraugusto
author:semaraugusto
feat(InformationTheory): add Shannon entropy for probability mass functions Add Shannon entropy for probability mass functions This PR defines the Shannon entropy of a probability mass function as an ℝ-valued infinite sum using `Real.negMulLog`, and proves basic properties and standard computations. Main results include: * entropy is nonnegative; * entropy vanishes iff the PMF is deterministic (`PMF.pure`); * entropy is strictly positive for non-pure PMFs; * entropy of a Bernoulli PMF coincides with `Real.binEntropy`; * entropy of uniform distributions is `log` of the cardinality, both for `PMF.uniformOfFintype` and `PMF.uniformOfFinset`. Several small helper lemmas isolate technical arguments about supports, coercions from `ℝ≥0∞`, and bounds on infinite sums, in order to keep the main proofs readable. See the [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/generic.20shannon.20entropy.20formalization.20mathlib4/with/570643335). --- I used ChatGPT for some proof structuring and refactoring suggestions, but all proofs were manually checked and adapted. I verified the arguments and adjusted naming and structure to follow mathlib conventions. The proof of shannonEntropy_eq_log_card_sub_toReal_klDiv_uniformOfFintype and some of its helper lemmas were initially generated using Codex. I manually reviewed the generated proof, checked each step, and refactored the code and naming to follow mathlib conventions. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor LLM-generated 417/0 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Log/NegMulLog.lean,Mathlib/InformationTheory/Entropy.lean 3 15 ['adomasbaliuka', 'dupuisf', 'euprunin', 'github-actions', 'mathlib-merge-conflicts', 'mattrobball', 'semaraugusto', 'wwylele'] dupuisf and sgouezel
assignee:sgouezel assignee:dupuisf
2-52386
2 days ago
11-28734
11 days ago
20-46312
20 days
37851 gaetanserre
author:gaetanserre
feat(Category/Kernel): `Stoch` is a positive Markov category Add several `Deterministic` instances for `SFinKer` and `Stoch` associators, unitors, braiding, counit, and comul morphisms. In particular, all isomorphisms in `Stoch` are `Deterministic`. To show that, I created `Kernel.IsDeterministicKernel` that encodes that a kernel is _deterministic_, in the sense of Markov category (see Definition 10.1 of _A synthetic approach to Markov kernels, conditional independence and theorems on sufficient statistics_, Fritz 2020). I then followed the proof of Example 11.25 to show that `Stoch` is a positive Markov category (see `Kernel.parallelComp_id_comp_copy_comp`), inducing that all isomorphisms in `Stoch` are `Deterministic`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability t-category-theory 414/38 Mathlib.lean,Mathlib/CategoryTheory/MarkovCategory/Positive.lean,Mathlib/CategoryTheory/Monoidal/Widesubcategory.lean,Mathlib/Probability/Kernel/Category/SFinKer.lean,Mathlib/Probability/Kernel/Category/Stoch.lean,Mathlib/Probability/Kernel/Composition/KernelLemmas.lean,Mathlib/Probability/Kernel/Deterministic.lean 7 7 ['gaetanserre', 'github-actions', 'joelriou'] RemyDegenne
assignee:RemyDegenne
2-51676
2 days ago
2-54038
2 days ago
5-31347
5 days
37773 chrisflav
author:chrisflav
chore(Algebra/Category): add `ModuleCat.restrictScalarsIsoOfEquiv` Split of as separate PR, because it also contains three basic `simp` lemmas. We also add missing type annotations in the file `Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
51/15 Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Algebra/Module/RingHom.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/RingTheory/Perfection.lean 5 3 ['chrisflav', 'github-actions', 'robin-carlier'] mattrobball
assignee:mattrobball
2-49058
2 days ago
2-49113
2 days ago
7-83641
7 days
37796 JadAbouHawili
author:JadAbouHawili
feat(Data/Set): add mem_singleton lemma --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 9/3 Mathlib/Data/Finset/Card.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Set/Insert.lean 3 5 ['JadAbouHawili', 'github-actions', 'wwylele'] nobody
2-48818
2 days ago
4-40011
4 days ago
7-59073
7 days
37393 SnirBroshi
author:SnirBroshi
refactor(Algebra/Order/Monoid/Unbundled/Defs): upgrade `*ReflectLE` from `abbrev`s to `class`es ... to mitigate performance regression caused by #36629. Currently these classes are an `abbrev` for `ContravariantClass` so when TC-search tries to synthesize them it ends up looking through all the `ContravariantClass` instances and not just the relevant ones. --- [Zulip](https://leanprover.zulipchat.com/#narrow/channel/116290-rss/topic/Significant.20commits.20to.20mathlib4/near/582661644) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
60/56 Mathlib/Algebra/Order/Group/Multiset.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Basic.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/OrderDual.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean 7 10 ['JovanGerb', 'SnirBroshi', 'github-actions', 'leanprover-radar', 'vihdzp'] kim-em
assignee:kim-em
2-48533
2 days ago
13-3457
13 days ago
16-3151
16 days
36758 LarsenClose
author:LarsenClose
feat(Algebra/Category/ModuleCat): add locally finitely presentable instance Prove that `ModuleCat R` is locally finitely presentable for any commutative ring `R`. The free rank-1 module is a small strong generator of `ℵ₀`-presentable objects (Gabriel-Ulmer, Adamek-Rosicky Theorem 1.11). This is the first `IsLocallyFinitelyPresentable` instance for an algebraic category in Mathlib. Opens the path to LFP instances for other algebraic categories (groups, rings, etc.) via the same generator pattern. Companion to #36104. ### AI disclosure Developed with assistance from Claude (Anthropic). AI was used for proof exploration, convention checking, and PR preparation. All mathematical content and proof strategy reviewed and understood by the author. new-contributor t-algebra LLM-generated
label:t-algebra$
163/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ForgetCorepresentable.lean,Mathlib/Algebra/Category/ModuleCat/Presentable.lean 3 21 ['LarsenClose', 'eric-wieser', 'github-actions', 'joelriou', 'robin-carlier'] nobody
2-43868
2 days ago
2-43868
2 days ago
5-7015
5 days
37062 tannerduve
author:tannerduve
feat(Computability): Turing join and semilattice structure on Turing degrees ## Summary - Add `Partrec.kronecker` (equality test) and `Partrec.join` (disjoint union by parity) in `Partrec.lean` - Prove `Nat.RecursiveIn` is closed under computable conditionals (`cond_const`, `cond`) - Show each component reduces to the join (`left_le_join`, `right_le_join`) and the join is the least upper bound (`join_le`) - Establish `SemilatticeSup` instance on `TuringDegree` t-computability new-contributor large-import 311/15 Mathlib/Computability/Partrec.lean,Mathlib/Computability/RecursiveIn.lean,Mathlib/Computability/TuringDegree.lean 3 5 ['Komyyy', 'github-actions', 'mathlib-merge-conflicts', 'tannerduve'] Komyyy
assignee:Komyyy
2-37559
2 days ago
2-58139
2 days ago
3-33507
3 days
38021 IvanRenison
author:IvanRenison
feat(Data/Int/ModEq): add theorem `modEq_two_abs` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 4/0 Mathlib/Data/Int/ModEq.lean 1 1 ['github-actions'] nobody
2-32524
2 days ago
2-32590
2 days ago
2-32064
2 days
37906 AntoineChambert-Loir
author:AntoineChambert-Loir
refactor(Data/Nat/Choose/Multinomial): last minute modification before merge Addresses the final remark by @b-mehta before #35830 was merged --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data easy 4/4 Mathlib/Data/List/ToFinsupp.lean,Mathlib/Data/Nat/Choose/Multinomial.lean 2 3 ['github-actions', 'mathlib-merge-conflicts', 'themathqueen'] nobody
2-32015
2 days ago
2-32039
2 days ago
5-43850
5 days
36419 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/DividedPowerAlgebra/Init): add a computation lemma Add a lemma `DividedPowerAlgebra.pow_dp`. Co-authored with: @mariainesdff --- - [x] depends on: #35804 - [x] depends on: #35830 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 6/0 Mathlib/RingTheory/DividedPowerAlgebra/Init.lean 1 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
2-31972
2 days ago
2-31994
2 days ago
5-46965
5 days
34742 Brian-Nugent
author:Brian-Nugent
feat(SheafCohomology): add API for Sheaf Cohomology Defines the long exact sequence on cohomology associated to a short exact sequence of sheaves `H.longSequence`. Also defines `H.equiv₀`, the additive equivalence between `H F 0` and `((sheafSections J AddCommGrpCat).obj (op T)).obj F` when the category has a terminal object `T`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-category-theory 88/3 Mathlib/Algebra/Category/Grp/ForgetCorepresentable.lean,Mathlib/CategoryTheory/Sites/Abelian.lean,Mathlib/CategoryTheory/Sites/SheafCohomology/Basic.lean 3 36 ['Brian-Nugent', 'adamtopaz', 'dagurtomas', 'github-actions', 'joelriou', 'joneugster', 'mathlib-merge-conflicts'] robin-carlier
assignee:robin-carlier
2-30678
2 days ago
2-30736
2 days ago
63-75534
63 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`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #35329 - [x] depends on: #36506 t-ring-theory 600/4 Mathlib/RingTheory/MvPowerSeries/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Equiv.lean 2 26 ['AntoineChambert-Loir', 'BryceT233', 'Thmoas-Guan', 'WenrongZou', 'YaelDillies', 'eric-wieser', 'github-actions', 'mathlib-dependent-issues'] nobody
2-30498
2 days ago
2-31116
2 days ago
8-77073
8 days
38007 JovanGerb
author:JovanGerb
perf(Data/Complex/Basic): `no_expose` the `Inv` and `Norm` instance This PR hides some more implementation details of complex numbers. It would be possible to `no_expose` even more definitions, but this could be at the cost of some proof writing convenience. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt 11/12 Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Complex/Norm.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Data/Complex/Basic.lean 4 6 ['JovanGerb', 'github-actions', 'grunweg', 'leanprover-radar'] nobody
2-30417
2 days ago
2-49494
2 days ago
2-49057
2 days
37835 YaelDillies
author:YaelDillies
doc(Algebra/Order): update mentions of `OrderedSemiring` and friends As of #20676, it was replaced by `IsOrderedRing`. Not all docs were straightforward to update. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order
label:t-algebra$
123/280 Counterexamples/HomogeneousPrimeNotPrime.lean,Counterexamples/OrderedCancelAddCommMonoidWithBounds.lean,Mathlib/Algebra/Group/Subgroup/Order.lean,Mathlib/Algebra/Group/ULift.lean,Mathlib/Algebra/Order/AddTorsor.lean,Mathlib/Algebra/Order/Floor/Defs.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/Group/Cone.lean,Mathlib/Algebra/Order/Group/Cyclic.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Defs.lean,Mathlib/Algebra/Order/Hom/Monoid.lean,Mathlib/Algebra/Order/Interval/Set/Monoid.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/ExistsOfLE.lean,Mathlib/Algebra/Order/Positive/Ring.lean,Mathlib/Algebra/Order/Ring/Basic.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean,Mathlib/Algebra/Order/Star/Basic.lean,Mathlib/Algebra/Order/Sub/WithTop.lean,Mathlib/Algebra/Order/ToIntervalMod.lean,Mathlib/Algebra/Order/WithTop/Untop0.lean,Mathlib/Combinatorics/Pigeonhole.lean,Mathlib/Data/Finsupp/Weight.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/Cast/Order/Basic.lean,Mathlib/Data/Nat/Cast/Order/Ring.lean,Mathlib/MeasureTheory/Function/LpOrder.lean,Mathlib/MeasureTheory/Measure/Typeclasses/Finite.lean,Mathlib/Order/Filter/Germ/OrderedMonoid.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/HahnSeries/Valuation.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/Tactic/NormNum/Ineq.lean 37 8 ['NoahW314', 'SnirBroshi', 'github-actions'] nobody
2-28183
2 days ago
2-59958
2 days ago
6-7801
6 days
37648 vihdzp
author:vihdzp
chore: make argument in `bddAbove_of_small` implicit We use the theorem with an implicit argument much more (~80 times) than we use it with an explicit one (twice). We also deprecate the redundant `bddAbove_range` lemmas. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 85/92 Mathlib/CategoryTheory/ObjectProperty/LimitsClosure.lean,Mathlib/Combinatorics/Matroid/Rank/Cardinal.lean,Mathlib/Data/W/Cardinal.lean,Mathlib/LinearAlgebra/Dimension/Basic.lean,Mathlib/LinearAlgebra/Dimension/Constructions.lean,Mathlib/LinearAlgebra/Dimension/Finite.lean,Mathlib/LinearAlgebra/Dimension/Localization.lean,Mathlib/LinearAlgebra/Dimension/StrongRankCondition.lean,Mathlib/ModelTheory/Encoding.lean,Mathlib/RingTheory/AlgebraicIndependent/Basic.lean,Mathlib/RingTheory/AlgebraicIndependent/TranscendenceBasis.lean,Mathlib/RingTheory/AlgebraicIndependent/Transcendental.lean,Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Cardinal/Ordinal.lean,Mathlib/SetTheory/Ordinal/Enum.lean,Mathlib/SetTheory/Ordinal/Family.lean,Mathlib/SetTheory/Ordinal/FixedPoint.lean,Mathlib/SetTheory/Ordinal/Topology.lean,Mathlib/SetTheory/ZFC/Cardinal.lean,Mathlib/SetTheory/ZFC/VonNeumann.lean 23 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
2-28144
2 days ago
2-28203
2 days ago
10-60976
10 days
36891 vihdzp
author:vihdzp
feat(SetTheory/Ordinal/Exponential): characterization of `a ^ b = 1` Used in the CGT repo. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 12/0 Mathlib/SetTheory/Ordinal/Exponential.lean 1 6 ['SnirBroshi', 'github-actions', 'vihdzp'] alreadydone
assignee:alreadydone
2-27543
2 days ago
22-29024
22 days ago
26-83706
26 days
36664 SnirBroshi
author:SnirBroshi
feat(SetTheory/Ordinal/Commute): characterize when ordinal addition commutes --- The proof is from ["Cardinal and Ordinal Numbers"](https://en.wikipedia.org/wiki/Cardinal_and_Ordinal_Numbers). A similar fact for multiplication is mentioned on [Wikipedia](https://en.wikipedia.org/wiki/Ordinal_arithmetic). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 51/0 Mathlib.lean,Mathlib/SetTheory/Ordinal/Commute.lean,docs/references.bib 3 20 ['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'plp127', 'vihdzp'] vihdzp
assignee:vihdzp
2-23239
2 days ago
31-16619
31 days ago
31-71208
31 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. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](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
2-23238
2 days ago
92-40344
92 days ago
92-39818
92 days
36667 NoneMore
author:NoneMore
feat(ModelTheory): add `exClosure` definition for first-order formulas Prepare for moving realizations between elementarily equivalent structures. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic 37/0 Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean 2 2 ['github-actions'] nobody
2-23238
2 days ago
32-7455
32 days ago
32-6929
32 days
34092 staroperator
author:staroperator
feat(SetTheory/ZFC): properties of `ZFSet.omega` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 77/10 Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Ordinal.lean,Mathlib/SetTheory/ZFC/PSet.lean 3 25 ['Komyyy', 'github-actions', 'mathlib4-merge-conflict-bot', 'staroperator', 'vihdzp'] nobody
2-23237
2 days ago
76-45147
76 days ago
88-3636
88 days
34851 dennj
author:dennj
feat(Data/Matrix/Mul): add diagonal and transpose lemmas for vector operations This adds three lemmas for matrix-vector operations that serve as foundational support for future ML formalization: - `vecMul_diagonal_dotProduct`: weighted inner product `x ᵥ* diagonal d ⬝ᵥ y = ∑ i, d i * x i * y i` - `dotProduct_transpose_mulVec`: bilinear form symmetry `x ⬝ᵥ Aᵀ *ᵥ y = y ⬝ᵥ A *ᵥ x` - `mul_diagonal_mulVec`: column-weighted sum `(A * diagonal d) *ᵥ x = ∑ i, (d i * x i) • A.col i` These are basic linear algebra identities involving diagonal matrices and vector operations that appear frequently in machine learning contexts (weighted inner products, attention mechanisms, feature scaling, diagonal preconditioning). t-data new-contributor 22/0 Mathlib/Data/Matrix/Mul.lean 1 7 ['dennj', 'eric-wieser', 'github-actions', 'themathqueen'] nobody
2-23230
2 days ago
70-38704
70 days ago
70-38178
70 days
36970 astrainfinita
author:astrainfinita
chore: redefine `Nat.div2` `Nat.bodd` --- This PR continues the work from #13649. Original PR: https://github.com/leanprover-community/mathlib4/pull/13649 t-data 54/72 Mathlib/Computability/Primrec/Basic.lean,Mathlib/Data/Int/Bitwise.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Logic/Denumerable.lean,Mathlib/Logic/Encodable/Basic.lean,Mathlib/Logic/Equiv/Nat.lean 7 2 ['astrainfinita', 'github-actions'] nobody
2-23230
2 days ago
25-12279
25 days ago
25-17142
25 days
36210 vbeffara
author:vbeffara
feat(Combinatorics/SimpleGraph): definitions of graph contraction and graph minor A contraction is the image of a graph through a surjective function with connected fibers, and a minor is a contraction of a subgraph. This PR shows that being a contraction is transitive, but does not show the same for minors because the proof is more involved, it will be in a subsequent PR. The definitions are in `Prop` and do not contain data, but I'm not sure if that was the right choice. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 151/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Contraction.lean,Mathlib/Combinatorics/SimpleGraph/Minor.lean 3 7 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vbeffara'] b-mehta
assignee:b-mehta
2-22739
2 days ago
27-62764
27 days ago
41-2428
41 days
36398 chrisflav
author:chrisflav
feat(RingTheory): a finite étale algebra is étale locally finite split From Pi1. --- - [x] depends on: #36399 The large import is expected: The file is a leaf file that was split among two PRs. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import 117/2 Mathlib/RingTheory/Etale/Basic.lean,Mathlib/RingTheory/TotallySplit.lean,Mathlib/RingTheory/Unramified/Basic.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] mattrobball
assignee:mattrobball
2-22738
2 days ago
2-74992
2 days ago
2-76024
2 days
36783 wwylele
author:wwylele
feat(RingTheory/Localization): R ⧸ pⁿ ≃+* Rₚ ⧸ (maximalIdeal Rₚ)ⁿ This extends the existing `def equivQuotMaximalIdeal : R ⧸ p ≃+* Rₚ ⧸ maximalIdeal Rₚ` to powers of maximal ideals. --- Disclosure of AI usage: I chat with AI for a sketch of the proof. The code is entirely written by me. I didn't state the simp lemma for the symm direction because I am not sure how to state it. Following the analog of equivQuotMaximalIdeal_symm_apply_mk, this should be ``` theorem equivQuotMaximalIdealPow_symm_apply_mk (x : R) (s : p.primeCompl) : (equivQuotMaximalIdealPow p Rₚ n).symm (Ideal.Quotient.mk _ (IsLocalization.mk' Rₚ x s)) = (Ideal.Quotient.mk (p ^ n) x) * (Ideal.Quotient.mk (p ^ n) s)⁻¹ := by ``` But `(Ideal.Quotient.mk (p ^ n) s)⁻¹` is taking inverse in a non-field ring. Here the inverse always exists because s is not in p. What is the mathlib way to say this? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import 53/0 Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/Nilpotent.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean 3 1 ['github-actions'] mattrobball
assignee:mattrobball
2-22737
2 days ago
29-23179
29 days ago
29-22653
29 days
37406 vihdzp
author:vihdzp
feat(SetTheory/Cardinal): `IsStrongPrelimit` predicate We introduce a predicate for cardinals `c` such that `x < c` implies `x < 2 ^ c`. This is to `IsStrongLimit` as `IsSuccPrelimit` is to `IsSuccLimit`. We then make use of it in a few places where we were writing down `∀ x < c, x < 2 ^ c` explicitly. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 56/25 Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Cardinal/Regular.lean 4 1 ['github-actions'] alreadydone
assignee:alreadydone
2-22736
2 days ago
14-32949
14 days ago
15-85355
15 days
37658 joelriou
author:joelriou
chore(AlgebraicTopology): rename `SingularHomology.HomotopyInvarianceTopCat` Following #37656, it is possible to rename `SingularHomology.HomotopyInvarianceTopCat` as `SingularHomology.HomotopyInvariance`. --- The file `SingularHomology.HomotopyInvarianceTopCat` is deprecated in #37877. - [x] depends on: #37656 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology file-removed 1/1 Mathlib.lean,Mathlib/AlgebraicTopology/SingularHomology/HomotopyInvariance.lean 2 3 ['github-actions', 'mathlib-dependent-issues'] robin-carlier
assignee:robin-carlier
2-22732
2 days ago
2-54183
2 days ago
2-53658
2 days
37671 grunweg
author:grunweg
feat: also check for norm_num in the flexible linter Most other flexible tactics are terminal; dsimp is missing from this list (but perhaps less important in practice. --- - [x] depends on: #37880 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter 31/1 Archive/Wiedijk100Theorems/AbelRuffini.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semifield.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/Unitary/Connected.lean,Mathlib/Analysis/InnerProductSpace/Convex.lean,Mathlib/Analysis/SpecialFunctions/ArithmeticGeometricMean.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral.lean,Mathlib/Analysis/SpecialFunctions/Integrals/Basic.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Arctan.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/LinearAlgebra/RootSystem/Reduced.lean,Mathlib/MeasureTheory/Integral/MeanInequalities.lean,Mathlib/MeasureTheory/Measure/IntegralCharFun.lean,Mathlib/NumberTheory/Chebyshev.lean,Mathlib/NumberTheory/Harmonic/EulerMascheroni.lean,Mathlib/Tactic/Linter/FlexibleLinter.lean,Mathlib/Topology/UrysohnsLemma.lean 19 6 ['SnirBroshi', 'github-actions', 'grunweg', 'mathlib-dependent-issues'] thorimur
assignee:thorimur
2-22731
2 days ago
2-83022
2 days ago
2-82498
2 days
37917 chenson2018
author:chenson2018
refactor: elimate string manipulation in `TacticAnalysis.verifyTryThisSuggestions` This change should be compatible with, but independent from, #37916. Instead of manipulating pretty-printed strings to identify when `grind?` uses hashes or `approx`, search for the corresponding syntax kinds. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 5/11 Mathlib/Tactic/TacticAnalysis/Declarations.lean 1 1 ['github-actions'] dwrensha
assignee:dwrensha
2-22729
2 days ago
5-25525
5 days ago
5-24999
5 days
37924 JovanGerb
author:JovanGerb
perf(Tactic/FastInstance): use `whnf` on data fields This PR lets `fast_instance%` make even faster instances by using `whnf` on data fields. This PR also changes `withReducible` to the more appropriate `withReducibleAndInstances` in the implementation. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 5/5 Mathlib/Tactic/FastInstance.lean,MathlibTest/InferInstanceAsPercent.lean 2 4 ['JovanGerb', 'github-actions', 'leanprover-radar'] dwrensha
assignee:dwrensha
2-22728
2 days ago
4-76943
4 days ago
4-76643
4 days
37982 chrisflav
author:chrisflav
feat(RingTheory/Etale): descent along faithfully flat maps From Pi1. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 121/1 Mathlib.lean,Mathlib/RingTheory/Etale/Basic.lean,Mathlib/RingTheory/Etale/Descent.lean 3 1 ['github-actions'] mattrobball
assignee:mattrobball
2-22724
2 days ago
2-77671
2 days ago
2-77145
2 days
38012 chrisflav
author:chrisflav
chore(CategoryTheory/Limits): dualize existence of limits in `Over` to `Under` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 147/4 Mathlib/CategoryTheory/Limits/Comma.lean,Mathlib/CategoryTheory/Limits/Constructions/Over/Basic.lean,Mathlib/CategoryTheory/Limits/Constructions/Over/Connected.lean,Mathlib/CategoryTheory/Limits/Opposites.lean 4 1 ['github-actions'] robin-carlier
assignee:robin-carlier
2-22722
2 days ago
2-50669
2 days ago
2-50143
2 days
36787 hommmmm
author:hommmmm
feat(RingTheory/LocalRing): Krull dimension results for maximal ideal of local ring ## Summary This PR adds: * `IsLocalRing.exists_mem_maximalIdeal_not_mem_sq`: In a Noetherian local ring of positive Krull dimension, there exists an element in the maximal ideal that is not in its square. The result follows from Nakayama's lemma: if every element of the maximal ideal `𝔪` were in `𝔪²`, then `𝔪 = 𝔪²`, and Nakayama gives `𝔪 = ⊥`, contradicting positive dimension. ## Acknowledgements Thanks to Dora Kassabova and Leopold Mayer for edit suggestions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-ring-theory 14/0 Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean 1 15 ['NoahW314', 'chrisflav', 'github-actions', 'hommmmm', 'tb65536', 'wwylele'] chrisflav
assignee:chrisflav
2-21142
2 days ago
2-21191
2 days ago
29-3480
29 days
37816 marcelolynch
author:marcelolynch
fix: Fail lake exe cache on unexpected arguments, add --help Currently, `lake exe cache` just ignores unexpected arguments. This leads to unexpected situations like `lake exe cache get --help` being equivalent to `lake exe cache get`. Let's be louder and complain if anything is unexpected. CI 24/3 Cache/Main.lean 1 2 ['adomani', 'github-actions'] nobody
2-17851
2 days ago
2-17905
2 days ago
2-24894
2 days
34649 peabrainiac
author:peabrainiac
feat(Analysis/Calculus/ContDiff): add notation `ℕ∞ω` for `WithTop ℕ∞` Add a `ContDiff`-scoped notation `ℕ∞ω` for `WithTop ℕ∞`, accompanying the existing notations `∞` and `ω` for `(⊤ : ℕ∞) : ℕ∞ω` and `⊤ : ℕ∞ω`. --- [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/RFC.3A.20notation.20for.20.60WithTop.20.E2.84.95.E2.88.9E.60/near/573917824) I've also replaced `WithTop ℕ∞` with this new notation already in the files that mention it the most, but not in all files yet; many mention `WithTop ℕ∞` just a couple of times but don't open the `ContDiff` namespace. I'm not sure whether that should be taken as a sign to not make the notation scoped, or whether the solution is just to `open scoped ContDiff` in these files or not use the notation there. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry t-analysis maintainer-merge 276/272 Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Basic.lean,Mathlib/Analysis/Calculus/ContDiff/Bounds.lean,Mathlib/Analysis/Calculus/ContDiff/CPolynomial.lean,Mathlib/Analysis/Calculus/ContDiff/Comp.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/Deriv.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/ContDiff/Operations.lean,Mathlib/Analysis/Calculus/FDeriv/Symmetric.lean,Mathlib/Analysis/Calculus/ImplicitContDiff.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Defs.lean,Mathlib/Analysis/Calculus/IteratedDeriv/FaaDiBruno.lean,Mathlib/Analysis/Calculus/VectorField.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Manifold.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/TestFunction.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/SpecialFunctions/Log/Deriv.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/InverseDeriv.lean,Mathlib/Geometry/Manifold/Algebra/LeftInvariantDerivation.lean,Mathlib/Geometry/Manifold/Algebra/LieGroup.lean,Mathlib/Geometry/Manifold/Algebra/Monoid.lean,Mathlib/Geometry/Manifold/Algebra/SmoothFunctions.lean,Mathlib/Geometry/Manifold/Algebra/Structures.lean,Mathlib/Geometry/Manifold/ContMDiff/Atlas.lean,Mathlib/Geometry/Manifold/ContMDiff/Basic.lean,Mathlib/Geometry/Manifold/ContMDiff/Defs.lean,Mathlib/Geometry/Manifold/Diffeomorph.lean,Mathlib/Geometry/Manifold/Immersion.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean,Mathlib/Geometry/Manifold/Instances/UnitsOfNormedAlgebra.lean,Mathlib/Geometry/Manifold/IsManifold/Basic.lean,Mathlib/Geometry/Manifold/LocalSourceTargetProperty.lean,Mathlib/Geometry/Manifold/Riemannian/Basic.lean,Mathlib/Geometry/Manifold/Riemannian/PathELength.lean,Mathlib/Geometry/Manifold/SmoothEmbedding.lean,Mathlib/Geometry/Manifold/VectorBundle/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/CovariantDerivative/Basic.lean,Mathlib/Geometry/Manifold/VectorBundle/FiberwiseLinear.lean,Mathlib/Geometry/Manifold/VectorBundle/LocalFrame.lean,Mathlib/Geometry/Manifold/VectorBundle/Riemannian.lean,Mathlib/Geometry/Manifold/VectorBundle/SmoothSection.lean,Mathlib/Geometry/Manifold/VectorBundle/Tangent.lean,Mathlib/Geometry/Manifold/VectorField/LieBracket.lean,Mathlib/Geometry/Manifold/VectorField/Pullback.lean 47 12 ['JovanGerb', 'github-actions', 'j-loreaux', 'mathlib-merge-conflicts', 'peabrainiac'] sgouezel
assignee:sgouezel
2-15217
2 days ago
2-15242
2 days ago
13-77577
13 days
37008 BryceT233
author:BryceT233
feat(Algebra/Ring): `pullback` for `RingHom` and `AlgHom` This PR adds `pullback` for `RingHom` and `AlgHom` and adds `IsLocalHom`, `IsLocalRing` lemmas related to them. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 160/0 Mathlib/Algebra/Algebra/Subalgebra/Prod.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/RingTheory/LocalRing/LocalSubring.lean 3 5 ['BryceT233', 'github-actions', 'wwylele'] mattrobball
assignee:mattrobball
2-14818
2 days ago
13-71267
13 days ago
23-85967
23 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]`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) LLM-generated t-meta t-category-theory 277/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/MapSimp.lean 5 8 ['adamtopaz', 'dagurtomas', 'github-actions', 'joelriou'] adamtopaz
assignee:adamtopaz
2-11250
2 days ago
2-43942
2 days ago
21-7045
21 days
35287 arnoudvanderleer
author:arnoudvanderleer
feat(AlgebraicTopology/SimplicialSet): define isomorphisms in simplicial sets, and the coherent isomorphism simplicial set show that any edge in a simplicial set, that is the image of the forward edge of the coherent isomorphism under a simplicial set morphism, is an isomorphism. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology new-contributor infinity-cosmos please-merge-master 372/3 Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialSet/CoherentIso.lean,Mathlib/AlgebraicTopology/SimplicialSet/CompStruct.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveCodiscrete.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/CategoryTheory/CodiscreteCategory.lean 6 95 ['arnoudvanderleer', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'robin-carlier'] robin-carlier
assignee:robin-carlier
2-10447
2 days ago
2-10447
2 days ago
12-77308
12 days
36376 jessealama
author:jessealama
feat(SimpleGraph): bridge from Perm.IsCycle to IsHamiltonian This PR provides `IsHamiltonian.ofPerm`, a bridge from `Equiv.Perm.IsCycle` to `SimpleGraph.IsHamiltonian`: if σ is a permutation that is a single cycle with full support on at least 3 elements, and each step `v → σ v` is an edge of `G`, then `G` is Hamiltonian. ### New definitions and lemmas **`Mathlib/Combinatorics/SimpleGraph/Walks/Iterate.lean`** (new file): - `Walk.iterate`: builds a walk of length `n` from `x` to `f^[n] x` for any function `f` with `G.Adj x (f x)` for all `x`, defined via `Walk.ofSupport` - `Walk.length_iterate`, `Walk.support_iterate`, `Walk.edges_iterate`: basic API **`Mathlib/GroupTheory/Perm/Cycle/Basic.lean`**: - `IsCycleOn.injOn_pow_apply`: the map `n ↦ (f ^ n) a` is injective on `Finset.range #s` **`Mathlib/GroupTheory/Perm/Cycle/Concrete.lean`**: - `Perm.toList_eq_range_map_pow`: expresses `toList` as a range map over powers **`Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean`**: - `edge_ne_of_isCycleOn`: edge distinctness for cycle-on permutations - `IsHamiltonian.ofPerm`: the main theorem - [ ] depends on: #36307 large-import 169/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Iterate.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Concrete.lean 5 36 ['SnirBroshi', 'github-actions', 'jessealama', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
1-83186
1 day ago
12-37525
12 days ago
23-79261
23 days
37347 JovanGerb
author:JovanGerb
feat: implementation of `@[use_set_notation_for_order]` This PR allows the use of `⊆` notation while the underlying constant is `≤`. Similarly for `⊂`/`<`, `⊇`/`≥` and `⊃`/`>`. - The idea is to later extend this feature to other set notation constants, such as union/intersection. - There are some types for which we cannot use `LE.le` as the underlying constant, such as `List` and `Multiset`. So, the elaborator for the `⊆` notation needs to make a decision which underlying constant to elaborate to, depending on the type. Sometimes the type is not known yet, which makes things awkward. Most of these cases are solved by delaying the elaboration until later when the type is known. - However, in some cases this doesn't work either, such as `simp_rw [and_comm (_ ⊆ _)]`, where it is impossible to tell the type when elaborating the term. So, some such cases need to be fixed by making it `simp_rw [and_comm (_ ≤ _)]`. This is because `simp_rw`, unlike `rw`, fully elaborates the rewrite rules before using them. So, when we get the new rewrite tactic, this problem will mostly go away. See also https://leanprover.zulipchat.com/#narrow/channel/113488-general/topic/Any.20infimum.20based.20version.20of.20.60OmegaCompletePartialOrder.60.3F/near/579333629 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta maintainer-merge 345/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/SetNotationForOrder.lean,MathlibTest/SetNotationForOrder.lean 4 44 ['JovanGerb', 'github-actions', 'thorimur'] alexjbest and thorimur
assignee:alexjbest assignee:thorimur
1-81624
1 day ago
3-28636
3 days ago
16-55597
16 days
37860 WenrongZou
author:WenrongZou
feat(PowerSeries): `substInv` add add a variant assuming `IsUnit` --- In this PR, I add a variant assuming `IsUnit` in `substInv`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 56/28 Mathlib/RingTheory/PowerSeries/Substitution.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] nobody
1-78501
1 day ago
1-78522
1 day ago
6-1033
6 days
37972 vihdzp
author:vihdzp
chore: deprecate various theorems about `Ordinal.ToType` We should generally be writing theorems about "well-orders of order type `o`", rather than theorems about `o.ToType` (which is just one such well-order, defined via choice). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory maintainer-merge 31/18 Mathlib/CategoryTheory/Abelian/GrothendieckCategory/EnoughInjectives.lean,Mathlib/CategoryTheory/Presentable/OrthogonalReflection.lean,Mathlib/FieldTheory/CardinalEmb.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean 6 2 ['YaelDillies', 'github-actions'] nobody
1-77587
1 day ago
3-9567
3 days ago
3-11987
3 days
36544 xroblot
author:xroblot
feat(RingTheory/Ideal): restriction maps on decomposition and inertia groups in a Galois tower Adds a new file `Mathlib/RingTheory/Ideal/Galois.lean` with results on the action of `Gal(L/K)` on ideals of a ring `B ⊆ L` for a Galois subextension `F/K` of `L/K`. The main results are the surjectivity and kernel descriptions of the natural maps from the decomposition (resp. inertia) group of `P` in `Gal(L/K)` to the decomposition (resp. inertia) group of `p` in `Gal(F/K)`, induced by restriction. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 213/0 Mathlib.lean,Mathlib/FieldTheory/Normal/Defs.lean,Mathlib/RingTheory/Ideal/Galois.lean 3 17 ['copilot-pull-request-reviewer', 'github-actions', 'riccardobrasca', 'tb65536', 'xroblot'] riccardobrasca
assignee:riccardobrasca
1-77355
1 day ago
34-49160
34 days ago
34-48634
34 days
35653 pepamontero
author:pepamontero
feat: add ChartedSpace structure on orbit space Add topological preliminaries for properly discontinuous group actions, and use them to equip the orbit space `orbitRel.Quotient G M` with a `ChartedSpace` structure. In particular: - Show that the quotient map `Quotient.mk _ : M → orbitRel.Quotient G M` is a covering map and hence a local homeomorphism. - Construct chosen local inverses of the quotient map and establish properties over them. - Define a `ChartedSpace` instance on the quotient by composing these local inverses with charts of M. Future PRs will (hopefully) upgrade this to a smooth manifold structure (assuming a smooth action). This started as an ItaLean2025 project; here is the [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/541885-ItaLean-2025/topic/Projects.3A.20Quotient.20Manifolds/with/575121158) dedicated to it. Co-authored by: Michael Rothgang Co-authored by: Archie Browne @archiebrowne Co-authored by: Enrique Diaz Blanco @qdiazblanco Co-authored by: Juanjo Madrigal @juanjomadrigal new-contributor t-differential-geometry 162/0 Mathlib.lean,Mathlib/Geometry/Manifold/Instances/OrbitSpace.lean,Mathlib/Topology/Algebra/OrbitSpace.lean 3 70 ['Rida-Hamadani', 'github-actions', 'grunweg', 'pepamontero'] grunweg
assignee:grunweg
1-73331
1 day ago
2-34822
2 days ago
51-84128
51 days
37247 yuma-mizuno
author:yuma-mizuno
feat(GroupTheory/MonoidLocalization): add prime transport lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 75/7 Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean 3 6 ['github-actions', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
1-73128
1 day ago
20-34299
20 days ago
20-33773
20 days
38037 linesthatinterlace
author:linesthatinterlace
feat: extend `LawfulXor` lemmas and add `Equiv.xor` This PR extends the work of #37712 by adding additional lemmas and adding `xor-as-a-permutation`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 270/0 Mathlib.lean,Mathlib/Data/Fin/Init.lean,Mathlib/Data/LawfulXor/Basic.lean,Mathlib/Data/LawfulXor/Equiv.lean 4 3 ['github-actions', 'linesthatinterlace'] eric-wieser and linesthatinterlace
assignee:eric-wieser assignee:linesthatinterlace
1-71186
1 day ago
1-72326
1 day ago
1-71902
1 day
37831 EtienneC30
author:EtienneC30
feat: the cardinal of a finset is an ite sum over a bigger finset If `s ⊆ t` then `s.card = ∑ i ∈ t, if i ∈ s then 1 else 0`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data t-algebra
label:t-algebra$
9/2 Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Data/Finset/BooleanAlgebra.lean,Mathlib/Data/Finset/Filter.lean 3 3 ['EtienneC30', 'github-actions', 'robin-carlier'] nobody
1-69049
1 day ago
1-76393
1 day ago
6-79080
6 days
36357 yuanyi-350
author:yuanyi-350
feat(Analysis/Calculus/IteratedDeriv): add affine composition lemmas This PR adds composition lemmas for `iteratedDerivWithin` and `iteratedFDerivWithin` on maps `𝕜 → F`, covering `x ↦ f (-x)`, `x ↦ f (c + x)`, `x ↦ f (x + c)`, `x ↦ f (x - c)`, and `x ↦ f (c - x)`. To support these statements, it also adds one-dimensional `fderivWithin` lemmas that do not require a `UniqueDiffWithinAt` hypothesis: - `fderivWithin_zero_of_not_uniqueDiffWithinAt` - `fderivWithin_const_smul_field'` - `fderivWithin_neg'` - `fderivWithin_comp_neg` Finally, it rewrites `iteratedDeriv_comp_neg` to follow from the new Fréchet-derivative lemmas, and shortens two proofs in `ContDiff/FTaylorSeries` by replacing hand-written arguments with existing general lemmas. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 89/9 Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/FDeriv/Add.lean,Mathlib/Analysis/Calculus/FDeriv/Basic.lean,Mathlib/Analysis/Calculus/FDeriv/Equiv.lean,Mathlib/Analysis/Calculus/IteratedDeriv/Lemmas.lean 5 15 ['github-actions', 'j-loreaux', 'sgouezel', 'urkud', 'yuanyi-350'] sgouezel
assignee:sgouezel
1-66392
1 day ago
8-23343
8 days ago
19-59700
19 days
37053 artie2000
author:artie2000
refactor(Analysis/Convex/Cone): use `PointedCone` in Riesz extension theorem Change the statement of the Riesz extension theorem to take a `PointedCone` rather than a `ConvexCone`. This PR is part of a series replacing `ConvexCone` with `PointedCone`. https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Replacing.20.60ConvexCone.60.20with.20.60PointedCone.60/near/581184307 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry maintainer-merge 15/12 Mathlib/Analysis/Convex/Cone/Extension.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean 2 8 ['YaelDillies', 'artie2000', 'github-actions', 'mathlib-merge-conflicts', 'ocfnash'] nobody
1-64631
1 day ago
1-64659
1 day ago
21-19170
21 days
37298 artie2000
author:artie2000
refactor(Algebra/Order): unbundle group and ring cone * Unbundle `GroupCone` and `RingCone` using `Submonoid.IsMulPointed` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
136/31 Mathlib/Algebra/Order/Group/Cone.lean,Mathlib/Algebra/Order/Ring/Cone.lean 2 1 ['github-actions'] joneugster
assignee:joneugster
1-63495
1 day ago
17-49827
17 days ago
17-49856
17 days
38031 tb65536
author:tb65536
feat(RingTheory/Artinian/Ring): an Artinian ring is isomorphic to the product of its localizations This PR proves that an Artinian ring is isomorphic to the product of its localizations. --- The best proof I could come up with goes via the quotient by the power of the nilradical, but it's rather clunky, so alternate proofs more than welcome! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
85/1 Mathlib/RingTheory/Artinian/Ring.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean 2 1 ['github-actions'] nobody
1-53687
1 day ago
1-78755
1 day ago
1-78230
1 day
37505 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph): add lemma `SimpleGraph.length_cycleBypass_le` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 3/0 Mathlib/Combinatorics/SimpleGraph/Paths.lean 1 4 ['IvanRenison', 'Rida-Hamadani', 'YaelDillies', 'github-actions'] YaelDillies
assignee:YaelDillies
1-51122
1 day ago
3-30065
3 days ago
14-31781
14 days
38049 WilliamCoram
author:WilliamCoram
feat: lemmas towards showing gaussNorm on MvPowerSeries is an absolute value We prove lemmas: ``gaussNorm_mul_le`` and ``gaussNorm_le_mul`` which will allow us to show it is an absolute value on Mv restricted power series. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 138/1 Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean 1 3 ['github-actions'] nobody
1-50529
1 day ago
1-51877
1 day ago
1-51351
1 day
28499 yoh-tanimoto
author:yoh-tanimoto
feat(MeasureTheory/VectorMeasure): add integral of a vector-valued function against a vector measure add `VectorMeasureWithPairing.integral` for normed vector spaces `E`, `F`, a Banach space `G` , a continuous linear pairing `B : E →L[ℝ] F →L[ℝ] → G` and an `F`-valued vector measure `μ`, which should be informally written as `∫ B (f x) ∂μ x`. motivation: there are natural vector measures such as signed measures and complex measures, and their integrals appear naturally e.g. in a proof of the spectral theorem for general bounded normal operators on a Hilbert space. - [x] depends on: #26160 for the definition and lemmas about the total variation of a vector measure. t-measure-probability 247/0 Mathlib.lean,Mathlib/MeasureTheory/VectorMeasure/Integral.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean 3 51 ['EtienneC30', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'yoh-tanimoto'] EtienneC30
assignee:EtienneC30
1-49653
1 day ago
1-49714
1 day ago
3-82414
3 days
33313 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Coloring/Edge): create a basic edge-coloring API Also moves `Coloring/VertexColoring.lean` to `Coloring/Vertex.lean`, see [Zulip](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Coloring.20module.20names/with/583281500) --- Future work (which I'm working on): - Relating degrees to edge-colorability (`G.maxDegree ≤ G.chromaticIndex`) - [Vizing's theorem](https://en.wikipedia.org/wiki/Vizing%27s_theorem) (`G.chromaticIndex ≤ G.maxDegree + 1`) - `chromaticIndex ⊤ = (if Even #V then #V - 1 else #V)` - `[Infinite α] → chromaticIndex ⊤ = ⊤` Module name decided on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Coloring.20module.20names/with/583281500). - [x] depends on: #33292 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics file-removed 291/6 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Edge.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Vertex.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/ConcreteColorings.lean,Mathlib/Combinatorics/SimpleGraph/Partition.lean,Mathlib/Combinatorics/SimpleGraph/Sum.lean 8 16 ['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'ooovi'] nobody
1-48093
1 day ago
10-58538
10 days ago
24-1081
24 days
34245 staroperator
author:staroperator
feat(Data/Set): add `Set.Uncountable` There are `Set` specialized shortcuts `Set.Finite`, `Set.Infinite` and `Set.Countable`, but lacking `Set.Uncountable`. I find this useful in #34246. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 82/4 Mathlib/Analysis/Real/Cardinality.lean,Mathlib/Data/Set/Countable.lean,Mathlib/SetTheory/Cardinal/Basic.lean 3 18 ['github-actions', 'joneugster', 'staroperator', 'vihdzp'] joneugster
assignee:joneugster
1-42034
1 day ago
1-42147
1 day ago
13-62775
13 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`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 53/14 Mathlib/Algebra/Algebra/Subalgebra/Tower.lean,Mathlib/RingTheory/AlgebraicIndependent/TranscendenceBasis.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/IntegralClosure/IsIntegralClosure/Basic.lean 4 2 ['eric-wieser', 'github-actions'] nobody
1-38599
1 day ago
2-35130
2 days ago
2-36221
2 days
34820 staroperator
author:staroperator
feat(Order/Ideal): more results on order ideals Some iffs, closure of finite supremum, and that every proper ideal is contained in a maximal ideal. --- - [x] depends on: #37467 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order large-import 89/5 Mathlib/Order/Ideal.lean 1 18 ['Komyyy', 'bryangingechen', 'github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'staroperator'] Komyyy
assignee:Komyyy
1-34637
1 day ago
1-34637
1 day ago
57-21219
57 days
34123 staroperator
author:staroperator
feat(Data/Set/Finite): finite distributivity for complete distributive lattices --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 41/0 Mathlib/Data/Set/Finite/Lattice.lean 1 13 ['Komyyy', 'github-actions', 'plp127', 'staroperator'] Komyyy
assignee:Komyyy
1-34275
1 day ago
1-34275
1 day ago
47-37738
47 days
37295 wwylele
author:wwylele
feat(Analysis/InnerProductSpace): generalized determinant of a rectangle matrix / linear map This is the volume factor of a linear map --- I have encountered the expression `sqrt(det(T' * T))` a few times in various places but it doesn't look like it has a standard name and entry in mathlib, so this adds it. Zulip thread [#Is there code for X? > (norm of) "determinant" of map between inner product spaces](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/.28norm.20of.29.20.22determinant.22.20of.20map.20between.20inner.20product.20spaces/with/581776873) One motivation to define this is to state volume formula under transformations. From *Measure theory and fine properties of functions*: - Lemma 3.1: for linear map $L : \mathbb{R}^n \to \mathbb{R}^m$, we have $\mathcal{H}^n(L(A)) = [ L ] \mathcal{L}^n(A)$. This is proved in this PR at `euclideanHausdorffMeasure_image_eq_normDet_mul_volume` - Theorem 3.8, for (not necessarily linear) $f : \mathbb{R}^n \to \mathbb{R}^m$ ($n \le m$) and $\mathcal{L}^n$-measurable set $A \subset \mathbb{R}^n$, we have $\int_A J f dx = \int_{\mathbb{R}^m} \mathcal{H}^0(A \cap f\^{-1}\{y\}) d\mathcal{H}^n(y)$, where $J f$ is the `normDet` of the rectangular Jacobian matrix AI usage disclosure: AI was used in the following parts - searching for related literature for an appropriate name - generate draft proofs for some lemma to verify their correctness, though the final code has been completely rewritten by me. - [ ] depends on: #37918 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 479/0 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/NormDet.lean,docs/references.bib 3 12 ['copilot-pull-request-reviewer', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'wwylele'] j-loreaux
assignee:j-loreaux
1-33479
1 day ago
1-33217
1 day ago
15-49673
15 days
37997 emlis42
author:emlis42
feat(Algebra/ContinuedFractions): generalize determinant formula to GenContFract Let $g$ be a `GenContFract K`. In this PR I generalize the determinant formula for continued fractions from the simple continued fraction case $$A_n B_{n+1} - B_n A_{n+1} = (-1)^n$$ to the generalized continued fraction product formula $$A_n B_{n+1} - B_n A_{n+1} = (-a_0) (-a_1) \dots (-a_n)$$ - I kept `SimpContFract.determinant_aux`, since it is used downstream in `Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean`. - The `SimpContFract` version is still available unchanged, so this should avoid breaking existing users of the old API. - I was not sure whether `(g.s.get? i).elim 0 Pair.a` is the correct or most idiomatic way to represent the partial numerator `aᵢ` in this context. Any feedback on a more canonical formulation would be appreciated. - The use of `0` as the default partial numerator in `(g.s.get? i).elim 0 Pair.a` allows product formulation that remains valid when the fraction is terminated. t-algebra new-contributor large-import
label:t-algebra$
53/29 Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/ContinuedFractions/Determinant.lean 2 9 ['emlis42', 'github-actions', 'vihdzp'] nobody
1-29056
1 day ago
2-68585
2 days ago
2-68556
2 days
36840 SnirBroshi
author:SnirBroshi
feat(SetTheory/Ordinal/Arithmetic): a few ordinal division lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 27/8 Mathlib/SetTheory/Ordinal/Arithmetic.lean 1 6 ['SnirBroshi', 'github-actions', 'vihdzp'] nobody
1-23239
1 day ago
28-20771
28 days ago
28-20245
28 days
35610 IvanRenison
author:IvanRenison
feat(Data/Fin): add several lemmas about subtraction of `Fin.{castLT, castAdd, castSucc, castPred}` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 79/0 Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fin/SuccPred.lean 2 3 ['github-actions', 'wwylele'] nobody
1-23237
1 day ago
52-73147
52 days ago
53-727
53 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$
610/0 Archive.lean,Archive/Robbins.lean 2 1 ['github-actions'] chrisflav
assignee:chrisflav
1-22779
1 day ago
67-15794
67 days ago
67-16920
67 days
36308 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Subgraph): a couple of `subgraphOfAdj` lemmas Also golf a lemma (it's one line longer but it looks simpler to me). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 14/5 Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 1 4 ['SnirBroshi', 'YaelDillies', 'github-actions'] b-mehta
assignee:b-mehta
1-22778
1 day ago
40-2436
40 days ago
40-1910
40 days
36626 SnirBroshi
author:SnirBroshi
feat(Order/UpperLower/Basic): an injective function constrained by the identity function using a well-order is the identity --- (yes I know `IsLowerSet` is bundled but I need the theorems for unbundled relations 🙈) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 30/0 Mathlib/Order/UpperLower/Basic.lean 1 6 ['SnirBroshi', 'YaelDillies', 'github-actions', 'vihdzp'] bryangingechen
assignee:bryangingechen
1-22776
1 day ago
33-23208
33 days ago
33-22682
33 days
36682 harahu
author:harahu
chore(Data): avoid lazy continuation in md lists We replace lazy continuation lines in lists with either: - indented lines, to signify that the line is indeed a continuation line; or - a newline, where the continuation line(s) were in fact intended to be disconnected from the list. We do this because lazy continuation is a markdown footgun that one does well to avoid. We also standardize indentation such that continuation lines now line up with the first line of the item they're continuing. This seems to be the solution enforced by markdown formatters, e.g. `mdformat`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 18/7 Mathlib/Data/Bracket.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Fin/FlagRange.lean,Mathlib/Data/Finsupp/MonomialOrder.lean,Mathlib/Data/Finsupp/MonomialOrder/DegLex.lean,Mathlib/Data/Multiset/DershowitzManna.lean,Mathlib/Data/PNat/Xgcd.lean,Mathlib/Data/Part.lean,Mathlib/Data/Stream/Defs.lean 9 1 ['github-actions'] TwoFX
assignee:TwoFX
1-22776
1 day ago
31-60678
31 days ago
31-60152
31 days
37350 aditya-ramabadran
author:aditya-ramabadran
feat(Analysis/Distribution): define canonical maps between Schwartz/test functions, distributions/tempered distributions Defines these canonical maps: (1) continuous linear map from $\mathcal D$ to $\mathcal S$, and (2) induced (linear) restriction map from $\mathcal S'$ to $\mathcal D'$, as assigned by @ADedecker. --- Put in a separate file since Distribution.lean only imports TestFunction right now and I thought it was cleaner to do in a new bridge file with both the maps. Open to changing this though. * Made use of #36445 (proved first map locally on fixed support spaces first by local seminorm estimates, then used limitCLM) * Needed a real to complex bridge `TestFunction.ToComplexSchwartzMap` since distributions are defined on real-valued test functions but tempered distributions in mathlib are defined on complex-valued Schwartz functions * Induced map $\mathcal S'(E,F) \to \mathcal D'(Ω,F)$ is $\mathbb C$-linear The main important defs are `ContDiffMapSupportedIn.toSchwartzMapCLM` which is the local fixed-support part, then `TestFunction.toSchwartzMapCLM` (where the continuity uses limitCLM to glue the local continuous linear maps on each $\mathcal D_K$), and `TemperedDistribution.toDistributionLM` which is the linear map from tempered distributions to ordinary distributions. Tested with `lake env lean Mathlib/Analysis/Distribution/TestFunctionSchwartz.lean` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 279/0 Mathlib.lean,Mathlib/Analysis/Distribution/TestFunctionSchwartz.lean 2 3 ['aditya-ramabadran', 'github-actions'] j-loreaux
assignee:j-loreaux
1-22774
1 day ago
14-58705
14 days ago
15-12174
15 days
37449 dagurtomas
author:dagurtomas
feat(Condensed): the free light condensed module on `ℕ∪∞` is internally projective From [LeanCondensed](https://github.com/dagurtomas/LeanCondensed) Co-authored by: @jonasvanderschaaf --- - [x] depends on: #37451 - [x] depends on: #37452 - [x] depends on: #37453 - [x] depends on: #37454 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-condensed 363/0 Mathlib.lean,Mathlib/Condensed/Light/Sequence.lean,Mathlib/Topology/Category/LightProfinite/Sequence.lean 3 12 ['dagurtomas', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib-splicebot'] riccardobrasca
assignee:riccardobrasca
1-22773
1 day ago
3-13203
3 days ago
3-20000
3 days
37521 jessealama
author:jessealama
feat(Data/Part): add Part.bind_eq_some_iff Add `Part.bind_eq_some_iff`, the `Part` analogue of `Option.bind_eq_some_iff`. Noticed this small gap while working on some equivalence proofs with partial functions. t-data 6/0 Mathlib/Data/Part.lean 1 3 ['github-actions', 'jessealama', 'vihdzp'] TwoFX
assignee:TwoFX
1-22772
1 day ago
14-38360
14 days ago
14-37834
14 days
37534 EtienneC30
author:EtienneC30
feat: cardinality of subsets of a given cardinality Given a finite set `s`, the number of subsets of `s` with cardinality `n` is `s.ncard.choose n`. This is analog to [Finset.card_powersetCard](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Finset/Powerset.html#Finset.card_powersetCard) and [Set.powersetCard.card](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Data/Set/PowersetCard.html#Set.powersetCard.card) but with a set of sets rather than involving finsets. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 18/0 Mathlib/Data/Set/Card.lean 1 1 ['github-actions'] TwoFX
assignee:TwoFX
1-22771
1 day ago
13-76434
13 days ago
13-75908
13 days
37540 quantumsnow
author:quantumsnow
feat(CategoryTheory/MorphismProperty/Comma): add MorphismProperty.Arrow This is needed for the category of topological pairs (#36621). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor maintainer-merge 109/8 Mathlib/CategoryTheory/MorphismProperty/Comma.lean 1 20 ['chrisflav', 'github-actions', 'joelriou', 'quantumsnow'] robin-carlier
assignee:robin-carlier
1-22770
1 day ago
1-75808
1 day ago
1-82691
1 day
37718 SabrinaJewson
author:SabrinaJewson
feat(Order): add conversions from `Std` order typeclasses to Mathlib ones `{Preorder, PartialOrder, LinearOrder}.ofStd` exist to facilitate convenient translation from `Std` order typeclasses to Mathlib ones. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 366/0 Mathlib.lean,Mathlib/Order/Std.lean,MathlibTest/OrderOfStd.lean 3 2 ['github-actions'] bryangingechen
assignee:bryangingechen
1-22770
1 day ago
9-26149
9 days ago
9-26116
9 days
37808 JovanGerb
author:JovanGerb
feat(Translate): locally modify name guessing dictionaries This PR adds the feature to `to_dual` and `to_additive` that you can now locally modify the name translation dictionary. With this change, we run the risk of having the automated translations being harder to predict. For this reason, the changes to the dictionary do not persisted through imports. Instead, the change lasts until the end of the file (though it ignores sections). See https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Order.20dual.20tactic/near/580834166 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 111/39 Mathlib/Order/GaloisConnection/Basic.lean,Mathlib/Order/GaloisConnection/Defs.lean,Mathlib/Order/Interval/Set/Basic.lean,Mathlib/Order/Interval/Set/Disjoint.lean,Mathlib/Tactic/Translate/Core.lean,Mathlib/Tactic/Translate/GuessName.lean,Mathlib/Tactic/Translate/ToAdditive.lean,Mathlib/Tactic/Translate/ToDual.lean,MathlibTest/ToDual.lean 9 3 ['JovanGerb', 'bryangingechen', 'github-actions'] kim-em
assignee:kim-em
1-22769
1 day ago
3-62756
3 days ago
3-69464
3 days
37926 e-271828
author:e-271828
feat(Analysis/Analytic): add AnalyticAt properties for iterated dslope This PR adds three fundamental lemmas in the `AnalyticAt` namespace to establish the analyticity of the (iterated) `dslope` function: * `AnalyticAt.dslope_of_ne` * `AnalyticAt.iterate_dslope_of_ne` * `AnalyticAt.iterate_dslope` (at the singularity, using `has_fpower_series_iterate_dslope_fslope`) These properties are crucial for factoring out removable singularities iteratively while preserving analyticity. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 29/0 Mathlib/Analysis/Analytic/IsolatedZeros.lean 1 6 ['e-271828', 'github-actions', 'wwylele'] j-loreaux
assignee:j-loreaux
1-22768
1 day ago
4-76747
4 days ago
4-76221
4 days
37985 Raph-DG
author:Raph-DG
feat(Topology): intersections preserve Notherian-ness and Quasisober-ness In this PR we prove some basic topology lemmas about the preservation of noetherianness and quasisoberness under intersections. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 39/0 Mathlib/Topology/Constructions.lean,Mathlib/Topology/NoetherianSpace.lean,Mathlib/Topology/Sober.lean 3 5 ['Raph-DG', 'github-actions', 'grunweg', 'vihdzp'] PatrickMassot
assignee:PatrickMassot
1-22767
1 day ago
2-66570
2 days ago
2-75869
2 days
35846 BryceT233
author:BryceT233
feat(RingTheory/MvPowerSeries): adic completeness for `MvPowerSeries` This PR continues the work in #35670 and #35707 by adding typeclass instances for the completeness of `MvPowerSeries` when the index type is finite. --- - [x] depends on: #35789 - [x] depends on: #35707 - [x] depends on: #35670 - [x] depends on: #35597 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor large-import 25/0 Mathlib/RingTheory/AdicCompletion/Completeness.lean 1 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
1-13653
1 day ago
5-79724
5 days ago
5-79302
5 days
38047 mbkybky
author:mbkybky
feat(RingTheory/Finiteness/Ideal): `I` is finitely generated if `f(I)` and `I ∩ ker(f)` are finitely generated Let `f : R →+* S` be a surjective ring homomorphism, and let `I` be an ideal of `R`. If `f(I)` and `I ∩ ker(f)` are finitely generated ideals, then `I` is also finitely generated. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 13/3 Mathlib/RingTheory/Finiteness/Ideal.lean 1 1 ['github-actions'] nobody
1-11555
1 day ago
1-11619
1 day ago
1-12254
1 day
36739 mbkybky
author:mbkybky
feat(RingTheory): UFD criteria via height `1` prime ideals and localization We prove the following UFD criteria via height `1` prime ideals and localization: 1. Let `R` be a Noetherian domain. Then `R` is a UFD if and only if every height `1` prime ideal is principal. 2. Let `R` be a Noetherian domain, `x ∈ R` be a prime element. If `Rₓ` is a UFD, then `R` is also a UFD. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 117/2 Mathlib.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/UFD.lean,Mathlib/RingTheory/Localization/Away/Basic.lean 4 2 ['github-actions', 'tb65536'] mattrobball
assignee:mattrobball
1-10103
1 day ago
15-54575
15 days ago
30-51918
30 days
36951 mbkybky
author:mbkybky
feat(Algebra/Module): define stably free modules We define stably free modules: a module `M` over a commutative ring `R` is called stably free if there exists a finite free module `N` over `R` such that `M ⊕ N` is free. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
67/0 Mathlib.lean,Mathlib/Algebra/Module/StablyFree/Basic.lean 2 6 ['dagurtomas', 'github-actions', 'mbkybky'] dagurtomas
assignee:dagurtomas
1-10079
1 day ago
5-71901
5 days ago
24-42475
24 days
36910 Brian-Nugent
author:Brian-Nugent
feat(CategoryTheory): 4 and 5 lemmas for ComposableArrows n Adds versions of the 4 and 5 lemmas for morphisms in `ComposableArrows n`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 72/2 Mathlib/Algebra/Homology/ExactSequence.lean,Mathlib/CategoryTheory/Abelian/DiagramLemmas/Four.lean,Mathlib/CategoryTheory/ComposableArrows/Basic.lean 3 5 ['Brian-Nugent', 'erdOne', 'github-actions'] adamtopaz
assignee:adamtopaz
1-9929
1 day ago
1-9929
1 day ago
14-60648
14 days
31219 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): lemma about `IsBaseChange` under exact sequence In this lemma, we proved cokernel preserve `IsBaseChange S` and kernel preserve `IsBaseChange S` when `S` is flat. Co-authored-by: Wang Jingting --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 171/0 Mathlib.lean,Mathlib/RingTheory/Flat/IsBaseChange.lean,Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/RingTheory/TensorProduct/IsBaseChangeRightExact.lean 4 22 ['Thmoas-Guan', 'chrisflav', 'erdOne', 'github-actions', 'joelriou', 'mathlib4-merge-conflict-bot', 'urkud'] joelriou
assignee:joelriou
1-4426
1 day ago
1-66576
1 day ago
33-69446
33 days
31644 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): projective dimension of quotient regular sequence In this PR, we proved that for finitely generated module over Noetherian local ring, quotient by regular sequence increase the projective dimension by exactly its length. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 190/0 Mathlib.lean,Mathlib/RingTheory/Regular/ProjectiveDimension.lean 2 28 ['Thmoas-Guan', 'erdOne', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
1-4297
1 day ago
9-56994
9 days ago
14-775
14 days
37975 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): AdicCompletion of local ring is local In this PR, we proved that AdicCompletion of local ring wrt the maximal ideal is local ring with maximal ideal equal to the map of the original maximal ideal. Also, removing some old junk produced by myself. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory large-import 175/5 Mathlib/RingTheory/AdicCompletion/LocalRing.lean 1 11 ['BryceT233', 'Thmoas-Guan', 'github-actions'] nobody
1-3279
1 day ago
2-76817
2 days ago
3-1685
3 days
37934 Thmoas-Guan
author:Thmoas-Guan
feat(FieldTheory): definition of transcendental separable field extension In this PR, we intriduced the concept of separably generated field extension and transcendental separable field extension. Further properties would be in #37838 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
69/0 Mathlib.lean,Mathlib/FieldTheory/TranscendentalSeparable.lean 2 1 ['github-actions'] nobody
1-3115
1 day ago
3-8968
3 days ago
3-9186
3 days
38052 WenrongZou
author:WenrongZou
feat(FormalGroup): `F(X,0)=X` and `F(0,X)=X` In this PR, I prove that given a formal group law `F`, then `F(X,0) = X` and `F(0,X) = X`. And modify the definition of `FormalGroup.Point` to be a subtype. And prove that this subtype is a `AddZeroClass`. Eventually we will prove that this is a `AddGroup`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 224/8 Mathlib/RingTheory/FormalGroup/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Substitution.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/Evaluation.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean 5 10 ['WenrongZou', 'eric-wieser', 'github-actions'] nobody
1-3071
1 day ago
1-33805
1 day ago
1-33832
1 day
37645 joelriou
author:joelriou
feat(CategoryTheory/Limits): `sigmaConst` preserves colimits More precisely `sigmaConst.obj R` commutes with colimits. We also compute the cokernel of `(sigmaConst.obj R).map f` when `f` is a map in `Type*`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory maintainer-merge 143/49 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Free.lean,Mathlib/CategoryTheory/Limits/Preserves/SigmaConst.lean 3 8 ['dagurtomas', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'robin-carlier'] robin-carlier
assignee:robin-carlier
1-2780
1 day ago
1-2802
1 day ago
10-47636
10 days
29434 ntapiam
author:ntapiam
feat(NonAssoc/LieAdmissible): prove every ring/algebra is LieAdmissible -awaiting-author t-algebra new-contributor
label:t-algebra$
32/6 Mathlib/Algebra/NonAssoc/LieAdmissible/Defs.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
0-86313
23 hours ago
0-86374
23 hours ago
1-542
1 day
38058 nielstron
author:nielstron
doc(Computability): fix typo in TM Config description Corrects minor grammatical error in comments. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor maintainer-merge 3/3 Mathlib/Computability/TuringMachine/Config.lean 1 6 ['github-actions', 'grunweg', 'nielstron'] nobody
0-86220
23 hours ago
1-538
1 day ago
1-968
1 day
37418 vasnesterov
author:vasnesterov
feat(Tactic/ComputeAsymptotics/Multiseries): introduce `Multiseries.Sorted` * Introduce `Multiseries.leadingExp` - the leading exponent of a multiseries, along with a few structural lemmas. * Introduce `Multiseries.Sorted` predicate stating that exponents in a multiseries as a list are strictly decreasing. * Provide constructors (`nil`, `cons`), a coinductive principle, and basic constructions for `Sorted`. --- This is a part of the `compute_asymptotics` tactic (#28291). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 201/0 Mathlib/Tactic/ComputeAsymptotics/Multiseries/Defs.lean 1 29 ['github-actions', 'joneugster', 'mathlib-merge-conflicts', 'vasnesterov'] joneugster
assignee:joneugster
0-86152
23 hours ago
1-426
23 hours ago
15-33779
15 days
37501 xgenereux
author:xgenereux
feat(DedekindDomain/AdicValuation): `intValuation` on uniformizers is `exp (-1)` This PR add the lemma `intValuation_val_uniformizer_eq` which is an application of #37497. Note that I've had to reorganize the files a little bit: 1. I wanted to import `Valuation.Discrete.Basic` in `AdicValuation` but this was not possible since there was a dependency in the other direction (`Valuation.Discrete.Basic` depended on `AdicValuation`). I don't think this makes sense - we want to have access to basic definitions on general valuation in an application file like `AdicValuation`. ~~The reorganization consist of moving the `IsDiscreteValuationRing` of `Valuation.Discrete.Basic` to `AdicValuation`.~~ The reorganization consist of moving the `IsDiscreteValuationRing` section to a new file. 2. I moved some lemmas out of `Mathlib.RingTheory.Valuation.Discrete.RankOne` to the parent file `Mathlib.RingTheory.Valuation.Discrete.Basic.`. These lemmas do not need the richer imports from `RankOne` and are needed in my application. Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- - [ ] depends on: #37497 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 204/167 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Reduction.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/OrderOfVanishing/Noetherian.lean,Mathlib/RingTheory/Valuation/Discrete/Basic.lean,Mathlib/RingTheory/Valuation/Discrete/IsDiscreteValuationRing.lean,Mathlib/RingTheory/Valuation/Discrete/RankOne.lean 8 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-83442
23 hours ago
0-83496
23 hours ago
7-12141
7 days
37806 Raph-DG
author:Raph-DG
chore(Topology): rename `Function.locallyFinsupp` to `Function.LocallyFinsupp` And move single from `LocallyFinSuppWithin` to `LocallyFinsupp`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 343/146 Mathlib/Analysis/Complex/JensenFormula.lean,Mathlib/Analysis/Complex/ValueDistribution/FirstMainTheorem.lean,Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Asymptotic.lean,Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Basic.lean,Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Meromorphic/FactorizedRational.lean,Mathlib/Analysis/Meromorphic/NormalForm.lean,Mathlib/Topology/LocallyFinsupp.lean 8 6 ['Raph-DG', 'chrisflav', 'github-actions', 'jcommelin'] nobody
0-83114
23 hours ago
0-83162
22 hours ago
4-10648
4 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 p) have coheight zero in the specialization order on X. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import 104/0 Mathlib/Order/Hom/Basic.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Order/Minimal.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/Sober.lean 5 1 ['github-actions'] nobody
0-82074
22 hours ago
0-82142
22 hours ago
0-84938
23 hours
37696 loefflerd
author:loefflerd
refactor(OnePoint/ProjectiveLine): use Pi instead of Prod At the moment `OnePoint.equivProjectivization` identifies the one-point compactification of `K` with the projective space on `K x K`. This is slightly inconvenient since most of mathlib's linear algebra prefers `Fin n → K`. This PR uses the Pi type instead of the product. This is preparatory to adding more material about fixed points of Moebius transformations, etc, in future PR's. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
35/36 Mathlib/Topology/Compactification/OnePoint/ProjectiveLine.lean 1 3 ['bjoernkjoshanssen', 'github-actions', 'loefflerd'] dagurtomas
assignee:dagurtomas
0-77016
21 hours ago
9-62102
9 days ago
9-61576
9 days
27493 themathqueen
author:themathqueen
feat(RingTheory/Coalgebra): define Frobenius algebra A Frobenius algebra `A` has the structure of both an algebra and a coalgebra such that: `(mul ⊗ id) ∘ assoc.symm ∘ (id ⊗ comul) = comul ∘ mul = (id ⊗ mul) ∘ assoc ∘ (comul ⊗ id)`. In diagrams this law looks like: ![](https://ncatlab.org/nlab/files/frobenius_laws.jpg) It suffices to show that `(mul ⊗ id) ∘ assoc.symm ∘ (id ⊗ comul) = (id ⊗ mul) ∘ assoc ∘ (comul ⊗ id)`. --- - [x] depends on: #27567 - [x] depends on: #27569 - [x] depends on: #32245 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 114/0 Mathlib.lean,Mathlib/RingTheory/FrobeniusAlgebra/Basic.lean 2 25 ['YaelDillies', 'erdOne', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'themathqueen'] alreadydone
assignee:alreadydone
0-76048
21 hours ago
4-68541
4 days ago
33-12918
33 days
37602 loefflerd
author:loefflerd
feat(NumberTheory/ModularForms): arithmetic subgroups act properly discontinuously Arithmetic subgroups (subgroups of GL(2, R) commensurable with SL(2, Z)) act properly discontinuously on the upper half-plane. --- - [ ] depends on: #37601 t-topology large-import 128/6 Mathlib.lean,Mathlib/Analysis/Complex/UpperHalfPlane/ProperAction.lean,Mathlib/NumberTheory/ModularForms/ArithmeticSubgroups.lean,Mathlib/Topology/Algebra/Group/DiscontinuousSubgroup.lean 4 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-73967
20 hours ago
0-78286
21 hours ago
0-79124
21 hours
35906 scp020
author:scp020
feat(Combinatorics/SimpleGraph/Walk): chords of walks Define `Walk.IsChord` and `Walk.IsChordless` predicates in a new file `SimpleGraph/Walk/Chord.lean`. See "chord" in https://en.wikipedia.org/wiki/Glossary_of_graph_theory --- [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Walk.2EIsChordless.20live.20in.20mathlib.3F/with/575277309) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor maintainer-merge 59/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Chord.lean 2 68 ['SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'scp020'] YaelDillies
assignee:YaelDillies
0-71812
19 hours ago
11-21068
11 days ago
36-10407
36 days
36201 themathqueen
author:themathqueen
feat(Analysis/CStarAlgebra): set of star projections equals the extreme points of the nonnegative closed unit ball An element in a non-unital C⋆-algebra is a projection iff it is an extreme point of the nonnegative closed unit ball. This is from 1.6.2 in Sakai's C⋆-algebras and W⋆-algebras (the proof is different though). Co-authored-by: Jon Bannon <59937998+JonBannon@users.noreply.github.com> --- - [x] depends on: #35997 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 103/0 Mathlib.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/Analysis/CStarAlgebra/Extreme.lean,docs/references.bib 4 13 ['github-actions', 'j-loreaux', 'loefflerd', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'themathqueen'] mcdoll
assignee:mcdoll
0-70449
19 hours ago
6-30467
6 days ago
35-59019
35 days
37908 WenrongZou
author:WenrongZou
feat(LocalField): add an instance `IsAdicComplete 𝓂[K] 𝒪[K]` In this PR, I add an instance `IsAdicComplete 𝓂[K] 𝒪[K]`. Deletions: proof_wanted: isAdicComplete. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 31/2 Mathlib/Algebra/Module/Submodule/Defs.lean,Mathlib/NumberTheory/LocalField/Basic.lean 2 17 ['WenrongZou', 'github-actions', 'tb65536'] tb65536
assignee:tb65536
0-69535
19 hours ago
0-69592
19 hours ago
5-23059
5 days
38060 vihdzp
author:vihdzp
doc(Algebra/Order/SuccPred): remove outdated TODO Both of these lemmas were made `simp` a while ago. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-algebra t-order easy
label:t-algebra$
1/7 Mathlib/Algebra/Order/SuccPred.lean 1 2 ['github-actions', 'plp127'] nobody
0-67665
18 hours ago
0-76846
21 hours ago
0-76378
21 hours
38064 JovanGerb
author:JovanGerb
feat(CategoryTheory/CommSq): use `to_dual` This PR uses `to_dual` on `CommSq`. There are two possible ways to dualize `CommSq`, due to its inherent symmetry. I picked to option that is consistent with `CommSq.op` and which allows dualizing `LiftStruct` to itself. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 43/17 Mathlib/CategoryTheory/CommSq.lean 1 1 ['github-actions'] nobody
0-67209
18 hours ago
0-67265
18 hours ago
0-68521
19 hours
37355 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): refactor `smulShortComplex` Use `LinearMap.lsmul` for the `f` of `ModuleCat.smulShortComplex`, also providing new APIs for it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 20/21 Mathlib/RingTheory/Regular/Category.lean 1 16 ['Thmoas-Guan', 'chrisflav', 'github-actions', 'robin-carlier'] chrisflav
assignee:chrisflav
0-66265
18 hours ago
2-8616
2 days ago
16-51177
16 days
32058 Thmoas-Guan
author:Thmoas-Guan
feat(Algebra): category version Baer criterion 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`. --- - [x] depends on: #36980 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-category-theory
label:t-algebra$
139/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Homology/ShortComplex/ModuleCat.lean 3 33 ['Thmoas-Guan', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] dagurtomas
assignee:dagurtomas
0-66080
18 hours ago
6-719
6 days ago
24-17293
24 days
38029 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): lemmas for minimal primes to lessen defeq abuse Remove access by `.1.1` and `.1.2` to mem minimal primes. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 74/59 Mathlib/RingTheory/Ideal/AssociatedPrime/Localization.lean,Mathlib/RingTheory/Ideal/Height.lean,Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Basic.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Colon.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Localization.lean 6 3 ['Thmoas-Guan', 'github-actions', 'themathqueen'] nobody
0-65938
18 hours ago
2-28
1 day ago
1-85902
1 day
28684 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): definition of regular ring In this PR, we define regular ring as every localization is regular local ring, and proved polynomial over regular ring is regular. --- - [x] depends on: #28682 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 59/1 Mathlib/RingTheory/RegularLocalRing/Defs.lean 1 39 ['Thmoas-Guan', 'artie2000', 'erdOne', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
0-65427
18 hours ago
10-15281
10 days ago
14-41568
14 days
38069 grunweg
author:grunweg
doc(Tactic/StacksAttribute): fix outdated doc-string --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation easy t-meta 2/1 Mathlib/Tactic/StacksAttribute.lean 1 1 ['github-actions'] nobody
0-64305
17 hours ago
0-64385
17 hours ago
0-63859
17 hours
38068 mbkybky
author:mbkybky
doc(RingTheory/MvPowerSeries): fix typos in module docstrings --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-ring-theory easy 5/5 Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean,Mathlib/RingTheory/MvPowerSeries/LexOrder.lean 2 1 ['github-actions'] nobody
0-63661
17 hours ago
0-64491
17 hours ago
0-63965
17 hours
38028 Thmoas-Guan
author:Thmoas-Guan
chore(RingTheory/Regular): rename file Rename `RingTheory.Regular.Depth` into `RingTheory.Regular.LinearMap` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 113/102 Mathlib.lean,Mathlib/RingTheory/Regular/Depth.lean,Mathlib/RingTheory/Regular/LinearMap.lean 3 8 ['Thmoas-Guan', 'chrisflav', 'github-actions', 'mathlib-merge-conflicts'] nobody
0-62204
17 hours ago
0-62204
17 hours ago
1-76779
1 day
38067 joelriou
author:joelriou
feat(AlgebraicTopology/SimplicialSet): the subdivision functor --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology 214/3 Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Nerve.lean,Mathlib/AlgebraicTopology/SimplicialSet/Subdivision.lean,Mathlib/Order/Category/PartOrd.lean,Mathlib/Order/NonemptyFiniteChains.lean,docs/references.bib 7 1 ['github-actions'] nobody
0-62018
17 hours ago
0-62073
17 hours ago
0-61792
17 hours
28462 joelriou
author:joelriou
feat(AlgebraicTopology/SimplicialSet): the relative cell complex attached to a rank function for a pairing This PR gives one of the main results in the combinatorial approach to (strong) anodyne extensions by Sean Moss, *Another approach to the Kan-Quillen model structure*. For a suitable combinatorial data for a subcomplex `A` of a simplicial set `X` (a proper pairing `P` of `A`), it was previously shown that if the ancestrality relation for this pairing `P` is well founded, then there exists a rank function for the pairing #28351. In this PR, we assume that we have such a rank function, and we show that the inclusion of `A` in `X` is a relative cell complex w.r.t. horn inclusions, i.e. it is a transfinite composition of pushouts of coproducts of horn inclusions. The API allows to keep track of which horns were used, so that this theory can be used in order to study anodyne extensions #37321 as well as inner anodyne extensions #37869. In future PRs, pairings for specific subcomplexes of certain simplicial sets shall be constructed, and this will allow the study of stabiliity properties of anodyne extensions (with respect to binary products and with respect to the subdivision functor), and by adjunction, we shall be able to deduce results regarding Kan fibrations of simplicial sets. From https://github.com/joelriou/topcat-model-category --- Some `erw` were added in https://github.com/leanprover-community/mathlib4/pull/28462/changes/72615578b6f671436f9c58a77a97190e671f9584 following the refactor of the category of types #36613. I do not see how to remove them cleanly. - [x] depends on: #37333 - [x] depends on: #37668 - [x] depends on: #37334 - [x] depends on: #37332 - [x] depends on: #37335 - [x] depends on: #32515 - [x] depends on: #32517 - [x] depends on: #32178 - [x] depends on: #32180 - [x] depends on: #31122 - [x] depends on: #28351 - [x] depends on: #28346 - [x] depends on: #28336 - [x] depends on: #28332 - [x] depends on: #28330 - [x] depends on: #28224 - [x] depends on: #27968 - [x] depends on: #28034 - [x] depends on: #26076 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology 644/0 Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/IsUniquelyCodimOneFace.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Pairing.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/RelativeCellComplex.lean,Mathlib/CategoryTheory/Limits/Types/Coproducts.lean 5 13 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] dagurtomas
assignee:dagurtomas
0-61970
17 hours ago
0-82906
22 hours ago
0-82381
22 hours
37628 JadAbouHawili
author:JadAbouHawili
chore: Rename Xor' to Xor Rename `Xor'` to `Xor` per the comment which recommended doing so after `v4.25.0-rc1` Moves: - Xor' --> Xor [#new members > Why Xor' and not Xor? Why `Or` and not `OrOp` for `Prop`? @ 💬](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Why.20Xor.27.20and.20not.20Xor.3F.20Why.20.60Or.60.20and.20not.20.60OrOp.60.20for.20.60Prop.60.3F/near/583510533) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 75/66 Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/Ring/Int/Parity.lean,Mathlib/Algebra/Ring/Parity.lean,Mathlib/Data/Bool/Basic.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Set/Disjoint.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/GroupTheory/Index.lean,Mathlib/Logic/Basic.lean,Mathlib/NumberTheory/RatFunc/Ostrowski.lean,Mathlib/Order/SymmDiff.lean,Mathlib/Tactic/ITauto.lean,Mathlib/Topology/Algebra/Order/Archimedean.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/Instances/AddCircle/DenseSubgroup.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/Profinite.lean,MathlibTest/itauto.lean 18 20 ['JadAbouHawili', 'Ruben-VandeVelde', 'eric-wieser', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] nobody
0-61445
17 hours ago
0-68241
18 hours ago
11-14784
11 days
38074 WilliamCoram
author:WilliamCoram
refactor: PowerSeries.gaussNorm We refactor the definition of the gauss norm on power series to an abbrev of the gauss norm on multivariate power series, and remove the use of `Funlike`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor large-import 86/50 Mathlib/RingTheory/Polynomial/GaussNorm.lean,Mathlib/RingTheory/PowerSeries/GaussNorm.lean 2 2 ['github-actions'] riccardobrasca
assignee:riccardobrasca
0-60254
16 hours ago
0-60321
16 hours ago
0-60822
16 hours
38041 yuanyi-350
author:yuanyi-350
chore(Analysis): golf Order, Asymptotic, and Between This PR extracts from #37968 the changes to the following files: - `Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean` - `Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Asymptotic.lean` - `Mathlib/Analysis/Convex/Between.lean` This is intended to split those refactors into a standalone PR. t-analysis 13/68 Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Asymptotic.lean,Mathlib/Analysis/Convex/Between.lean 2 3 ['github-actions', 'themathqueen', 'yuanyi-350'] ADedecker
assignee:ADedecker
0-59780
16 hours ago
1-61266
1 day ago
1-60740
1 day
38033 JadAbouHawili
author:JadAbouHawili
feat(Data/Set): add `subsingleton_iff_eq_empty_or_singleton` --- proof needs to be golfed, got lost in the api so any feedback/review is appreciated [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-data easy maintainer-merge 3/0 Mathlib/Data/Set/Subsingleton.lean 1 11 ['JadAbouHawili', 'github-actions', 'themathqueen', 'vihdzp'] nobody
0-58240
16 hours ago
0-68336
18 hours ago
1-68904
1 day
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`. --- 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. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 42/52 Archive/Wiedijk100Theorems/Konigsberg.lean,Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Combinatorics/SimpleGraph/Maps.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/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/ModelTheory/Graph.lean,Mathlib/Order/Cover.lean,Mathlib/Order/RelClasses.lean 19 7 ['SnirBroshi', 'Vierkantor', 'YaelDillies', 'github-actions'] nobody
0-56988
15 hours ago
5-82709
5 days ago
5-85265
5 days
37552 pitmonticone
author:pitmonticone
feat(MeasureTheory/BorelSpace): add `measurable_iSup_of_lowerSemicontinuous` Add `measurable_biSup_of_continuousOn`: the supremum of a family of measurable functions parameterized by a separable pseudometric space is measurable, provided the family is continuous on the parameter set. Upstreamed from the [Carleson](https://github.com/fpvandoorn/carleson) project. Co-authored-by: Jeremy Tan Jie Rui --- carleson t-measure-probability 25/0 Mathlib/MeasureTheory/Constructions/BorelSpace/Order.lean 1 9 ['CoolRmal', 'github-actions', 'grunweg', 'pitmonticone'] kex-y
assignee:kex-y
0-56583
15 hours ago
12-69205
12 days ago
13-51036
13 days
37464 martinwintermath
author:martinwintermath
feat(Geometry/Convex/Cone): Minor additions to pointed cones Minor additions to pointed cones: * `PointedCone.ofSubmodule_le_ofSubmodule` and `PointedCone.ofSubmodule_lt_ofSubmodule` * `PointedCone.hull_le_span` as a short form of `Submodule.span_le_restrictScalars R≥0 R s` In preparation for #36605. Co-authored by: Artie Khovanov --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 20/12 Mathlib/Geometry/Convex/Cone/Pointed.lean 1 14 ['artie2000', 'github-actions', 'martinwintermath', 'mathlib-merge-conflicts', 'ooovi'] nobody
0-55344
15 hours ago
0-56336
15 hours ago
14-12497
14 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 362/0 Mathlib.lean,Mathlib/RingTheory/Valuation/ValuationSpectrum.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Comap.lean 3 39 ['CBirkbeck', 'adamtopaz', 'chrisflav', 'dagurtomas', 'faenuccio', 'github-actions', 'jjdishere', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
0-55323
15 hours ago
1-69996
1 day ago
1-69623
1 day
38078 yuanyi-350
author:yuanyi-350
refactor: golf `ValueDistribution/LogCounting/Asymptotic` `ConstantSpeed` `Analytic/Within` This PR selectively ports file-level changes from #37968. Included files: - `Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Asymptotic.lean` - `Mathlib/Analysis/ConstantSpeed.lean` - `Mathlib/Analysis/Analytic/Within.lean` Only these file changes are included. No build or compile check was run intentionally. t-analysis 32/73 Mathlib/Analysis/Analytic/Within.lean,Mathlib/Analysis/Complex/ValueDistribution/LogCounting/Asymptotic.lean,Mathlib/Analysis/ConstantSpeed.lean 3 2 ['github-actions', 'yuanyi-350'] nobody
0-54018
15 hours ago
0-56277
15 hours ago
0-55751
15 hours
37915 Jun2M
author:Jun2M
feat(Topology/CWComplex): 1-skeleton `Graph` of `CWComplex` This PR introduces `CWComplex.OneSkeletonGraph`, a graph with 0-dim cells as vertices and 1-dim cells as edges. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 136/1 Mathlib.lean,Mathlib/Topology/CWComplex/Classical/Basic.lean,Mathlib/Topology/CWComplex/Classical/Graph.lean 3 16 ['Jun2M', 'github-actions', 'jcommelin', 'scholzhannah'] jcommelin
assignee:jcommelin
0-52619
14 hours ago
2-56056
2 days ago
5-1761
5 days
37870 Jun2M
author:Jun2M
feat(Combinatorics/Graph): `Simple` typeclass for `Graph` This PR introduces two type classes on `Graph`: `Loopless` and `Simple`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 93/0 Mathlib.lean,Mathlib/Combinatorics/Graph/Simple.lean 2 1 ['github-actions'] nobody
0-52426
14 hours ago
5-43592
5 days ago
5-43796
5 days
37674 gasparattila
author:gasparattila
feat(Topology/Sets): separation properties of `(Nonempty)Compacts` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 79/0 Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Sets/VietorisTopology.lean 2 12 ['gasparattila', 'github-actions', 'mathlib-merge-conflicts', 'scholzhannah'] PatrickMassot
assignee:PatrickMassot
0-52045
14 hours ago
0-52070
14 hours ago
9-11621
9 days
38082 tb65536
author:tb65536
feat(RingTheory/Ideal/Over): an ideal lying under a prime is prime This PR adds a missing API lemma for `Ideal.LiesOver`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
5/1 Mathlib/NumberTheory/RamificationInertia/Ramification.lean,Mathlib/RingTheory/Ideal/Over.lean 2 1 ['github-actions'] nobody
0-51927
14 hours ago
0-51927
14 hours ago
0-51402
14 hours
36219 gasparattila
author:gasparattila
chore(Order/SupClosed): use `to_dual` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 66/215 Mathlib/Order/ConditionallyCompleteLattice/Finset.lean,Mathlib/Order/SupClosed.lean 2 6 ['github-actions', 'mathlib-merge-conflicts'] nobody
0-51313
14 hours ago
0-51371
14 hours ago
4-55056
4 days
33143 wwylele
author:wwylele
feat(PowerSeries): pentagonal number theorem The proof is split in two files: `Mathlib/Topology/Algebra/InfiniteSum/Pentagonal.lean` for the algebraic part, and `Mathlib/RingTheory/PowerSeries/Pentagonal.lean` for the summability part. In the near future, I also plan to prove the real/complex version that branches off from the algebraic part. --- - [ ] depends on: #30436 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
427/1 Mathlib.lean,Mathlib/RingTheory/PowerSeries/Pentagonal.lean,Mathlib/Topology/Algebra/InfiniteSum/Pentagonal.lean,docs/1000.yaml 4 43 ['copilot-pull-request-reviewer', 'github-actions', 'jcommelin', 'mathlib4-dependent-issues-bot', 'tb65536', 'urkud', 'vihdzp', 'wwylele'] chrisflav
assignee:chrisflav
0-50810
14 hours ago
63-61194
63 days ago
110-288
110 days
38085 dagurtomas
author:dagurtomas
feat(CategoryTheory): define profunctors --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 151/0 Mathlib.lean,Mathlib/CategoryTheory/Profunctor/Basic.lean 2 1 ['github-actions'] nobody
0-50806
14 hours ago
0-50849
13 hours ago
0-50393
13 hours
38083 tb65536
author:tb65536
feat(RingTheory/DiscreteValuationRing/Basic): compute the length of the quotient of a DVR This PR computes the length of the quotient of a DVR by constructing an order isomorphism between the ideals and the order dual of `ENat`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra large-import
label:t-algebra$
43/0 Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean 2 1 ['github-actions'] nobody
0-50498
14 hours ago
0-50498
13 hours ago
0-49973
13 hours
38084 chrisflav
author:chrisflav
chore(RingTheory/Localization): rename and generalize `IsLocalization.at_units` We also move it from `Localization.Defs` to `Localization.Basic`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 31/13 Mathlib/Algebra/Algebra/Basic.lean,Mathlib/RingTheory/LocalProperties/Basic.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean,Mathlib/RingTheory/Localization/FractionRing.lean 5 1 ['github-actions'] nobody
0-50378
13 hours ago
0-50431
13 hours ago
0-50111
13 hours
37414 vasnesterov
author:vasnesterov
feat(Tactic/ComputeAsymptotics/Multiseries): predicates for `UnitMonomial` Introduce `FirstNonzeroIsPos`, `FirstNonzeroIsNeg` and `AllZero` predicates on lists of real numbers. When applied to a list of exponents of a monomial in a well-formed basis, this trichotomy determines its asymptotic behaviour: `FirstNonzeroIsPos` means it tends to infinity, `FirstNonzeroIsNeg` means it tends to zero and `AllZero` means it tends to a constant. --- This is a part of the `compute_asymptotics` tactic (#28291). [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 148/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Monomial/Predicates.lean 3 15 ['WilliamCoram', 'github-actions', 'j-loreaux', 'joneugster', 'vasnesterov'] joneugster
assignee:joneugster
0-50095
13 hours ago
0-50848
13 hours ago
14-29280
14 days
38081 tb65536
author:tb65536
feat(LinearAlgebra/Dimension/StrongRankCondition): `algebraMap` bijective implies rank one This PR proves that if `algebraMap R S` is bijective, then `S` has rank one as an `R`-algebra. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra maintainer-merge
label:t-algebra$
18/0 Mathlib/LinearAlgebra/Dimension/StrongRankCondition.lean 1 8 ['github-actions', 'tb65536', 'themathqueen'] nobody
0-49283
13 hours ago
0-49112
13 hours ago
0-51428
14 hours
26345 mans0954
author:mans0954
feat(Analysis/LocallyConvex/Polar): Bipolar theorem The bipolar theorem states that the polar of the polar of a set `s` is equal to the closed absolutely convex hull of `s`. The argument here follows Conway, Chapter V. 1.8. This PR continues the work from #20843. Original PR: https://github.com/leanprover-community/mathlib4/pull/20843 - [x] depends on: #27316 t-analysis 171/6 Mathlib.lean,Mathlib/Analysis/LocallyConvex/AbsConvex.lean,Mathlib/Analysis/LocallyConvex/Bipolar.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/Normed/Module/Dual.lean,Mathlib/Topology/Algebra/Module/Spaces/WeakBilin.lean 6 122 ['JonBannon', 'eric-wieser', 'faenuccio', 'github-actions', 'goliath-klein', 'j-loreaux', 'leanprover-community-bot-assistant', 'mans0954', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mcdoll', 'themathqueen', 'vihdzp'] faenuccio and j-loreaux
assignee:j-loreaux assignee:faenuccio
0-46866
13 hours ago
0-46899
12 hours ago
18-1737
18 days
37998 chrisflav
author:chrisflav
chore(RingTheory): `Module.Flat` is invariant under `ULift` From Proetale. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 126/3 Mathlib/LinearAlgebra/TensorProduct/Tower.lean,Mathlib/RingTheory/Flat/Stability.lean,Mathlib/RingTheory/RingHom/Flat.lean,Mathlib/RingTheory/TensorProduct/Maps.lean 4 13 ['chrisflav', 'erdOne', 'eric-wieser', 'github-actions'] riccardobrasca
assignee:riccardobrasca
0-46511
12 hours ago
2-67470
2 days ago
2-66944
2 days
37643 dupuisf
author:dupuisf
feat(CStarAlgebra): `x ↦ x ^ p` is operator concave for `p ∈ [0, 1]` This PR shows that `x ↦ x ^ p` is operator concave (i.e. `CFC.nnrpow` is concave) on positive elements of a C*-algebra for `p ∈ [0, 1]`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 192/12 Mathlib/Algebra/Algebra/Unitization.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Unital.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/IntegralRepresentation.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Order.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/RingInverseOrder.lean 8 9 ['dupuisf', 'github-actions', 'j-loreaux'] j-loreaux
assignee:j-loreaux
0-45435
12 hours ago
0-45435
12 hours ago
9-64304
9 days
38087 kbuzzard
author:kbuzzard
perf: add some fast_instance% --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) `fast_instance%` experts should take a look at this and say which if any are spurious. I confess to throwing them around rather randomly. Zulip thread [#mathlib4 > random fast_instance% makes gains @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/random.20fast_instance.25.20makes.20gains/near/585737520) t-algebra
label:t-algebra$
10/9 Mathlib/Algebra/EuclideanDomain/Field.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/Valued/WithVal.lean 3 3 ['github-actions', 'kbuzzard', 'leanprover-radar'] nobody
0-44115
12 hours ago
0-44146
12 hours ago
0-43636
12 hours
37865 Jun2M
author:Jun2M
feat(Combinatorics/Graph): Edge cut of `Graph` This PR introduces - `edgeCut`: A function on set of vertices that returns the set of edges with exactly one end in the set. - `IsEdgeCut`: A predicate for set of edges that promises it is `edgeCut` of some set. - `IsBridge`: An edge `e` is a bridge iff it is a singleton edge cut. - `IsBond`: An edge Set `B` is bond iff it is minimal nonempty edge cut. --- - [x] depends on: #35879 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 194/0 Mathlib/Combinatorics/Graph/Connected/EdgeCut.Lean,Mathlib/Combinatorics/Graph/Subgraph.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-41114
11 hours ago
0-58771
16 hours ago
0-58683
16 hours
36104 LarsenClose
author:LarsenClose
feat(CategoryTheory/Endofunctor/Algebra): add Adámek's initial algebra theorem Adds Adámek's initial algebra theorem for endofunctors on categories with an initial object. Given `F : C ⥤ C` where `C` has an initial object, if the initial chain `⊥ → F(⊥) → F²(⊥) → ⋯` has a colimit preserved by `F`, then `F` has an initial algebra whose structure map is an isomorphism. New files: - `InitialChain.lean`: defines `iterateObj F n`, `iterateMap F n`, and `initialChain F : ℕ ⥤ C` via `Functor.ofSequence`. - `ChainShift.lean`: constructs `shiftCocone` and `extendCocone`, proves `shiftCoconeIsColimit` (shifted cocone inherits colimit). - `Adamek.lean`: main result. Constructs the initial `F`-algebra `adamek F c hc` and proves `adamek_isInitial`. Convenience API: `adamekFromInitial`, `adamekStructureIso`, `adamekFixedPoint`. 0 sorry. References Adámek 1974. ### AI disclosure Developed with assistance from Claude (Anthropic). AI was used for proof exploration, convention checking, and PR preparation. All mathematical content and proof strategy reviewed and understood by the author. t-category-theory new-contributor LLM-generated 462/0 Mathlib.lean,Mathlib/CategoryTheory/Endofunctor/Algebra/Adamek.lean,Mathlib/CategoryTheory/Endofunctor/Algebra/ChainShift.lean,Mathlib/CategoryTheory/Endofunctor/Algebra/InitialChain.lean,docs/references.bib 5 28 ['LarsenClose', 'dagurtomas', 'euprunin', 'github-actions', 'grunweg', 'joelriou'] joelriou
assignee:joelriou
0-39393
10 hours ago
0-39394
10 hours ago
16-41918
16 days
37864 JovanGerb
author:JovanGerb
chore: reorder arguments of `AddMonoidHom.map_zsmul` This PR modifies `AddMonoidHom.map_nsmul`, `AddMonoidHom.map_zsmul` and `AddMonoidHom.map_zsmul'` so that their order of arguments is as expected. This is then consistent with `map_nsmul`/`map_zsmul`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
23/24 Mathlib/Algebra/Category/Grp/ZModuleEquivalence.lean,Mathlib/Algebra/Group/Hom/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/Module/CharacterModule.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Analysis/Complex/Circle.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean,Mathlib/CategoryTheory/Linear/Basic.lean,Mathlib/CategoryTheory/Linear/LinearFunctor.lean,Mathlib/CategoryTheory/Preadditive/FunctorCategory.lean 10 4 ['JovanGerb', 'github-actions', 'themathqueen'] nobody
0-39251
10 hours ago
4-27761
4 days ago
4-31577
4 days
38065 JovanGerb
author:JovanGerb
chore(CategoryTheory/Comma/Arrow): restore use of `inferInstanceAs` This PR fixes the category instance on `Arrow` to be less leaky. This is a fix after the refactor in #37764. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 4/2 Mathlib/CategoryTheory/Comma/Arrow.lean 1 4 ['JovanGerb', 'github-actions', 'leanprover-radar'] nobody
0-39160
10 hours ago
0-68925
18 hours ago
0-68399
18 hours
37815 Jun2M
author:Jun2M
feat(Analysis/SpecialFunctions/Complex/Circle): Anticlockwise Path on `Circle` This PR introduces explicit path constructions on the unit circle (`Circle`) and proves fundamental topological properties regarding its connectedness. Main Definitions: - `Circle.angleDiff`: The directed angle length from `x` to `y` along the anti-clockwise arc, using the principal arg. - `Circle.path`: An explicit `Path x y` on the circle traversing in the anti-clockwise direction, constructed using `Circle.exp`. Main Instances and Theorems: - `instPathConnectedSpaceCircle` - `Circle.range_path_union_range_path` & `Circle.range_path_inter_range_path`: The anti-clockwise path from `x` to `y` and the path from `y` to `x` are internally disjoint and covers the entire circle. - `Circle.singleton_compl_isPathConnected`: The circle minus a single point remains path-connected. - `Circle.not_isPreconnected_pair_compl`: The circle minus two distinct points is disconnected (not preconnected). --- - [x] depends on: #37813 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 207/17 Mathlib/Analysis/Convex/PathConnected.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Complex/Circle.lean 3 26 ['Jun2M', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues'] j-loreaux
assignee:j-loreaux
0-38928
10 hours ago
0-53006
14 hours ago
6-32265
6 days
36743 Jun2M
author:Jun2M
feat(Combinatorics/GraphLike): introduce `GraphLike` typeclass 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. This PR generalises #35776 to also unify `Graph`. ### Main definitions * `GraphLike α β Gr`: A typeclass parameterized by a vertex type `α`, dart type `β` and a graph type `Gr` (with `α` as an `outParam`). * `GraphLike.verts : Set α`: The set of vertices of the graph. * `GraphLike.darts : Set β`: The set of darts of the graph. * `GraphLike.Adj : α → α → Prop`: The adjacency relation, defined by default as `Nonempty (darts G u v)`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 281/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/GraphLike.lean,Mathlib/Combinatorics/GraphLike/Basic.lean,Mathlib/Combinatorics/SimpleGraph/GraphLike.lean 4 45 ['IvanRenison', 'Jun2M', 'SnirBroshi', 'github-actions', 'lauramonk', 'mathlib-merge-conflicts'] nobody
0-38173
10 hours ago
8-31961
8 days ago
30-830
30 days
37622 jano-wol
author:jano-wol
feat: trace-nilpotency criterion Trace-nilpotency criterion --- This pull request introduces a proof of the trace-nilpotency criterion over algebraically closed fields of characteristic zero. We show that for a finite-dimensional representation M of a Lie algebra L with `traceForm K L M = 0` the [L, L]-module M is nilpotent. Cartan's criterion proof overview following Humphreys, Ch. 4, pp. 31–32. We plan to deliver the proof in 3 steps: 1. This PR: Prove the trace-nilpotency criterion over algebraically closed fields. Uses Jordan–Chevalley decomposition, Lagrange interpolation. 2. Remove the algebraic closure assumption by scalar extension. 3. Prove Cartan's criterion by Engel's theorem + PR 2. This is the easiest out of the three steps. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
291/0 Mathlib.lean,Mathlib/Algebra/Lie/AdjointAction/JordanChevalley.lean,Mathlib/Algebra/Lie/NilpotentOfTrace.lean 3 14 ['github-actions', 'jano-wol', 'ocfnash'] ocfnash
assignee:ocfnash
0-37219
10 hours ago
0-37486
10 hours ago
9-28058
9 days
37862 DanielJHorton
author:DanielJHorton
feat(LinearAlgebra/BilinearMap): associativity of compl/compr and comp --- This PR adds theorems on the associativity of compositions of linear and bilinear maps in the file `LinearAlgebra/BilinearMap.lean`. These are: ``` theorem compl₂_comp ... : h.compl₂ (g ∘ₛₗ f) = (h.compl₂ g).compl₂ f theorem compl₁₂_comp₁ ... : f.compl₁₂ (g ∘ₗ h) g' = (f.compl₁₂ g g') ∘ₗ h theorem compl₁₂_comp₂ ... : f.compl₁₂ g (g' ∘ₗ h') = (f.compl₁₂ g g').compl₂ h' theorem compl₁₂_comp₁₂ ... : f.compl₁₂ (g ∘ₗ h) (g' ∘ₗ h') = (f.compl₁₂ g g').compl₁₂ h h' theorem compr₂_comp ... : f.compr₂ (h ∘ₗ g) = (f.compr₂ g).compr₂ h ``` Additionally, it also includes: - A theorem `compr₂_id`, analogous to the already existing theorems `compl₂_id` and `compl₁₂_id_id` - Removal of some unused variable declarations in `section CommSemiring` new-contributor t-algebra
label:t-algebra$
43/4 Mathlib/LinearAlgebra/BilinearMap.lean 1 10 ['DanielJHorton', 'github-actions', 'themathqueen'] nobody
0-36494
10 hours ago
0-36494
9 hours ago
6-14661
6 days
38014 cduenasnavarro
author:cduenasnavarro
feat(InformationTheory): linear codes over finite fields and minimum distance properties Define linear codes over a finite field `F` as finite-dimensional subspaces of `Fin n → F`, together with their minimum Hamming distance. Main definitions: * `LinearCode` * `minDist` * `LinearCodeWithDist` * `hammingSphere` Main results: * `minDist_eq_sInf_pairwiseDist`: characterisation of the minimum distance via pairwise distances * `disjoint_spheres`: Hamming spheres of radius `t` around distinct codewords are disjoint if `2 * t < d` Pending: * Choosing an adequate book reference --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor 149/0 Mathlib.lean,Mathlib/InformationTheory/Coding/LinearCode.lean 2 27 ['cduenasnavarro', 'github-actions', 'rkirov', 'vihdzp', 'wwylele'] RemyDegenne
assignee:RemyDegenne
0-33926
9 hours ago
2-41179
2 days ago
2-41416
2 days
35365 wwylele
author:wwylele
feat(LinearAlgebra/Simplex): closedInterior = interior + face.closedInterior Intermediate lemma towards #34826. This will be used to show the measure on `interior` and `closedInterior` are equal, as the difference is a zero-measure set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
73/0 Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean 1 12 ['copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] eric-wieser
assignee:eric-wieser
0-31569
8 hours ago
6-14300
6 days ago
59-53748
59 days
35753 Vilin97
author:Vilin97
feat(Topology/Algebra/Order): regular grid helpers and piecewise linear interpolation Make API for piecewise linear interpolation on regular grids. I need these to for ODE time-stepping methods, like forward Euler, and later Runge–Kutta methods. Follow-up PR: #35755 (forward Euler method convergence). I don't know if these numerical analysis ODE-solving methods even belong in mathlib. If someone could advise me on it, I would appreciate it. --- The initial proof was produced by [Aristotle](https://aristotle.harmonic.fun). The code was iteratively refined (factoring out lemmas, golfing, simplifying proofs) using Claude Code. t-topology new-contributor LLM-generated 204/0 Mathlib.lean,Mathlib/Topology/Algebra/Order/PiecewiseLinear.lean 2 42 ['Vilin97', 'YanYablonovskiy', 'adomani', 'botbaki-review', 'copilot-pull-request-reviewer', 'dagurtomas', 'eric-wieser', 'github-actions', 'grunweg', 'j-loreaux', 'wwylele'] j-loreaux
assignee:j-loreaux
0-30918
8 hours ago
0-35993
9 hours ago
26-17116
26 days
37868 Jun2M
author:Jun2M
feat(Combinatorics/Graph): map on `Graph` This PR introduces vertex map on graphs, `map`. Co-authored-by: Peter Nelson [apn.uni@gmail.com](mailto:apn.uni@gmail.com) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 115/0 Mathlib.lean,Mathlib/Combinatorics/Graph/Maps.lean 2 4 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts'] nobody
0-26907
7 hours ago
0-26962
7 hours ago
6-13555
6 days
38094 JovanGerb
author:JovanGerb
chore(CategoryTheory/Preadditive): shorten `Preadditive` instances with term proofs Clean up some `Preadditive` instances. This also gives better defeq for `nsmul` and `zsmul` on natural transformations. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 98/271 Mathlib/CategoryTheory/Preadditive/EilenbergMoore.lean,Mathlib/CategoryTheory/Preadditive/EndoFunctor.lean,Mathlib/CategoryTheory/Preadditive/FunctorCategory.lean 3 1 ['github-actions'] nobody
0-26866
7 hours ago
0-26946
7 hours ago
0-26420
7 hours
37927 Vierkantor
author:Vierkantor
chore(Tactic): rewrite `order` tactic docstring This PR rewrites the docstrings for the `order` tactic, to consistently match the official style guide, to make sure they are complete while not getting too long. The `order_core` docstring also gets a little rewrite to make clearer that it is an implementation detail (and also explain exactly what it does). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-meta 13/3 Mathlib/Tactic/Order.lean 1 2 ['JovanGerb', 'github-actions'] JovanGerb
assignee:JovanGerb
0-26696
7 hours ago
2-59683
2 days ago
2-61278
2 days
38091 eric-wieser
author:eric-wieser
feat(Topology/Order/AtTopBotIxx): locally finite families of intervals --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 45/0 Mathlib/Topology/Order/AtTopBotIxx.lean 1 1 ['github-actions'] nobody
0-26245
7 hours ago
0-26297
7 hours ago
0-27095
7 hours
36202 vihdzp
author:vihdzp
feat: more theorems on the Cantor normal form We also remove some redundant assumptions. Used in the CGT repo. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 68/17 Mathlib/SetTheory/Ordinal/CantorNormalForm.lean 1 16 ['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody
0-23239
6 hours ago
21-79406
21 days ago
40-72700
40 days
36922 SnirBroshi
author:SnirBroshi
feat(Data/List/Chain): generalize `WellFounded.asymmetric₃` to chains The existing `WellFounded.asymmetric` shows `r a b → ¬r b a`, and `WellFounded.asymmetric₃` shows `r a b → r b c → ¬r c a`. This adds `WellFounded.asymmetricₙ` which shows `l.IsChain r → ¬r l.getLast l.head`. --- Also adds a couple of `IsChain` lemmas which might be useful. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 29/8 Mathlib/Data/List/Chain.lean 1 4 ['SnirBroshi', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody
0-23238
6 hours ago
21-63266
21 days ago
26-12416
26 days
36948 Parcly-Taxel
author:Parcly-Taxel
feat: subtraction and ±1 lemmas for `IsCoprime, IsRelPrime` From my Redhill PhD project. t-ring-theory 84/0 Mathlib/RingTheory/Coprime/Basic.lean 1 1 ['github-actions'] nobody
0-23237
6 hours ago
25-73310
25 days ago
25-72784
25 days
37067 kbuzzard
author:kbuzzard
feat: add_group tactic Written by Claude Code, additivising the `group` tactic, although there were some problems which needed human input. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) This is me burning Claude credits as a result of this comment [#mathlib4 > MulAut and to_additive @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/MulAut.20and.20to_additive/near/581059625) . To my amusement, naively additivising the `group` tactic to make an `add_group` tactic does not work. The problem is that the algorithm run by `group` involves adding `← zpow_neg_one` to the simp set, which rewrites `x⁻¹` to `x ^ (-1)` for `x` in any group. Amusingly, when additivised, this becomes `-x -> -1 • x` which then immediately becomes `(-1 • 1) • x` which then becomes `((-1 • 1) • 1) • x` etc etc, as the integers are themselves an additive group. Instead, Claude found the following trick: drop `← neg_one_zsmul` and `neg_one_zsmul_add`, and use `neg_add_rev` and `neg_zero` to reduce `-(a+b)` and `-0`, use `zsmul_neg` to reduce `n • (-a)` to `(-n) • a` and then use things like `add_neg_cancel_right` and `neg_add_cancel_right` to do `-b + b` and `b + -b` together with some new `zsmul_neg_trick` lemmas to deal with `(n • b) + -b` etc. The idea is to ensure that any consecutive chains of `b`'s and `-b`'s and `z • b`'s will all get amalgamated, but we cannot change `-b` to `-1 • b` so have to try harder than in the multiplicative case. Here is a detailed (human-written!) explanation of the difference between `Tactic/AddGroup.lean` and the additivisation of `Tactic/Group.Lean`. 1) Note that the `zpow_trick` lemmas in `Tactic/Group.lean` are additivised, so we import `Group.lean` in `AddGroup.lean` to access these additivised lemmas. 2) `Mathlib.Algebra.Group.Commutator` has no additive version (and it's not clear that it should have one), so we don't use an additive version of `commutatorElement_def` (which expands `⁅g₁, g₂⁆` to `g₁ * g₂ * g₁⁻¹ * g₂⁻¹`). Note: that means that we cannot additivise a test. 3) Line 67 of the additive file uses `neg_add_rev, neg_zero, zsmul_neg, ← neg_zsmul,` as a workaround for the looping ` ← zpow_neg_one`. 4) `Int.mul_neg, Int.neg_mul` are dropped (they don't seem to be needed, all tests are passing, ring_nf is probably doing this.) 5) `sub_eq_add_neg` is added: people use subtraction in additive groups; division doesn't seem to be covered for multiplicative groups? So `add_group` can solve `a + b - b = a` but `group` cannot solve `a * b / b = a`. *** There is also one fewer test in the `add_group` tests, as I had to remove the commutator test. I don't know much at all about tactic-writing, the PR is all Claude code, but a lot of it is to_additive copypasta. The review of the code above is my own. t-meta LLM-generated 183/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/AddGroup.lean,MathlibTest/AddGroup.lean 4 3 ['github-actions', 'kbuzzard'] nobody
0-23237
6 hours ago
23-24340
23 days ago
23-25057
23 days
38057 mathlib-nolints
author:mathlib-nolints
chore: remove declarations deprecated between 2021-04-15 and 2025-10-15 I am happy to remove some deprecated declarations for you! Please check if there are any remaining stray comments or other issues before merging. --- [workflow run for this PR](https://github.com/leanprover-community/mathlib4/actions/runs/24437431499) 1/1016 Mathlib/Algebra/Category/Grp/CartesianMonoidal.lean,Mathlib/Algebra/Category/Grp/LeftExactFunctor.lean,Mathlib/Algebra/Group/Subgroup/Finite.lean,Mathlib/Algebra/GroupWithZero/Basic.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Order/Group/Defs.lean,Mathlib/Algebra/Polynomial/Splits.lean,Mathlib/Algebra/Ring/Invertible.lean,Mathlib/Algebra/Star/SelfAdjoint.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicGeometry/AffineSpace.lean,Mathlib/AlgebraicGeometry/Cover/MorphismProperty.lean,Mathlib/AlgebraicGeometry/Gluing.lean,Mathlib/AlgebraicGeometry/Morphisms/Affine.lean,Mathlib/AlgebraicGeometry/Morphisms/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/ClosedImmersion.lean,Mathlib/AlgebraicGeometry/Morphisms/Constructors.lean,Mathlib/AlgebraicGeometry/Morphisms/Descent.lean,Mathlib/AlgebraicGeometry/Morphisms/Integral.lean,Mathlib/AlgebraicGeometry/Morphisms/LocalIso.lean,Mathlib/AlgebraicGeometry/Morphisms/Preimmersion.lean,Mathlib/AlgebraicGeometry/Morphisms/Proper.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiCompact.lean,Mathlib/AlgebraicGeometry/Morphisms/QuasiSeparated.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/PullbackCarrier.lean,Mathlib/AlgebraicGeometry/Pullbacks.lean,Mathlib/AlgebraicGeometry/ResidueField.lean,Mathlib/AlgebraicGeometry/Restrict.lean,Mathlib/AlgebraicGeometry/Scheme.lean,Mathlib/AlgebraicGeometry/Spec.lean,Mathlib/AlgebraicGeometry/Stalk.lean,Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean,Mathlib/Analysis/CStarAlgebra/Basic.lean,Mathlib/Analysis/Calculus/Deriv/Add.lean,Mathlib/Analysis/Calculus/VectorField.lean,Mathlib/Analysis/Complex/ValueDistribution/FirstMainTheorem.lean,Mathlib/Analysis/Convex/BetweenList.lean,Mathlib/Analysis/LocallyConvex/Polar.lean,Mathlib/Analysis/Matrix/Order.lean,Mathlib/CategoryTheory/Bicategory/Strict/Pseudofunctor.lean,Mathlib/CategoryTheory/Comma/StructuredArrow/Small.lean,Mathlib/CategoryTheory/Generator/Basic.lean,Mathlib/CategoryTheory/Limits/Constructions/Over/Connected.lean,Mathlib/CategoryTheory/Monoidal/CommGrp_.lean,Mathlib/CategoryTheory/Monoidal/Grp_.lean,Mathlib/CategoryTheory/Presentable/CardinalFilteredPresentation.lean,Mathlib/CategoryTheory/Presentable/IsCardinalFiltered.lean,Mathlib/CategoryTheory/Sites/IsSheafFor.lean,Mathlib/Combinatorics/Enumerative/IncidenceAlgebra.lean,Mathlib/Data/DFinsupp/Lex.lean,Mathlib/Data/Fin/Basic.lean,Mathlib/Data/Finite/Card.lean,Mathlib/Data/Finset/Sort.lean,Mathlib/Data/Finsupp/Lex.lean,Mathlib/Data/Int/DivMod.lean,Mathlib/Data/List/FinRange.lean,Mathlib/Data/List/Nodup.lean,Mathlib/Data/List/NodupEquivFin.lean,Mathlib/Data/List/OfFn.lean,Mathlib/Data/List/Pairwise.lean,Mathlib/Data/List/Sort.lean,Mathlib/Data/Multiset/Sort.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Log.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/Dynamics/Flow.lean,Mathlib/FieldTheory/Minpoly/IsIntegrallyClosed.lean,Mathlib/GroupTheory/GroupAction/Defs.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfStabilizer.lean,Mathlib/GroupTheory/Perm/List.lean,Mathlib/LinearAlgebra/Alternating/Uncurry/Fin.lean,Mathlib/LinearAlgebra/TensorProduct/Finiteness.lean,Mathlib/NumberTheory/SumTwoSquares.lean,Mathlib/Order/BooleanAlgebra/Basic.lean,Mathlib/Probability/Independence/Conditional.lean,Mathlib/Probability/Moments/CovarianceBilinDual.lean,Mathlib/RingTheory/Adjoin/PowerBasis.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/LocalRing/Quotient.lean,Mathlib/RingTheory/LocalRing/ResidueField/Basic.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean,Mathlib/RingTheory/UniqueFactorizationDomain/FactorSet.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/SetTheory/Cardinal/Finsupp.lean,Mathlib/SetTheory/Ordinal/Family.lean,Mathlib/Topology/Algebra/InfiniteSum/NatInt.lean,Mathlib/Topology/Algebra/IsUniformGroup/Basic.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean,Mathlib/Topology/Algebra/OpenSubgroup.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/DiscreteSubset.lean,Mathlib/Topology/Homeomorph/Defs.lean,Mathlib/Topology/Order.lean,Mathlib/Topology/Sets/Closeds.lean,Mathlib/Topology/UniformSpace/Ultra/Basic.lean 100 2 ['adomani', 'github-actions'] nobody
0-22794
6 hours ago
0-35941
9 hours ago
0-38640
10 hours
31768 Thmoas-Guan
author:Thmoas-Guan
feat(Homology): `Ext` commute with ulift functor 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. --- - [ ] depends on: #31697 - [ ] depends on: #31706 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-category-theory
label:t-algebra$
193/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Ulift.lean 2 8 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] dagurtomas
assignee:dagurtomas
0-22671
6 hours ago
0-67436
18 hours ago
0-68975
19 hours
34702 pfaffelh
author:pfaffelh
feat(Data/FinsetPowerset): The set `{v : List.Vector Bool n | v.val.count = k}` has cardinality `n.choose k` Show that `{v : List.Vector Bool n | v.val.count = k}` has cardinality `n.choose k`. The proof builds on `powersetCard k s` (the subsets of `s : Finset _` with cardinality `k`), and an equivalence to the above set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-data 52/1 Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Fintype/Pi.lean,Mathlib/Logic/Equiv/Fintype.lean 3 25 ['DavidLedvinka', 'b-mehta', 'eric-wieser', 'github-actions', 'joneugster', 'pfaffelh'] Vierkantor
assignee:Vierkantor
0-22670
6 hours ago
69-26744
69 days ago
72-39644
72 days
36443 Fieldnote-Echo
author:Fieldnote-Echo
feat(Combinatorics/SimpleGraph): add SimpleGraph.ball (open metric ball) Add `SimpleGraph.ball`, the open ball in the graph extended metric. ## Design decisions - **Open ball** (strict `<`, not `≤`): `ball c ⊤` coincides with the connected component of `c`, whereas a closed ball would give `closedBall c ⊤ = univ`. - **Named `SimpleGraph.ball`** (not `eball`): since `dist`-valued balls are less natural for disconnected graphs, the `e` prefix is unnecessary. - **Graph-specific** (not via `PseudoEMetricSpace`): avoids importing `ℝ`. AI assistance: Claude (Opus 4.6) helped draft and iterate on the implementation. I reviewed the code line by line and vouch for the final contents. Discussed on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/SimpleGraph.20metric.20balls/with/577846803). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor LLM-generated 59/3 Mathlib/Combinatorics/SimpleGraph/Metric.lean 1 36 ['Fieldnote-Echo', 'Rida-Hamadani', 'SnirBroshi', 'github-actions', 'lauramonk', 'vlad902'] awainverse and b-mehta
assignee:b-mehta assignee:awainverse
0-22670
6 hours ago
36-57254
36 days ago
36-56728
36 days
36896 PieterCuijpers
author:PieterCuijpers
feat (Algebra/Order/Quantale): isMulIdempotent, isMulLeftsided, isMulRightsided, isMulTwosided and strict versions * Adding definitions of quantale elements being idempotent, leftsided, rightsided, and twosided, and strict versions I'd value some discussion on whether especially the definition of isMulIdempotent would belong here, since it applies to semigroups in general. I only see definitions of IdempotentOp in the library so far, focussing on operators that are fully idempotent, while in the study of Quantales it seems that subquantales of elements that are idempotent in the original are also interesting. This argues the need for having definitions on separate elements. Also, should we include these definitions in the main Algebra/Order/Quantale.lean file, or start a separate file for them? And I have a few basic theorems I would like to include, but invite suggestions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
81/1 Mathlib/Algebra/Order/Quantale.lean 1 4 ['NoahW314', 'github-actions'] chrisflav
assignee:chrisflav
0-22669
6 hours ago
26-75305
26 days ago
26-74779
26 days
36990 JovanGerb
author:JovanGerb
fix(RefinedDiscrTree/Lookup): improve the matching score heuristic This PR improves the order in which results come out of the `RefinedDiscrTree`. I've explained the motivation in the doc-string. This is probably not the most principled fix, but it is the least disruptive solution I could think of. For an example, try clicking on `|0|` in ``` import Mathlib example : |(0 : ℝ)| = 1 := by rw?? ``` And notice that the obvious result `abs_zero` is not the first result. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 44/8 Mathlib/Lean/Meta/RefinedDiscrTree/Lookup.lean 1 1 ['github-actions'] kim-em
assignee:kim-em
0-22668
6 hours ago
24-53719
24 days ago
24-53193
24 days
37503 Vierkantor
author:Vierkantor
chore(*): remove comments mentioning obsolete note `[nolint_ge]` In Lean 3 times we used to have a `ge_or_gt` linter which complained if theorem statements contained `≥` or `>`, and it would be silenced with a reference to the library note `[nolint_ge]`. But the linter and its note never got ported, so the references are irrelevant and we should drop them. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter tech debt 1/6 Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Filter/AtTopBot/Finite.lean,Mathlib/Topology/EMetricSpace/Basic.lean,Mathlib/Topology/MetricSpace/Cauchy.lean 5 4 ['Vierkantor', 'github-actions', 'grunweg'] joneugster
assignee:joneugster
0-22667
6 hours ago
14-58160
14 days ago
14-57634
14 days
37512 xgenereux
author:xgenereux
feat(Valuation/IsTrivialOn): transcendental_of_lt_one For a `K`-algebra `L` and a valuation `v` over `L` which is trivial on `K`, if `y : L` is such that `y ≠ 0` and `v y < 1`, then it is transcendental over `K`. To add this result we need some lemmas from `RatFunc.AsPolynomial` which are not related to `RatFunc` so I have pulled them out of that file. I also didn't want to put this in `Valuation.Basic` so I have made a new file for valuation which are trivial over some base ring. Co-authored-by: María Inés de Frutos Fernández <[mariaines.dff@gmail.com](mailto:mariaines.dff@gmail.com)> --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 82/25 Mathlib.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/RingTheory/Valuation/IsTrivialOn.lean 3 1 ['github-actions'] chrisflav
assignee:chrisflav
0-22666
6 hours ago
14-42821
14 days ago
14-42377
14 days
37545 vihdzp
author:vihdzp
feat: ℵ_ univ = univ --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 74/4 Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Regular.lean 2 7 ['github-actions', 'mathlib-merge-conflicts', 'mattdiamond', 'plp127', 'vihdzp'] alreadydone
assignee:alreadydone
0-22665
6 hours ago
2-21122
2 days ago
13-56457
13 days
37573 vihdzp
author:vihdzp
feat: supremum of `≤ c` ordinals of cardinal `≤ c` has cardinal `≤ c` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 47/14 Mathlib/SetTheory/Cardinal/Ordinal.lean 1 1 ['github-actions'] alreadydone
assignee:alreadydone
0-22664
6 hours ago
13-36505
13 days ago
13-35979
13 days
37780 vihdzp
author:vihdzp
chore(Topology/Order/Basic): use `to_dual` --- - [x] depends on: #36958 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-order 100/175 Mathlib/Data/Set/Subsingleton.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Cover.lean,Mathlib/Order/Filter/Ultrafilter/Basic.lean,Mathlib/Order/Interval/Set/LinearOrder.lean,Mathlib/Order/Interval/Set/Pi.lean,Mathlib/Topology/Order/Basic.lean 7 7 ['JovanGerb', 'github-actions', 'mathlib-dependent-issues', 'vihdzp'] j-loreaux
assignee:j-loreaux
0-22664
6 hours ago
0-75803
20 hours ago
1-3130
1 day
37799 joelriou
author:joelriou
feat(Topololy/Convenient): the category of `X`-generated spaces Given a family `X i` of topological spaces, we introduce two equivalent categories: * the full subcategory of the category of topological spaces consisting of `X`-generated spaces; * the category whose objects are any topological space, and morphisms are `X`-continuous maps. --- - [x] depends on: #37792 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 289/0 Mathlib.lean,Mathlib/Topology/Convenient/Category.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] j-loreaux
assignee:j-loreaux
0-22663
6 hours ago
1-40406
1 day ago
1-42768
1 day
37856 joelriou
author:joelriou
feat(Topology/Convenient): curryfication of `X`-continuous maps Let `X i` be a family of topological spaces. Let `Z` and `T` be topological spaces. In this PR, we endow the type `ContinuousMapGeneratedBy X Z T` of `X`-continuous maps `Z → T` with a topology, and under suitable assumptions, we show that there is a bijection expressing the curryfication/decurryfication of `X`-continuous maps. --- - [x] depends on: #37792 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 140/0 Mathlib.lean,Mathlib/Topology/Convenient/HomSpace.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] j-loreaux
assignee:j-loreaux
0-22661
6 hours ago
1-42907
1 day ago
1-42383
1 day
37938 SamuelSchlesinger
author:SamuelSchlesinger
feat(Probability/Posterior): Posterior PMFs and Various Lemmas Upstreaming the probability lemmas needed in https://github.com/leanprover/cslib/pull/464. t-measure-probability new-contributor 130/0 Mathlib.lean,Mathlib/Probability/ProbabilityMassFunction/Posterior.lean 2 3 ['SamuelSchlesinger', 'github-actions'] RemyDegenne
assignee:RemyDegenne
0-22660
6 hours ago
0-63657
17 hours ago
0-67220
18 hours
37978 CBirkbeck
author:CBirkbeck
feat(NumberTheory/ModularForms): cusp form submodule of modular forms Introduces the inclusion of cusp forms into modular forms and the corresponding submodule and `IsCuspForm` predicate. This is in preparation for proving the dimension formula in level one which is in #37979 and see also #37789 The work was done as part of the Sphere packing project. The original code was written by me but the PR was done with the help of Claude Code. t-number-theory LLM-generated 201/2 Mathlib.lean,Mathlib/NumberTheory/ModularForms/Basic.lean,Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean,Mathlib/NumberTheory/ModularForms/CuspFormSubmodule.lean,Mathlib/NumberTheory/ModularForms/LevelOne.lean 5 4 ['github-actions', 'loefflerd', 'tb65536'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-22660
6 hours ago
2-74785
2 days ago
2-76509
2 days
38016 chrisflav
author:chrisflav
feat(RingTheory): `PrimeSpectrum.sigmaToPi` is an open embedding In particular, is is a homeomorphism for finite products. From Pi1. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 71/5 Mathlib/RingTheory/Spectrum/Prime/RingHom.lean,Mathlib/RingTheory/Spectrum/Prime/Topology.lean 2 2 ['chrisflav', 'github-actions'] riccardobrasca
assignee:riccardobrasca
0-22659
6 hours ago
2-39085
2 days ago
2-38559
2 days
38048 gilesgshaw
author:gilesgshaw
feat(Topology/EMetricSpace/Defs): add theorems `EMetric.continuous*_iff*` Add 8 theorems of the form `EMetric.continuous*_iff*`, which are exactly analogous to existing theorems of the form `Metric.continuous*_iff*` --- Thus the API between the following files (already pretty consistent) is now more consistent `Topology.MetricSpace.Pseudo.Defs` for `PseudoMetricSpace` `Topology.EMetricSpace.Defs` for `PseudoEMetricSpace` I have copied the theorems exactly (that is, changing only `[e]dist` and `Pseudo[E]MetricSpace`), however perhaps there will be suggestions to make other changes at this opportunity. (E.g. is it worth making the use of strict implicit parameters more consistent - possibly not?) new-contributor t-topology 44/0 Mathlib/Topology/EMetricSpace/Defs.lean 1 3 ['github-actions'] j-loreaux
assignee:j-loreaux
0-22658
6 hours ago
1-54332
1 day ago
1-53806
1 day
38061 joelriou
author:joelriou
feat(AlgebraicTopology/SimplicialSet/AnodyneExtensions): the opposite of a pairing --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology 159/0 Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/Rev.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/IsUniquelyCodimOneFace.lean,Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Op.lean,Mathlib/AlgebraicTopology/SimplicialSet/Degenerate.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplices.lean,Mathlib/AlgebraicTopology/SimplicialSet/NonDegenerateSimplicesSubcomplex.lean,Mathlib/AlgebraicTopology/SimplicialSet/Simplices.lean,Mathlib/AlgebraicTopology/SimplicialSet/SubcomplexOp.lean 9 1 ['github-actions'] robin-carlier
assignee:robin-carlier
0-22657
6 hours ago
0-76216
21 hours ago
0-75690
21 hours
37935 NoahW314
author:NoahW314
feat(Topology/Order): `DenselyOrdered` of `PreconnectedSpace` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 10/1 Mathlib/Topology/Order/IntermediateValue.lean 1 9 ['NoahW314', 'github-actions', 'jcommelin', 'plp127'] jcommelin
assignee:jcommelin
0-21640
6 hours ago
0-21655
5 hours ago
2-68663
2 days
38092 SnirBroshi
author:SnirBroshi
chore(Order/Defs/Unbundled): deprecate `def Symmetric` in favor of `class Std.Symm` --- [Mathlib's `def Symmetric`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Order/Defs/Unbundled.html#Symmetric) [Core's `class Std.Symm`](https://leanprover-community.github.io/mathlib4_docs/Init/Core.html#Std.Symm) [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Relation.20properties.20duplication/near/544638270) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 464/391 Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/Konigsberg.lean,Counterexamples/HeawoodUnitDistance.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/Divisibility/Units.lean,Mathlib/Algebra/Group/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Split.lean,Mathlib/Analysis/InnerProductSpace/Orthogonal.lean,Mathlib/Analysis/Normed/Operator/FredholmAlternative.lean,Mathlib/CategoryTheory/Abelian/Pseudoelements.lean,Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/IsConnected.lean,Mathlib/Combinatorics/Additive/ErdosGinzburgZiv.lean,Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/Graph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/AdjMatrix.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Circulant.lean,Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Dart.lean,Mathlib/Combinatorics/SimpleGraph/Density.lean,Mathlib/Combinatorics/SimpleGraph/Finite.lean,Mathlib/Combinatorics/SimpleGraph/Hall.lean,Mathlib/Combinatorics/SimpleGraph/Hasse.lean,Mathlib/Combinatorics/SimpleGraph/LineGraph.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean,Mathlib/Combinatorics/SimpleGraph/Matching.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/Triangle/Tripartite.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Operations.lean,Mathlib/Data/Finset/Pairwise.lean,Mathlib/Data/Finsupp/BigOperators.lean,Mathlib/Data/List/Pairwise.lean,Mathlib/Data/List/Sigma.lean,Mathlib/Data/Multiset/Bind.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Multiset/Pairwise.lean,Mathlib/Data/Multiset/Replicate.lean,Mathlib/Data/Nat/GCD/Basic.lean,Mathlib/Data/Rel/Separated.lean,Mathlib/Data/Seq/Computation.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/Data/Set/Pairwise/List.lean,Mathlib/Data/Sym/Sym2.lean,Mathlib/Data/WSeq/Relation.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/MeasureTheory/Measure/AEDisjoint.lean,Mathlib/MeasureTheory/Measure/NullMeasurable.lean,Mathlib/ModelTheory/Graph.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/NumberTheory/ArithmeticFunction/Defs.lean,Mathlib/Order/Antichain.lean,Mathlib/Order/Defs/Unbundled.lean,Mathlib/Order/Disjoint.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/Preorder/Chain.lean,Mathlib/Order/PropInstances.lean,Mathlib/RingTheory/Coprime/Ideal.lean,Mathlib/RingTheory/Radical/Basic.lean,Mathlib/Topology/CompactOpen.lean,Mathlib/Topology/Connected/Clopen.lean,Mathlib/Topology/MetricSpace/MetricSeparated.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/GDelta.lean 78 3 ['SnirBroshi', 'github-actions', 'leanprover-radar'] nobody
0-18015
5 hours ago
0-21183
5 hours ago
0-24253
6 hours
37400 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Acyclic): endpoints of a path have at most one neighbor in the path --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 15/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 5 ['Rida-Hamadani', 'Ruben-VandeVelde', 'SnirBroshi', 'github-actions'] nobody
0-17499
4 hours ago
16-17063
16 days ago
16-16537
16 days
38023 Deicyde
author:Deicyde
feat: add `continuousAt_clm_apply` `continuousAt_clm_apply` proves that a map `f : X → CLM` is `continuousAt x` iff all of the applications `q ↦ f q y` are continuous for fixed `y`. This is a natural analogue of `continuousOn_clm_apply` and the proof is essentially identical. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 23/10 Mathlib/Analysis/Normed/Module/FiniteDimension.lean 1 6 ['Deicyde', 'github-actions', 'j-loreaux'] j-loreaux
assignee:j-loreaux
0-16823
4 hours ago
0-16857
4 hours ago
1-37703
1 day
38027 8e7
author:8e7
feat(Combinatorics/SimpleGraph/StarGraph): define star graphs Add a new definition `starGraph` and several key lemmas. Star graphs are a trivial class of tree, often used in constructive proofs regarding trees. --- All lemmas are hand written first, then golfed with the help of Claude Code. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 85/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/StarGraph.lean 2 36 ['8e7', 'IvanRenison', 'JovanGerb', 'SnirBroshi', 'github-actions', 'vihdzp', 'vlad902'] nobody
0-15041
4 hours ago
0-14811
3 hours ago
2-12550
2 days
38076 yuanyi-350
author:yuanyi-350
refactor: golf `Analytic/IteratedFDeriv`, `SpecialFunctions/` This PR ports the changes from #37968 restricted to the following files: - `Mathlib/Analysis/Analytic/IteratedFDeriv.lean` - `Mathlib/Analysis/SpecialFunctions/Gaussian/FourierTransform.lean` - `Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean` Only these selected file changes are included. t-analysis 5/29 Mathlib/Analysis/Analytic/IteratedFDeriv.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/FourierTransform.lean 3 3 ['github-actions', 'themathqueen'] nobody
0-14874
4 hours ago
0-56689
15 hours ago
0-56626
15 hours
38093 mortarsanjaya
author:mortarsanjaya
feat(Algebra/Order/Ring/Unbundled/Basic): Add a generalization of `two_mul_le_add_of_sq_eq_mul` The equality `r^2 = a * b` in the hypothesis can be weakened to `r^2 ≤ a * b`. The implementation requires adding an appropriate `ZeroLEOneClass` instance. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
18/5 Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean 1 6 ['github-actions', 'leanprover-radar', 'mortarsanjaya'] nobody
0-14571
4 hours ago
0-29470
8 hours ago
0-28944
8 hours
38075 yuanyi-350
author:yuanyi-350
refactor: golf `CStarAlgebra/Unitization`, `Complex/Trigonometric`, `Asymptotics/SpecificAsymptotics` This PR extracts three file-level refactors from #37968 into a standalone branch: - `Mathlib/Analysis/CStarAlgebra/Unitization.lean` - `Mathlib/Analysis/Complex/Trigonometric.lean` - `Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean` The goal is to make these simplifications reviewable independently of the larger batch PR. t-analysis 4/18 Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/Complex/Trigonometric.lean 2 7 ['github-actions', 'leanprover-radar', 'themathqueen', 'yuanyi-350'] nobody
0-14562
4 hours ago
0-57486
15 hours ago
0-56960
15 hours
38097 NoahW314
author:NoahW314
feat: add `IndiscreteTopology` instances --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 24/0 Mathlib/Topology/Homotopy/Contractible.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/NoetherianSpace.lean,Mathlib/Topology/Separation/Connected.lean 4 1 ['github-actions'] nobody
0-13252
3 hours ago
0-13325
3 hours ago
0-12799
3 hours
37946 Deicyde
author:Deicyde
feat(Topology/VectorBundle): `continuous_zeroSection` The continuous analogue of `contMDiff_zeroSection`; we match that proof as closely as possible. Claude was used to draft the proof (with lots of manual clean-up afterwards). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 34/0 Mathlib/Topology/FiberBundle/Basic.lean,Mathlib/Topology/VectorBundle/Basic.lean 2 16 ['Deicyde', 'github-actions', 'grunweg'] grunweg
assignee:grunweg
0-13222
3 hours ago
0-13236
3 hours ago
1-44095
1 day
38020 Deicyde
author:Deicyde
feat(Topology/FiberBundle): `continuousAt_symm_prodMk_left` API lemma for fiber bundle trivializations. Shows that `x => e.symm (x,v)` is continuous on its natural domain. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 13/0 Mathlib/Topology/FiberBundle/Trivialization.lean 1 12 ['Deicyde', 'github-actions', 'grunweg'] PatrickMassot and grunweg
assignee:grunweg assignee:PatrickMassot
0-11655
3 hours ago
0-11753
3 hours ago
1-41918
1 day
38099 b-mehta
author:b-mehta
chore(Algebra/Group/Action): weaken hypothesis of instIsLeftCancelSMul `instIsLeftCancelSMul` previously assumed `LeftCancelMonoid G`, but `Mul G` and `IsLeftCancelMul G` suffice. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-algebra
label:t-algebra$
1/1 Mathlib/Algebra/Group/Action/Defs.lean 1 1 ['github-actions'] nobody
0-10670
2 hours ago
0-10730
2 hours ago
0-10280
2 hours
38100 b-mehta
author:b-mehta
refactor(Pointwise/Finset): use IsLeftRegular/IsRightRegular Use `IsLeftRegular`/`IsRightRegular` in `card_le_card_mul_left_of_injective` and `card_le_card_mul_right_of_injective`. Rename `smul_finset_card_le` to `card_smul_finset_le` with deprecation aliases. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
5/3 Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Group/Pointwise/Finset/Scalar.lean 2 1 ['github-actions'] nobody
0-9167
2 hours ago
0-9238
2 hours ago
0-8712
2 hours
38101 b-mehta
author:b-mehta
feat(Order/OrderIsoNat): add WellFoundedLT.antitone_chain_condition This is an easy combination of existing things, but these are sometimes hard to find, and can be tricky to apply in practice since it involves a few different ideas. Since the informal statement here shows up fairly often, it's worth having for convenience downstream. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-order 9/0 Mathlib/Order/OrderIsoNat.lean 1 1 ['github-actions'] nobody
0-8448
2 hours ago
0-8524
2 hours ago
0-7998
2 hours
38098 astrainfinita
author:astrainfinita
chore: make `SMul.comp.smul` `implicit_reducible` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
2/1 Mathlib/Algebra/Group/Action/Defs.lean 1 3 ['astrainfinita', 'github-actions', 'leanprover-radar'] nobody
0-8116
2 hours ago
0-12990
3 hours ago
0-12464
3 hours
38102 b-mehta
author:b-mehta
feat(Order/Monotone/Basic): add Nat.stabilises_of_antitone --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 22/0 Mathlib/Order/Monotone/Basic.lean 1 2 ['b-mehta', 'github-actions'] nobody
0-7463
2 hours ago
0-7502
1 hour ago
0-7037
1 hour
38103 b-mehta
author:b-mehta
feat(Algebra/GroupWithZero/Action/Pointwise/Finset): add ₀ variants These lemmas all have `Group` versions, and so we add `GroupWithZero` variants. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
14/0 Mathlib/Algebra/GroupWithZero/Action/Pointwise/Finset.lean 1 1 ['github-actions'] nobody
0-7344
2 hours ago
0-7416
1 hour ago
0-6890
1 hour
38095 astrainfinita
author:astrainfinita
perf(Algebra/*/{InjSurj, TransferInstance}): reduce instance `Expr`s --- We can not just use `fast_instance%` because we need to reduce the arguments of the fields. This PR continues the work from #13795. Original PR: https://github.com/leanprover-community/mathlib4/pull/13795 t-algebra
label:t-algebra$
401/219 Mathlib/Algebra/Field/Basic.lean,Mathlib/Algebra/Field/TransferInstance.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/TransferInstance.lean,Mathlib/Algebra/Group/InjSurj.lean,Mathlib/Algebra/Group/TransferInstance.lean,Mathlib/Algebra/GroupWithZero/Action/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/End.lean,Mathlib/Algebra/GroupWithZero/Action/TransferInstance.lean,Mathlib/Algebra/GroupWithZero/InjSurj.lean,Mathlib/Algebra/Module/Defs.lean,Mathlib/Algebra/Module/RingHom.lean,Mathlib/Algebra/Ring/InjSurj.lean,Mathlib/Algebra/Ring/TransferInstance.lean,Mathlib/Util/TermReduce.lean,scripts/noshake.json 16 7 ['astrainfinita', 'github-actions', 'leanprover-radar'] nobody
0-5343
1 hour ago
0-12585
3 hours ago
0-14589
4 hours
37940 BryceT233
author:BryceT233
feat(Algebra/Category): the category of local algebras with a fixed residue field This is an attempt to design the definitions of base category [[Stacks, 06GC]](https://stacks.math.columbia.edu/tag/06GC) and complete base category in deformation theory. The approach we take is to first introduce a larger category of local algebras with a fixed residue field, then define base category and complete base category to be full subcategories of this larger category via `ObjectProperty`. To be specific: * In `Defs.lean`, we define `LocAlgCat` and `LocAlgCat.Hom` to be the type of objects and morphisms in the category, and provide a universe lift functor. * In `Basic.lean`, we introduce the basic construction `ofQuot` and `toOfQuot`, which is the quotient of an object in `LocAlgCat` by a proper Ideal. Then we use them to define `infinitesimalNeighborhood` and `specialFiber` for an object in `LocAlgCat`. * In `Cotangent.lean`, we introduce `k`-vector space structures on `CotangentSpace` of objects in `LocAlgCat` and prove the exactness of the conormal sequence for the special fiber. * In `BaseCat.lean`, we define `BaseCat` to be the full subcategory of `LocAlgCat` consisting of Artinian local algebras and introduce the type class of a small extension for morphisms in `BaseCat`. We show that any surjective morphism in `BaseCat` can be factored into a finite composition of small extensions [[Stacks, 06GE]](https://stacks.math.columbia.edu/tag/06GE) This PR is intended to showcase the overall design and architecture, I will split this into smaller PRs once the community reaches a consensus on the design choices. --- - [x] depends on: #36657 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 1002/0 Mathlib.lean,Mathlib/Algebra/Category/LocAlgCat/BaseCat.lean,Mathlib/Algebra/Category/LocAlgCat/Basic.lean,Mathlib/Algebra/Category/LocAlgCat/Cotangent.lean,Mathlib/Algebra/Category/LocAlgCat/Defs.lean,Mathlib/Algebra/Group/Units/ULift.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/LocalRing/RingHom/Basic.lean 9 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-4374
1 hour ago
0-27566
7 hours ago
1-23925
1 day
37861 Jun2M
author:Jun2M
feat(Combinatorics/Graph): connected graphs This PR introduces - `IsConnectedComponentOf`, a graph is a connected component of another graph, and - `IsConnected`, a graph is a self component Under this definition, an empty graph is not connected. Co-authored-by: Peter Nelson [apn.uni@gmail.com](mailto:apn.uni@gmail.com) --- - [x] depends on: #37610 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 92/0 Mathlib.lean,Mathlib/Combinatorics/Graph/Connected/Component.lean 2 6 ['Jun2M', 'SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-dependent-issues'] nobody
0-3520
58 minutes ago
0-27150
7 hours ago
1-68154
1 day
38073 sgouezel
author:sgouezel
chore: fix diamonds in Ideals The ring instance on `R ⧸ I` was not reducibly compatible with its `AddCommGroup` structure. To solve this, we break up the ring instance to use the already existing AddCommGroup. This has bad performance impact because the instance becomes less atomic and much more verbose. To solve this, we introduce additional instances (notably of the common ancestor to Ring and AddCommGroup, which is AddMonoid) to make sure both instances are built up from the same pieces (which essentially never need to get unfolded) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 34/14 Mathlib/GroupTheory/PresentedGroup.lean,Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/GroupTheory/Sylow.lean,Mathlib/LinearAlgebra/Quotient/Defs.lean,Mathlib/RingTheory/Congruence/Basic.lean,Mathlib/RingTheory/Ideal/Quotient/Defs.lean 6 15 ['github-actions', 'leanprover-radar', 'sgouezel'] nobody
0-2987
49 minutes ago
0-4491
1 hour ago
0-59643
16 hours
35976 Phelixh
author:Phelixh
feat: add add Liu's uncertainty theory foundations (core/distribution/process modules) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 2381/0 Mathlib.lean,Mathlib/Uncertainty/Base.lean,Mathlib/Uncertainty/BaseCore.lean,Mathlib/Uncertainty/BaseDistribution.lean,Mathlib/Uncertainty/BaseProcess.lean,Mathlib/Uncertainty/Uncertainty.lean 6 30 ['Phelixh', 'copilot-pull-request-reviewer', 'github-actions'] nobody
0-2929
48 minutes ago
0-26865
7 hours ago
17-63410
17 days
38024 vihdzp
author:vihdzp
chore: generalize cardinal supremum theorems to conditionally complete lattices --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order t-set-theory maintainer-merge 36/27 Mathlib/LinearAlgebra/Dimension/Finite.lean,Mathlib/Order/SuccPred/CompleteLinearOrder.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Order.lean 5 3 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts'] nobody
0-1956
32 minutes ago
1-27939
1 day ago
2-19225
2 days
37874 yuanyi-350
author:yuanyi-350
refactor(Analysis/PSeries): simplify `Real.summable_one_div_nat_add_rpow` via asymptotics ## Summary - replace the manual eventual-positivity and limit argument in `Real.summable_one_div_nat_add_rpow` with an asymptotic-equivalence proof - use `IsEquivalent.add_const_of_norm_tendsto_atTop` together with `Asymptotics.IsEquivalent.summable_iff_nat` - add the imports needed for the asymptotics-based proof This also removes the local `set_option linter.unusedSimpArgs false` workaround from the proof. t-analysis large-import maintainer-merge 12/26 Mathlib/Analysis/PSeries.lean,Mathlib/NumberTheory/LSeries/Nonvanishing.lean 2 13 ['YaelDillies', 'github-actions', 'grunweg', 'leanprover-radar', 'themathqueen', 'yuanyi-350'] ADedecker
assignee:ADedecker
0-1508
25 minutes ago
0-1564
17 minutes ago
3-42172
3 days
34298 CoolRmal
author:CoolRmal
feat(MeasureTheory): Integral over Ioi tends to zero This PR proves that if `f` is integrable on `Ioi a`, then `∫ x in Ioi (b i), f x ∂μ` tends to zero as `b i` tends to infinity. This is an easy corollary of `intervalIntegral_tendsto_integral_Ioi`. --- - [x] depends on #34197 - [x] depends on #34289 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 91/1 Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean 2 30 ['CoolRmal', 'EtienneC30', 'github-actions', 'mcdoll', 'sgouezel'] EtienneC30
assignee:EtienneC30
0-588
9 minutes ago
0-588
1 minute ago
57-16434
57 days

New contributors' PRs on the review queue

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
36786 SproutSeeds
author:SproutSeeds
feat(DoubleCounting): parity of odd-degree vertices in bipartite incidence Adds `odd_card_filter_odd_bipartiteAbove_iff_odd_card_filter_odd_bipartiteBelow` to `Mathlib.Combinatorics.Enumerative.DoubleCounting`. This is the small parity-helper first step for #25231. Validation: - `lake build Mathlib.Combinatorics.Enumerative.DoubleCounting` Supersedes closed #36077 after replaying the helper cleanly on current `master`. AI usage: used Codex for branch recovery, replay onto current `master`, and draft wording; final code choices and verification by me. new-contributor t-combinatorics large-import 17/0 Mathlib/Combinatorics/Enumerative/DoubleCounting.lean 1 2 ['github-actions'] nobody
29-17701
29 days ago
29-17784
29 days ago
29-17258
29 days
37109 zeekmartin
author:zeekmartin
feat(SimpleGraph): card of common neighbors equals card of triangles containing edge Adds `SimpleGraph.card_commonNeighbors_eq_card_triangles_containing_edge` to `Mathlib/Combinatorics/SimpleGraph/Clique.lean`. For adjacent vertices `u v` in a finite simple graph, establishes the bijection between common neighbors and 3-cliques containing the edge `{u, v}`: ```lean theorem card_commonNeighbors_eq_card_triangles_containing_edge {u v : α} (huv : G.Adj u v) : (G.commonNeighbors u v).toFinset.card = ((G.cliqueFinset 3).filter fun s => {u, v} ⊆ s).card ``` This connects `commonNeighbors` (defined in `Basic.lean`) with `cliqueFinset` — a gap not previously covered in `Clique.lean`. **AI disclosure**: Claude (Anthropic) was used as an assistant during the development of this proof. It helped with the initial proof structure and tactic suggestions. The proof was reviewed and validated step by step by the author, who can vouch for all the content. The mathematical idea originates from the author's prior Lean 4 work on spectral graph theory (github.com/zeekmartin/topostability-lean4). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics LLM-generated new-contributor 61/0 Mathlib/Combinatorics/SimpleGraph/Clique.lean 1 7 ['SnirBroshi', 'github-actions', 'zeekmartin'] nobody
22-48660
22 days ago
22-55819
22 days ago
22-55293
22 days
36850 whocares-abt
author:whocares-abt
feat(Combinatorics/SimpleGraph/Acyclic): add delete leaf from tree gives tree Added theorem stating Deleting a leaf from a tree produces a tree. t-combinatorics new-contributor 5/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 7 ['github-actions', 'vlad902'] nobody
21-61801
21 days ago
26-389
25 days ago
27-69119
27 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 --- 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'] jsm28
assignee:jsm28
17-39529
17 days ago
49-49092
49 days ago
51-82852
51 days
37006 hakii6
author:hakii6
feat(LinearAlgebra/Matrix/Block, Analysis/Normed/Algebra/MatrixExponential): add BlockTriangular.pow and BlockTriangular.exp # Summary Add BlockTriangular.pow and BlockTriangular.exp for proving "det (exp A) = exp (trace A)" # Which part using LLM The part I used LLM is for 1. Searching duplicated theorems and lemmas I may missed (I already search them myself first). 2. Help me handle the "variables and signatures", the "letI" part, some of lemmas and theorems trivial but hard to find the true one. 3. After I finished, let them helped me check the structure match the disciplines of mathlib. 4. Check the steps PR match the disciplines of mathlib Most things above are done by me first, then let them to make sure I'm not missing something. # More context More context can be found in a topic in "# new member" in Zulip [#new members > (Matrix and NormedSpace.exp) | det (exp A) = exp (trace A)](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/.28Matrix.20and.20NormedSpace.2Eexp.29.20.7C.20det.20.28exp.20A.29.20.3D.20exp.20.28trace.20A.29/with/580964688) new-contributor LLM-generated 54/1 Mathlib/Analysis/Normed/Algebra/MatrixExponential.lean,Mathlib/LinearAlgebra/Matrix/Block.lean,Mathlib/Topology/Instances/Matrix.lean 3 59 ['SnirBroshi', 'eric-wieser', 'github-actions', 'hakii6', 'wwylele'] nobody
17-29058
17 days ago
19-32026
19 days ago
24-22725
24 days
35316 mkaratarakis
author:mkaratarakis
feat: lemmas for the analytic part of the proof of the Gelfond–Schneider theorem (Part 4/5) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 85/0 Mathlib.lean,Mathlib/NumberTheory/Transcendental/AnalyticPart.lean 2 12 ['MichaelStollBayreuth', 'SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mkaratarakis'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
15-63626
15 days ago
15-63681
15 days ago
19-81612
19 days
37374 NoneMore
author:NoneMore
feat(Topology/DerivedSet): add relative derived set lemmas Add `relDerivedSet`, `relDerivedSet_subset`, and `IsClosed.relDerivedSet_eq`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 17/0 Mathlib/Topology/DerivedSet.lean 1 6 ['NoneMore', 'github-actions', 'plp127', 'vihdzp'] PatrickMassot
assignee:PatrickMassot
15-55532
15 days ago
15-57686
15 days ago
16-24174
16 days
36788 hommmmm
author:hommmmm
feat(RingTheory): height of span of a prime element is one ## Summary - Add `Ideal.height_span_singleton_eq_one_of_prime`: in a Noetherian integral domain, the ideal generated by a prime element has height one. ## Notes The new theorem follows directly from `height_le_one_of_isPrincipal_of_mem_minimalPrimes` (upper bound) and the fact that `span {p} ≠ ⊥` for `p` prime (lower bound). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 12/1 Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean 1 5 ['Multramate', 'github-actions', 'hommmmm'] mattrobball
assignee:mattrobball
15-33623
15 days ago
15-34643
15 days ago
29-14952
29 days
36781 hommmmm
author:hommmmm
feat(RingTheory/UniqueFactorizationDomain): UFD iff height one primes are principal We prove that a Noetherian integral domain is a UFD if and only if every prime ideal of height one is principal (`UniqueFactorizationMonoid.iff_height_one_prime_principal`). ## New declarations * `UniqueFactorizationMonoid.exists_height_one_le_of_finite_height`: given a prime of finite height ≥ 1, there exists a height one prime contained in it. * `UniqueFactorizationMonoid.ne_bot_of_height_one`: an ideal of height one is nonzero. * `UniqueFactorizationMonoid.height_ge_one_of_prime_ne_bot`: the height of a nonzero prime ideal in a domain is at least one. * `UniqueFactorizationMonoid.height_one_prime_principal`: in a UFD, every height one prime is principal. * `UniqueFactorizationMonoid.of_height_one_prime_principal`: every height one prime being principal implies UFD (Noetherian case). * `UniqueFactorizationMonoid.iff_height_one_prime_principal`: the full iff statement. ## References See https://stacks.math.columbia.edu/tag/0AFT ## AI Disclosure This code is written without AI, then uses Claude Code with cameronfreer's [Lean4-skills](https://github.com/cameronfreer/lean4-skills) (specifically, the `review`, `refactor`, and `golf` workflow) for style changes, refactoring and golfing. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor large-import 102/1 Mathlib/RingTheory/UniqueFactorizationDomain/Kaplansky.lean 1 8 ['Thmoas-Guan', 'chrisflav', 'github-actions', 'hommmmm', 'tb65536'] mattrobball
assignee:mattrobball
15-22764
15 days ago
24-41005
24 days ago
28-76086
28 days
36886 Deep0Thinking
author:Deep0Thinking
feat(Combinatorics/Enumerative/Bonferroni): add Bonferroni inequalities This PR adds Bonferroni inequalities. Main theorems: - `Finset.indicator_biUnion_le_bonferroniIndicator_of_odd` - `Finset.bonferroniIndicator_le_indicator_biUnion_of_even` - `Finset.card_biUnion_le_bonferroniCard_of_odd` - `Finset.bonferroniCard_le_card_biUnion_of_even` Co-authored-by: Claude (Opus 4.6) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 334/4 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Bonferroni.lean,Mathlib/Combinatorics/Enumerative/InclusionExclusion.lean 3 4 ['AlexeyMilovanov', 'Deep0Thinking', 'github-actions'] nobody
14-66076
14 days ago
26-58724
26 days ago
26-59027
26 days
36917 iarnoldy
author:iarnoldy
feat(LinearAlgebra/CliffordAlgebra): bivector Lie subalgebra Define the submodule of grade-n elements (n-vectors) in a Clifford algebra and show that bivectors (n = 2) form a `LieSubalgebra` under the commutator bracket. This gives the standard construction of so(Q) from Cl(Q). Main definitions: * `CliffordAlgebra.nvector` — grade-n submodule, spanned by n-fold products of ι * `CliffordAlgebra.bivector` — nvector 2 Q, the bivector submodule * `CliffordAlgebra.bivectorLieSubalgebra` — LieSubalgebra of bivectors Main results: * `CliffordAlgebra.lie_ι_mul_ι` — explicit commutator formula for bivector generators * `CliffordAlgebra.lie_mem_bivector` — bracket closure of the bivector submodule * `CliffordAlgebra.bivector_le_evenOdd_zero` — bivectors lie in the even part The `LieModule` instance for `CliffordAlgebra Q` acting on itself is provided explicitly (`instLieModuleSelf`) because automatic synthesis exceeds the default heartbeat limit. AI disclosure: This code was generated with AI assistance (Claude, Anthropic). The submitter directed the construction and QA but is not a Lean programmer. The mathematical content is classical (Doran & Lasenby, Ch. 3). Extra review scrutiny is welcomed. Co-authored-by: Claude --- Open design questions for reviewers: 1. **Naming**: Is `nvector` the right name? Eric Wieser suggested generalizing to n-vectors. Alternatives: `ιProd`, `grade`, or following the `exteriorPower` pattern via `equivExterior` pullback. 2. **Scalar contamination**: The spanning set `{ι m₁ * ι m₂}` includes `ι m * ι m = Q(m)` (scalars). Eric suggested pulling back `exteriorPower` through `equivExterior` for pure grades (requires `Invertible (2 : R)`). Happy to rework if that's preferred. 3. **instLieModuleSelf**: Should this be an upstream issue rather than a local workaround? @ocfnash 4. **ι_mul_ι_comm'**: This may duplicate existing API (`ι_mul_ι_comm b a` plus `polar_comm`). Happy to inline if reviewers prefer. Discussed on Zulip: https://leanprover.zulipchat.com (Is there code for X? thread) new-contributor t-algebra LLM-generated
label:t-algebra$
338/0 Mathlib.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Bivector.lean 2 2 ['github-actions'] eric-wieser
assignee:eric-wieser
14-23177
14 days ago
26-29545
26 days ago
26-30244
26 days
32583 MJ141592
author:MJ141592
refactor(SimpleGraph): change bridges not to require the edge to be present Remove the requirement for edges to exist in definition of isBridge, and then change the related lemmas to adjust for this, by renaming, fixing the statements and fixing the proofs, including in Acyclic. Closes #31690. --- - [x] depends on: #36802 - [x] depends on: #36804 t-combinatorics new-contributor 84/84 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean,Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean 4 20 ['MJ141592', 'SnirBroshi', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
13-80768
13 days ago
13-80804
13 days ago
14-22399
14 days
36832 KryptosAI
author:KryptosAI
chore(Data/Finset/Card): rename `pred_card_le_card_erase` to `sub_one_card_le_card_erase` ## Summary The name `pred_card_le_card_erase` suggests `Nat.pred` but the statement uses `- 1` (i.e., `Nat.sub 1`). Rename to `sub_one_card_le_card_erase` to match the actual statement. A deprecated alias is added for backwards compatibility. ### Files changed - `Mathlib/Data/Finset/Card.lean` — definition renamed + deprecated alias - `Mathlib/Data/Finset/Powerset.lean` — reference updated - `Mathlib/Combinatorics/Additive/SubsetSum.lean` — reference updated - `Mathlib/Algebra/Polynomial/EraseLead.lean` — reference updated Addresses the `Finset.pred_card_le_card_erase` item in #21584. ## AI disclosure I used Claude Code to explore the codebase (finding all references to rename) and to draft the PR description. I reviewed and understand all changes — these are straightforward renames with a deprecated alias. new-contributor 22/15 Mathlib/Algebra/Polynomial/EraseLead.lean,Mathlib/Combinatorics/Additive/SubsetSum.lean,Mathlib/Combinatorics/SetFamily/AhlswedeZhang.lean,Mathlib/Combinatorics/SetFamily/Shadow.lean,Mathlib/Data/Finset/Card.lean,Mathlib/Data/Finset/Powerset.lean,Mathlib/Data/Set/Card.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/RingTheory/Ideal/Operations.lean 9 5 ['KryptosAI', 'Multramate', 'github-actions', 'ooovi'] nobody
13-19361
13 days ago
13-19419
13 days ago
27-29221
27 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. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 395/0 Mathlib.lean,Mathlib/Combinatorics/DiHypergraph/Basic.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
12-78975
12 days ago
12-79022
12 days ago
70-61963
70 days
34182 IlPreteRosso
author:IlPreteRosso
refactor(Data/Finsupp): deprecate direct single ↔ Set.indicator shortcuts, add indicator_eq_set_indicator Routes Finsupp.single ↔ Set.indicator through Pi.single instead of direct shortcuts. Adds `indicator_eq_set_indicator` bridging `Finsupp.indicator` and `Set.indicator` for non-dependent functions. Deprecates `single_eq_set_indicator` and `single_eq_indicator` — users should compose through `single_eq_pi_single` + `Set.indicator_singleton` instead. Golfs `single_eq_update` via `single_eq_pi_single`. Continues #34083. t-data new-contributor 27/19 Mathlib/Data/Finsupp/Indicator.lean,Mathlib/Data/Finsupp/Single.lean 2 31 ['IlPreteRosso', 'eric-wieser', 'github-actions', 'mathlib-bors', 'urkud'] TwoFX
assignee:TwoFX
12-44391
12 days ago
12-50652
12 days ago
85-18918
85 days
37593 IlPreteRosso
author:IlPreteRosso
refactor(Data.Finset.*Antidiagonal): rename set-based defs to `set*Antidiagonal` Renames set-based `Finset.mulAntidiagonal` → `setMulAntidiagonal` (and SMul/VAdd variants) to free the `mulAntidiagonal` name for the planned `HasMulAntidiagonal` typeclass. Deprecation aliases added. Supersedes #34551 t-ring-theory new-contributor 178/96 Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/Data/Finset/MulAntidiagonal.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/HahnSeries/Summable.lean 6 2 ['github-actions'] nobody
12-12606
12 days ago
12-62252
12 days ago
12-63500
12 days
35733 mkaratarakis
author:mkaratarakis
feat: Algebraic setup and matrix coefficients for Gelfond-Schneider theorem This PR introduces the foundational algebraic setup and coefficient bounds required for the proof of the Gelfond-Schneider Theorem (Hilbert's Seventh Problem), which establishes that for algebraic numbers $\alpha \neq 0, 1$ and irrational algebraic $\beta$, the number $\alpha^\beta$ is transcendental. Following the contradiction argument presented in Loo-Keng Hua's "Introduction to Number Theory" (Chapter 17.9, 490 -493) Gelfond's Proof), this file constructs the common number field $K$ and sets up the scaled algebraic integers for the auxiliary linear system. This system will later be solved via Siegel's lemma (Lemma 8.2, 490, Hua). This PR is essentially the first half of page 490 in the book. The proof proceeds by assuming $\gamma = \alpha^\beta$ is algebraic, meaning $\alpha$, $\beta$, and $\gamma$ all lie in an algebraic field $K$ of degree $h$. 1. Bundles the common number field $K$, the complex embeddings, and the algebraic preimages $\alpha', \beta', \gamma'$, alongside the core hypotheses of the theorem. 2. Defines the field degree $h = [K : \mathbb{Q}]$, and bounds $m = 2h + 2$ and $n = q^2 / (2m)$ to control the dimensions of the linear system. 3. Defines $c_1$, a natural number chosen so that $c_1 \alpha$, $c_1 \beta$, and $c_1 \gamma$ are algebraic integers in $K$. We prove numerous bounding and integrality lemmas (`isIntegral_c₁α`, `isInt_β_bound`, etc.). 4. Formalizes the core algebraic coefficients $(a+b\beta)^k \alpha^{al} \gamma^{bl}$ which appear in the evaluation of the derivatives of the auxiliary function $R(x)$. 5. By scaling the system by $c_1^{n-1+2mq}$, we successfully restrict the entries of our linear system matrix `A` entirely to the ring of integers $\mathcal{O}_K$, preparing it for the application of Siegel's lemma. 6. House Bounds (`c₂`) : Establishes the foundational base integer $c_2$ to bound the absolute values of the conjugates (houses) of our coefficients. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 913/49 Mathlib.lean,Mathlib/NumberTheory/NumberField/House.lean,Mathlib/NumberTheory/Transcendental/GelfondSchneider/MainAlg.lean,Mathlib/RingTheory/IntegralClosure/Algebra/Basic.lean 4 16 ['github-actions', 'mkaratarakis', 'tb65536'] tb65536
assignee:tb65536
11-56633
11 days ago
11-56688
11 days ago
24-36598
24 days
37027 mike1729
author:mike1729
refactor(LocallyConvex,Topology): split WeakDual/WeakSpace and rename WeakBilin Reorganize the weak topology files for cleaner dependencies: 1. **Rename** `Analysis.LocallyConvex.WeakDual` → `Analysis.LocallyConvex.WeakBilin`: This file contains only general `WeakBilin` infrastructure (`LinearMap.toSeminormFamily`, `weakBilin_withSeminorms`, `WeakBilin.locallyConvexSpace`, etc.) with no reference to `WeakDual`. The name now reflects the content. 2. **Split** `Topology.Algebra.Module.Spaces.WeakDual` into `WeakDual` and `WeakSpace`: The `WeakSpace` type, its instances, and `toWeakSpace/toWeakSpaceCLM` move to a new `Topology.Algebra.Module.Spaces.WeakSpace`. This allows downstream files about weak spaces to avoid depending on WeakDual. 3. **Add** `WeakSpace.seminormFamily` and `WeakSpace.withSeminorms` to `Analysis.LocallyConvex.WeakSpace`: The weak topology on `WeakSpace 𝕜 E` is generated by the seminorm family `fun f x ↦ ‖f x‖` indexed by `StrongDual 𝕜 E`, via the general `LinearMap.weakBilin_withSeminorms` applied to the flipped `topDualPairing`. Moves: - Mathlib.Analysis.LocallyConvex.WeakDual → Mathlib.Analysis.LocallyConvex.WeakBilin - WeakSpace → Mathlib.Topology.Algebra.Module.Spaces.WeakSpace - toWeakSpace → Mathlib.Topology.Algebra.Module.Spaces.WeakSpace - toWeakSpaceCLM → Mathlib.Topology.Algebra.Module.Spaces.WeakSpace CC @j-loreaux --- - [ ] depends on: #37314 new-contributor file-removed 192/114 Mathlib.lean,Mathlib/Analysis/LocallyConvex/WeakBilin.lean,Mathlib/Analysis/LocallyConvex/WeakSpace.lean,Mathlib/Analysis/Normed/Module/WeakDual.lean,Mathlib/Topology/Algebra/Module/Spaces/WeakDual.lean,Mathlib/Topology/Algebra/Module/Spaces/WeakSpace.lean 6 6 ['github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
10-55362
10 days ago
10-55556
10 days ago
20-70085
20 days
36889 KryptosAI
author:KryptosAI
feat(LinearAlgebra/Matrix/MoorePenrose): define the Moore-Penrose pseudo-inverse Defines `IsMoorePenroseInverse` and constructs the Moore-Penrose pseudo-inverse for matrices over `RCLike` fields. Closes #24787. `Defs.lean` defines the predicate using the heterogeneous four-condition characterization from the issue, plus uniqueness for semigroups with `StarMul`. `Basic.lean` constructs the inverse via orthogonal projection and `ker(f)ᗮ ≃ₗ range(f)`, then proves: ```lean theorem exists_isMoorePenroseInverse (A : Matrix m n 𝕜) : ∃ (As : Matrix n m 𝕜), IsMoorePenroseInverse A As def moorePenroseInverse (A : Matrix m n 𝕜) : Matrix n m 𝕜 lemma moorePenroseInverse_conjTranspose : moorePenroseInverse (Aᴴ) = (moorePenroseInverse A)ᴴ lemma moorePenroseInverse_eq_nonsing_inv (hA : IsUnit A) : moorePenroseInverse A = A⁻¹ ``` ### AI disclosure - **Gemini 2.5 Pro**: proof planning, initial code, edits - **Claude Code (Opus 4.6)**: debugging, compilation, type-checking against mathlib4 I reviewed and directed all changes. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor LLM-generated
label:t-algebra$
402/0 Mathlib.lean,Mathlib/LinearAlgebra/Matrix/MoorePenrose/Basic.lean,Mathlib/LinearAlgebra/Matrix/MoorePenrose/Defs.lean 3 29 ['KryptosAI', 'eric-wieser', 'github-actions', 'themathqueen', 'vihdzp'] ocfnash
assignee:ocfnash
9-61108
9 days ago
13-19419
13 days ago
24-51967
24 days
37714 mortarsanjaya
author:mortarsanjaya
feat(Algebra/Order/Floor/Defs): `Nat.cast` is strictly monotone in `FloorSemiring` and `FloorRing` As title says, and without the `IsOrderedRing` assumption. Other than that, I removed the `IsOrderedRing` assumption from pretty much all the lemmas in `Algebra/Order/Floor/Defs` that could possibly have this assumption removed, and reduced some `IsStrictOrderedRing` assumptions to `IsOrderedRing` + `Nontrivial`. Due to strict monotonicity, we can also provide `CharZero` instance on `FloorSemiring` and `FloorRing`. Thus we can remove the `NeZero` and `Nontrivial` instances on them. The changes on `/Ring` and `/Semiring` are trivial changes due to some lemmas not requiring an `IsOrderedRing` instance anymore. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
104/29 Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/ContinuedFractions/Computation/TerminatesIffRat.lean,Mathlib/Algebra/Order/Floor/Defs.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semiring.lean 5 4 ['github-actions', 'mathlib-bors', 'mortarsanjaya'] nobody
9-30751
9 days ago
9-30751
9 days ago
9-33420
9 days
33520 NoneMore
author:NoneMore
feat(ModelTheory/ElementarySubstructures): add a variant of Tarski-Vaught test taking sets as input There should exist an `ElementarySubstructure.copy` such that we can directly bundle the set itself instaed of its closure as an elementary substructure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic new-contributor 91/0 Mathlib/ModelTheory/ElementarySubstructures.lean 1 9 ['Citronhat', 'NoneMore', 'fpvandoorn', 'github-actions'] fpvandoorn
assignee:fpvandoorn
8-51357
8 days ago
20-78278
20 days ago
102-69767
102 days
36849 mike1729
author:mike1729
feat(Analysis/Normed/Module/SchauderBasis): basic sequences and Grünblum criterium This PR introduces the theory of basic sequences in Banach spaces, following Albiac–Kalton. Defines basic sequences in normed spaces, and prove the classical Grünblum criterium for recognizing them. ### Main Definitions - `IsBasicSequence`: A `Prop` asserting that initial partial sums of `e` are bounded by `K` times the full partial sum. - `IsBasicSequence.toSchauderBasis`: Constructs a `SchauderBasis` on the algebraic span of a nonzero basic sequence. ### Main Results - `IsBasicSequence.linearIndependent`: A nonzero basic sequence is linearly independent. - `IsBasicSequence.coe_toSchauderBasis_apply`: The `n`-th basis vector of the constructed Schauder basis coerces to `e n` in the ambient space. - `IsBasicSequence.enormProjBound_le`: The projection bound of the constructed basis is at most `ENNReal.ofReal K`. --- - follow up to : #34209 - blocks : #35473 The next planned PRs: - general selection principle for basic sequences - characterization when a set contains a basic sequence in terms of weak closure and compactness - Eberlein–Šmulian theorem - weakly compact subsets of a Banach space are Fréchet–Urysohn spaces [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-analysis new-contributor 278/1 Mathlib.lean,Mathlib/Analysis/Normed/Module/SchauderBasis/Basic.lean,Mathlib/Analysis/Normed/Module/SchauderBasis/BasicSequence.lean 3 7 ['github-actions', 'j-loreaux', 'mike1729'] sgouezel
assignee:sgouezel
7-76529
7 days ago
7-79237
7 days ago
27-19212
27 days
37800 dtumad
author:dtumad
feat(Probability): Add definition of `SPMF` based on existing `PMF` This PR adds a definition of `SPMF A` based on the existing `PMF A` definition, and adds basic monadic operations on them. --- There's a few different projects now using a definition along these lines so it would be good to align things. I tried to just port just the most basic things for now until the definitions can be agreed on. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 231/0 Mathlib.lean,Mathlib/Probability/ProbabilityMassFunction/Basic.lean,Mathlib/Probability/ProbabilityMassFunction/Constructions.lean,Mathlib/Probability/ProbabilityMassFunction/Monad.lean,Mathlib/Probability/ProbabilityMassFunction/SPMF.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean 6 2 ['github-actions'] nobody
7-65890
7 days ago
7-65954
7 days ago
7-67145
7 days
37722 SabrinaJewson
author:SabrinaJewson
feat(Order/Cover): intervals equal singletons iff To complement `Set.Icc_eq_singleton_iff`, this introduces: - `Set.Ioc_eq_singleton_iff` - `Set.Ico_eq_singleton_iff` - `Set.Ioi_eq_singleton_iff` - `Set.Iio_eq_singleton_iff` - `Set.Ioo_eq_singleton_iff` Unforunately because of the order of the ands, the last cannot be made self-dual. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 39/0 Mathlib/Order/Cover.lean 1 3 ['github-actions', 'mathlib-merge-conflicts'] nobody
7-24933
7 days ago
7-24957
7 days ago
9-11193
9 days
37791 SnkXyx
author:SnkXyx
feat(Algebra/MvPolynomial/Variables): add some lemmas about `vars` These lemmas are used in #36103 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
18/0 Mathlib/Algebra/MvPolynomial/Variables.lean 1 3 ['Hagb', 'github-actions'] nobody
7-20700
7 days ago
7-82901
7 days ago
7-83462
7 days
37819 YellPika
author:YellPika
feat(Order/OmegaCompletePartialOrder): add `OmegaCompletePartialOrder` instance for `WithBot` with basic `ωScottContinuous` lemmas This is a modification of #34093. See #34093 for details. --- - [x] depends on: #33941 - [x] depends on: #37258 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 337/10 Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Order/TypeTags.lean,Mathlib/Order/WithBot.lean 6 3 ['github-actions', 'mathlib-dependent-issues'] Komyyy
assignee:Komyyy
7-16818
7 days ago
7-16861
7 days ago
7-20153
7 days
32546 anishrajeev
author:anishrajeev
feat(ModelTheory): Prove compactness of the type space Define the space of types and prove various topological properties of it (zero dimensional, totally separated, compact, baire). The goal is to formalize the proof of the Omitting Types Theorem - [ ] depends on: #32215 t-logic new-contributor large-import 31/1 Mathlib/ModelTheory/Topology/Types.lean 1 12 ['NoneMore', 'anishrajeev', 'fpvandoorn', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] fpvandoorn
assignee:fpvandoorn
6-77498
6 days ago
8-9158
8 days ago
12-6591
12 days
37698 Qulinecier
author:Qulinecier
feat: add TendstoInDistribution.continuousOn_comp_prodMk_of_tendstoInMeasure_const This PR adds `TendstoInDistribution.continuousOn_comp_prodMk_of_tendstoInMeasure_const`, a generalization of the existing `TendstoInDistribution.continuous_comp_prodMk_of_tendstoInMeasure_const` (Slutsky's theorem) to functions that are only continuous on a closed subset `s` of the domain, rather than everywhere. This is useful when `g` is only well-behaved on a proper closed subset, such as division (away from zero) or logarithm (on the positive reals), where the previous version requiring global continuity was not applicable. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 92/0 Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean 1 2 ['github-actions'] nobody
6-71551
6 days ago
9-60238
9 days ago
9-59712
9 days
34138 pfaffelh
author:pfaffelh
feat(MeasureTheory): Introduce `DiscreteMeasure α` giving rise to a `Measure α` as a sum of `dirac`s Define `DiscreteMeasure α` as a structure with `weight : α → ℝ≥0∞` Define `toMeasure (w : DiscreteMeasure α) : Measure α` as a sum of diracs Show properties of the resulting objects This PR intends to start a more userfriendly interaction with discrete probability (measure) theory, in contrast to probability mass functions (`PMF`). There are two main differences between `DiscreteMeasure` and `PMF`: * Every `PMF` hast the additional property `HasSum 1`, making the resulting measure a probability measure. (For `DiscreteMeasure`, I intend to use the typeclass `IsProbabilityMeasure`in a later PR instead.) * The `toMeasure` function of `MassFunction` defines the measure as a sum of diracs, which immediately makes computations possible. Discussion thread on [zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/PMF.20Refactor.3A.20FunLike.20vs.20Definition.20Change) - depends on: #37060 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor 212/0 Mathlib.lean,Mathlib/Algebra/GroupWithZero/Indicator.lean,Mathlib/Data/Set/Pairwise/Basic.lean,Mathlib/MeasureTheory/Measure/DiscreteMeasure.lean 4 23 ['DavidLedvinka', 'github-actions', 'mathlib-merge-conflicts', 'metakunt', 'ocfnash', 'pfaffelh'] ocfnash
assignee:ocfnash
6-46154
6 days ago
6-73882
6 days ago
78-50688
78 days
34375 jvanwinden
author:jvanwinden
feat(MeasureTheory/Function/AEEqOfLIntegral): introduce lemmas for rewriting a.e. inequalities Introduce the following lemmas: - ae_le_const_iff_forall_gt_imp_ae_lt, - ae_const_le_iff_forall_lt_imp_ae_gt, - ae_le_const_iff_forall_gt_imp_ae_le, - ae_const_le_iff_forall_lt_imp_ae_ge, which can be used get an epsilon of room in a.e. inequalities, with the epsilon being outside the a.e. quantifier. The 'le/ge' variants require a dense ordering. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 31/44 Mathlib/MeasureTheory/Function/AEEqOfLIntegral.lean,Mathlib/Topology/Order/LiminfLimsup.lean 2 13 ['EtienneC30', 'github-actions', 'jvanwinden', 'urkud'] kex-y
assignee:kex-y
6-42959
6 days ago
6-49304
6 days ago
47-53655
47 days
37682 SabrinaJewson
author:SabrinaJewson
refactor(Order/OrdContinuous): redefine left and right order continuity to not require preserving ⊥/⊤ `LeftOrdContinuous` currently requires that `f ⊥ = ⊥`, but this means that many functions that are perhaps intuitively left-continuous (like `f x = x + 1` on `ℝ≥0`) are not. In particular, this change means that functions between conditionally complete lattices are `LeftOrdContinuous` iff they are monotone and topologically left continuous (see `MonotoneOn.map_csSup_of_continuousWithinAt` for the reverse direction). If one wants the concept that existed before, one can either accept the `f ⊥ = ⊥` hypothesis separately or, if the function is between complete lattices, use the left side of a `GaloisConnection` (which is equivalent, although I think this is not yet in Mathlib). This removes the definitional equality of the type in favour of a structure. Since most of the time users will be working with the `sSup` versions and not with `IsLUB`, I think this is justified. As a consequence, this removes the definitional equality between `LeftOrdContinuous` and `RightOrdContinuous` of the dual – the latter could be redefined to re-add this, but we do have conversion functions. `LeftOrdContinuous.continuousWithinAt_Iic` is rewritten to accomodate these changes; the superfluous `DenselyOrdered` assumption is also removed. [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/LeftOrdContinuous.20requires.20f.28.E2.8A.A5.29.20.3D.20.E2.8A.A5/near/582932491) --- - [x] depends on: #37735 - [x] depends on: #37772 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order 52/38 Mathlib/Order/OrdContinuous.lean,Mathlib/Order/SemiconjSup.lean,Mathlib/Topology/Order/Basic.lean 3 10 ['SabrinaJewson', 'astrainfinita', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'vihdzp'] nobody
6-31190
6 days ago
6-31262
6 days ago
8-27845
8 days
28546 Sfgangloff
author:Sfgangloff
feat(SymbolicDynamics): basic setup of Zd, full shift, cylinders, pat… This PR adds a **group-generic** foundation for symbolic dynamics over an arbitrary group `G`, together with convenient specializations for `ℤ` and `ℤ^d`. Summary of additions: - **Full shift and shift action** - `abbrev FullShift (A G) := G → A` (inherits product topology from the Π-type). - Right shift `shift g x` with convention `(shift g x) h = x (h * g)`. - **Cylinders and topology** - `cylinder U x : Set (G → A)` for finite `U : Finset G`. - Cylinders are open under `[DiscreteTopology A]`; with a finite alphabet they are also closed. - Equality with dependent products: `cylinder U x = Set.pi (↑U) (fun i => ({x i} : Set A))`, enabling use of the `Set.pi` API. - **Patterns, occurrences, and subshifts** - `Pattern A G` with finite `support : Finset G` and `data : support → A`. - `Pattern.occursIn p x g` (occurrence at translate `g`) and the expected shift law. - `forbids F` and `Subshift A G` (closed, shift-invariant subsets). - `FixedSupport A G U` with an equivalence to `(U → A)` to obtain finiteness. - **Language on finite shapes and counting** - `languageOn X U`, `languageCardOn X U`, and `patternCountOn Y U`. - **Entropy along a shape sequence** - `limsupAtTop` (as an `sInf` of eventual upper bounds). - `entropyAlong X F hF := limsup (log (patternCountOn X (F n) + 1) / |F n|)` for any nonempty finite shapes `F : ℕ → Finset G` (the `+ 1` avoids `log 0`). - **Specializations** - `IntShapes`: segments `[-n,n]` on `Multiplicative ℤ`, with `entropy_Z`. - `ZdShapes`: boxes `[-n,n]^d` on `ℤ^d` (as functions `Fin d → ℤ`), with `entropy_Zd`. Mathematical remarks: - The API is **shape-parametric**: entropy is defined along user-provided finite shapes. - On **amenable** groups, using a **Følner** sequence yields a canonical value (Ornstein–Weiss). This PR does not assume amenability; the family of shapes is an explicit input. Motivation: Provide a clean, reusable base for symbolic dynamics on groups in mathlib. Future work: - Add a Følner predicate and prove shape-independence / limit existence on amenable groups. - Expand the `ℤ`/`ℤ^d` toolkit (alternative shapes, mixing, factors). - Develop 1D theory and, longer-term, multidimensional SFT results (e.g. along the lines of Hochman–Meyerovitch). t-dynamics new-contributor 665/0 Mathlib.lean,Mathlib/Dynamics/SymbolicDynamics/Basic.lean,Mathlib/Tactic/Translate/ToAdditive.lean 3 183 ['Sfgangloff', 'botbaki-review', 'eric-wieser', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'sgouezel'] urkud
assignee:urkud
6-7997
6 days ago
6-8032
6 days ago
151-19352
151 days
33443 sahanwijetunga
author:sahanwijetunga
feat: Define Isometries of Bilinear Spaces --- We define Isometries of Bilinear Spaces, closely following the implementation of isometries of quadratic spaces. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor maintainer-merge
label:t-algebra$
278/0 Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/Isometry.lean,Mathlib/LinearAlgebra/BilinearForm/IsometryEquiv.lean 3 25 ['github-actions', 'robin-carlier', 'sahanwijetunga'] mattrobball
assignee:mattrobball
5-85323
5 days ago
5-85482
5 days ago
54-25664
54 days
37884 DanielJHorton
author:DanielJHorton
feat(LinearAlgebra/TensorProduct/Baisc): add lift_zero theorem for TensorProduct --- Added the following theorem to `TensorProduct` ``` @[simp] theorem lift_zero : lift (0 : M →ₛₗ[σ₁₂] N →ₛₗ[σ₁₂] P₂) = 0 := Eq.symm <| lift.unique fun _ _ => by simp only [LinearMap.zero_apply] ``` new-contributor t-algebra easy
label:t-algebra$
4/0 Mathlib/LinearAlgebra/TensorProduct/Basic.lean 1 2 ['github-actions'] nobody
5-62791
5 days ago
5-65068
5 days ago
5-64613
5 days
35394 HugLycan
author:HugLycan
feat(Tactic/Positivity): make positivity work for types that are not partial orders Make positivity work for types that are not partial orders Most PositivityExt haven't been updated for non partial order cases yet. They will be updated in the later PR. `Strictness` now does not depend `Q(PartialOrder $α)`, and the constructors of `Strictness` now have their order typeclass arguments. In order to help `Qq` synth instances property, we have to move `assertInstancesCommute` to inner branch, manually add `haveI'` or explicitly pass the order typeclass instance into `.positive`/`.nonnegative`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-meta 611/322 Mathlib/Algebra/Order/AbsoluteValue/Basic.lean,Mathlib/Algebra/Order/Algebra.lean,Mathlib/Algebra/Order/BigOperators/Expect.lean,Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean,Mathlib/Algebra/Order/Field/Basic.lean,Mathlib/Algebra/Order/Field/Power.lean,Mathlib/Algebra/Order/Floor/Extended.lean,Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Module/Field.lean,Mathlib/Analysis/Complex/BorelCaratheodory.lean,Mathlib/Analysis/Complex/Order.lean,Mathlib/Analysis/SpecialFunctions/Bernstein.lean,Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Arctan.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/DerivHyp.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Removal.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/ENNReal/Real.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/EReal/Inv.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/Data/Rat/Cast/Order.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/MeasureTheory/Integral/Bochner/Basic.lean,Mathlib/MeasureTheory/Measure/Real.lean,Mathlib/NumberTheory/ArithmeticFunction/Misc.lean,Mathlib/NumberTheory/ArithmeticFunction/Zeta.lean,Mathlib/NumberTheory/LucasLehmer.lean,Mathlib/Tactic/Positivity/Basic.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Positivity/Finset.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean 37 23 ['HugLycan', 'JovanGerb', 'fpvandoorn', 'github-actions', 'joneugster'] dwrensha
assignee:dwrensha
5-23141
5 days ago
27-80005
27 days ago
27-82597
27 days
37871 JJYYY-JJY
author:JJYYY-JJY
feat: support intros and simple rintro in introMerge * Extend the `introMerge` linter to handle `intros` and a safe subset of `rintro` tactics, allowing it to suggest merging a wider variety of adjacent introduction tactics. * Introduce helper functions to normalize supported `rcases` and `rintro` patterns into equivalent `intro` arguments for consistent analysis. * Add tests to verify the correct merging of mixed introduction tactics and ensure intervening tactics prevent merging. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta new-contributor 101/9 Mathlib/Dynamics/OmegaLimit.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,MathlibTest/TacticAnalysis.lean 3 3 ['copilot-pull-request-reviewer', 'github-actions'] dwrensha
assignee:dwrensha
5-23129
5 days ago
6-14140
6 days ago
6-16851
6 days
37584 kennethgoodman
author:kennethgoodman
feat(Data/Nat/Fib): formalize Lamé's theorem ## Summary Formalize [Lamé's theorem](https://en.wikipedia.org/wiki/Lam%C3%A9%27s_theorem) (1844), the founding result of computational complexity theory. **Lamé's Theorem:** If the Euclidean algorithm on inputs `(a, b)` with `b ≤ a` takes `n + 1` division steps, then `b ≥ fib(n + 1)` and `a ≥ fib(n + 2)`. ### New definitions - `Nat.euclidSteps`: counts the number of division steps in the Euclidean algorithm on natural number inputs. ### New theorems - `Nat.fib_le_of_euclidSteps`: the main Lamé bound — Fibonacci lower bound on inputs given a step count. - `Nat.euclidSteps_le_of_lt_fib`: the contrapositive — step count upper bound given a Fibonacci bound on the smaller input. - `Nat.add_mod_le`: helper lemma that `b + a % b ≤ a` when `b ≤ a` and `0 < b`. ### Proof strategy Induction on `n`, tracking both elements of the pair. The key insight is that each Euclidean step replaces `(a, b)` with `(b, a % b)`, and since `a ≥ b + a % b` (because `a / b ≥ 1`), the Fibonacci recurrence `fib(n+3) = fib(n+2) + fib(n+1)` matches the structure of the algorithm. ### References - Gabriel Lamé, *Note sur la limite du nombre des divisions dans la recherche du plus grand commun diviseur entre deux nombres entiers*, Comptes rendus de l'Académie des sciences, 1844. --- ### AI usage disclosure Per the [Mathlib AI guidelines](https://leanprover-community.github.io/contribute/index.html#use-of-ai): Claude Code (Claude Opus 4.6) was used to assist with writing the Lean 4 proof code, fixing tactic errors, and drafting this PR description. The mathematical proof (induction on step count, tracking both pair elements through the Fibonacci recurrence) was designed by hand and verified on paper before formalization. I have reviewed and understand every line of the resulting Lean code and can explain all proof steps. --- - [x] builds cleanly (`lake build Mathlib.Data.Nat.Fib.Lame`) - [x] no `sorry` - [x] lines ≤ 100 characters, no trailing whitespace - [x] `autoImplicit false` - [x] docstrings on all public declarations new-contributor LLM-generated 121/0 Mathlib.lean,Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/Fib/Basic.lean,Mathlib/Data/Nat/Fib/Lame.lean,docs/1000.yaml 5 24 ['euprunin', 'github-actions', 'kennethgoodman', 'vihdzp', 'wwylele'] nobody
4-63267
4 days ago
4-66154
4 days ago
12-21593
12 days
31662 edwin1729
author:edwin1729
feat(Topology/Order): topological basis of scott topology on Complete… …PartialOrder --- [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.3E.20Algebraic.20complete.20partial.20order.20and.20domain.20theory/with/536359313) for this PR. (2/5) PRs in domain theory, proving that scott topologies over Algebraic DCPOs (`CompletePartialOrder`) are sober. The main reference is [Renata, Duality in Domain Theory](https://alyata.github.io/documents/duality_domain_theory.pdf). But the statements can also be found in the canonical text [Abramsky and Jung](https://www.cs.ox.ac.uk/people/samson.abramsky/handbook.pdf) This first PR proves two prerequisites, namely: - the specialization order induced by the scott topology corresponds to the existing order of the DCPO. Prop 3.1.5 in [Duality in Domain Theory](https://alyata.github.io/documents/duality_domain_theory.pdf) and Prop 2.3.2(1) in [Abramsky and Jung](https://www.cs.ox.ac.uk/people/samson.abramsky/handbook.pdf) - the upward closures of compact elements of the DCPO form a topological basis for the Scott Topology. Prop 3.5.2 in [Duality in Domain Theory](https://alyata.github.io/documents/duality_domain_theory.pdf) and Prop 2.3.6(2) in [Abramsky and Jung](https://www.cs.ox.ac.uk/people/samson.abramsky/handbook.pdf) - [x] depends on: #33061 **The next PR is here:** #31670 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 235/1 Mathlib.lean,Mathlib/Topology/Order/ScottTopology.lean,Mathlib/Topology/Order/ScottTopologyDCPO.lean,docs/references.bib 4 67 ['b-mehta', 'edwin1729', 'github-actions', 'mathlib-merge-conflicts', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'plp127'] urkud
assignee:urkud
4-53337
4 days ago
39-64376
39 days ago
46-30167
46 days
37774 weisbrja
author:weisbrja
fix: change variables in `bicompl` to `Sort*` and add missing theorem mentioned in `bicompl` docs [#mathlib4 > Why does Mathlib use Type* instead of Sort* in some places?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Why.20does.20Mathlib.20use.20Type.2A.20instead.20of.20Sort.2A.20in.20some.20places.3F/with/583882342) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic 6/1 Mathlib/Logic/Function/Basic.lean 1 7 ['github-actions', 'kbuzzard', 'leanprover-radar', 'weisbrja'] nobody
4-40650
4 days ago
4-50117
4 days ago
8-35347
8 days
37928 AlexeyMilovanov
author:AlexeyMilovanov
refactor(Computability.Encoding): unbundle Γ and remove FinEncoding This PR unbundles the alphabet `Γ` from the `Encoding` structure and completely removes `FinEncoding`. `Encoding`: The alphabet `Γ` is now an explicit parameter: `structure Encoding (α : Type u) (Γ : Type v)`. `FinEncoding`: Removed. Finiteness is now handled via standard typeclasses (e.g., `[Fintype Γ] (e : Encoding α Γ)`). Combinators: Functions like `finEncodingPair` are simplified to `encodingPair`, dropping the `fin` prefix and `[Fintype]` requirements where no longer needed. Downstream: Mechanically updated `Mathlib.Computability` and `Mathlib.ModelTheory` to pass the explicit `Γ` and use `[Fintype Γ]` where `FinEncoding` was previously required. new-contributor 30/67 Mathlib/Computability/Encoding.lean,Mathlib/ModelTheory/Encoding.lean 2 5 ['github-actions', 'vihdzp'] nobody
4-30334
4 days ago
4-75685
4 days ago
4-75159
4 days
37720 cjrl
author:cjrl
feat(Data/Fintype/Card): existsUnique_notMem_image_of_injective_of_card_succ This pull requests adds a small theorem `existsUnique_notMem_image_of_injective_of_card_succ` to `Mathlib/Data/Fintype/Card` that says given an injective map f : α → β such that β has cardinality one more than α, there exists a unique element of β not in the image of f. This can be viewed as going in the opposite direction of `card_lt_of_injective_of_notMem`. This little fact is needed for our Latin Square PR #36698. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor t-set-theory 15/0 Mathlib/Data/Fintype/Card.lean 1 6 ['IvanRenison', 'cjrl', 'github-actions'] nobody
3-43638
3 days ago
3-43696
3 days ago
9-10621
9 days
37190 cjrl
author:cjrl
feat(Combinatorics): Set-Valued Pigeonhole Principle This PR contributes two theorems to combinatorics: - `exists_lt_card_cover_of_card_biUnion_lt_card` is a set-valued version of the pigeonhole principle. - `sum_card_eq_sum_card_cover_biUnion` is a set theoretic corollary of a double counting result proved for bipartite graphs (`Finset.sum_card_bipartiteAbove_eq_sum_card_bipartiteBelow`). This was needed to prove the above pigeonhole principle. The motivation for these results is our Latin Square PR #36698. These results were proved in less general terms in that PR, but are independent of Latin Square considerations and so we have generalized and moved them into more relevant files. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 38/0 Mathlib/Combinatorics/Enumerative/DoubleCounting.lean,Mathlib/Combinatorics/Pigeonhole.lean 2 16 ['IvanRenison', 'cjrl', 'ghseeli', 'github-actions', 'j-loreaux', 'vlad902'] nobody
3-42830
3 days ago
3-42881
3 days ago
19-13154
19 days
37960 DanielJHorton
author:DanielJHorton
doc: typo in docstring for alternatingMapToDual t-algebra easy new-contributor
label:t-algebra$
1/1 Mathlib/LinearAlgebra/ExteriorPower/Pairing.lean 1 2 ['github-actions'] nobody
3-29467
3 days ago
3-46487
3 days ago
3-45961
3 days
37942 yanghangAI
author:yanghangAI
feat(MeasureTheory/Integral/IntervalIntegral/Fubini): Fubini swap for two iterated interval integrals ## Summary Adds `MeasureTheory.intervalIntegral_swap_continuous`: Fubini's theorem for two iterated `intervalIntegral`s on `ℝ` under joint continuity of the integrand. ```lean lemma intervalIntegral_swap_continuous {f : ℝ → ℝ → ℝ} (hf : Continuous (Function.uncurry f)) (a b c d : ℝ) : (∫ y in c..d, ∫ x in a..b, f x y) = (∫ x in a..b, ∫ y in c..d, f x y) ``` ## Motivation Mathlib already provides: - `MeasureTheory.integral_integral_swap` — swaps two full integrals under product integrability - `MeasureTheory.intervalIntegral_integral_swap` — swaps one interval integral with one full integral Neither directly swaps two iterated interval integrals, which is a common idiom when reducing two-dimensional integrals to iterated one-dimensional ones (for example when reducing a double integral over a rectangle to iterated 1D integrals in calculus proofs). This PR fills that gap. ## Proof The proof handles all four orientation combinations (`a ≤ b` vs `b ≤ a`, `c ≤ d` vs `d ≤ c`). It reduces to the ordered case via `intervalIntegral.integral_symm` / `intervalIntegral.integral_neg`, then converts both interval integrals to a single `setIntegral` over `Set.Icc a b ×ˢ Set.Icc c d` via `setIntegral_prod` and `setIntegral_prod_swap`. Integrability on the compact product rectangle comes from `ContinuousOn.integrableOn_compact`. ## AI assistance disclosure This PR was prepared with help from [Claude Code](https://claude.com/claude-code) (Anthropic's Claude Opus 4.6). Specifically, Claude Code: - drafted the initial proof structure and the orientation case split; - located the relevant Mathlib lemmas (`setIntegral_prod`, `setIntegral_prod_swap`, `ContinuousOn.integrableOn_compact`, `Ioc_ae_eq_Icc`) and wired them together; - iterated on compiler errors until the proof built cleanly under `lake build`, `lake exe shake`, and `lake exe lint-style`. All mathematical content was reviewed by me before committing, and I verified the final version builds cleanly in a fresh Mathlib tree. I am responsible for the correctness and style of this PR and will handle any review feedback myself. Happy to discuss the workflow with maintainers if there's interest or concern. ## Zulip I posted in \`#mathlib4 > general\` asking if this was duplicate work — no responses yet, proceeding since it's a small standalone helper. Happy to close if this conflicts with anyone's in-flight branch. t-measure-probability new-contributor LLM-generated 47/0 Mathlib/MeasureTheory/Integral/Prod.lean 1 4 ['CoolRmal', 'github-actions', 'wwylele'] EtienneC30
assignee:EtienneC30
3-22728
3 days ago
4-14368
4 days ago
4-13842
4 days
37625 slavanaprienko
author:slavanaprienko
feat(LinearAlgebra/Matrix/Charpoly): general coefficient formula as sum of principal minors This PR adds a general formula for the coefficients of `det(1 + X • M)` as sums of principal minors, generalizing the existing `coeff_det_one_add_X_smul_one` (k=1, trace) and `det_eq_sign_charpoly_coeff` (k=n, determinant). It also derives the corresponding formula for the coefficients of the characteristic polynomial via `charpolyRev`. New results: - `det_piecewise_one_eq_submatrix_det`: relates piecewise-with-identity to principal submatrix determinants - `coeff_det_one_add_X_smul_eq_sum_minors`: the k-th coefficient of `det(1 + X • M)` equals the sum of k×k principal minors - `charpoly_coeff_eq_sum_minors`: coefficients of the characteristic polynomial as signed sums of principal minors --- t-algebra new-contributor
label:t-algebra$
105/1 Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean 1 24 ['eric-wieser', 'github-actions', 'slavanaprienko', 'wwylele'] nobody
3-13100
3 days ago
11-11129
11 days ago
12-26091
12 days
37138 dtumad
author:dtumad
feat(Data/FinEnum): instances for standard signed and unsigned integer types Adds `FinEnum` instances for `UIntN`/`IntN` for various `N`, and for platform sized integers. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor maintainer-merge 45/0 Mathlib/Data/FinEnum.lean 1 11 ['dtumad', 'github-actions', 'joneugster', 'linesthatinterlace'] joneugster
assignee:joneugster
2-75543
2 days ago
15-57328
15 days ago
20-6635
20 days
35402 samueloettl
author:samueloettl
feat(Dynamics/BirkhoffSum): birkhoffAverage const --- I think this is useful and one of these should be a simp lemma. I'm not really sure if I got the naming of the theorems correct. When generalizing to the assumption (n : R) ≠ 0 instead of the special case CharZero R with n ≠ 0 I had to use "open Classical in". I'm a bit unfamiliar with that part so please check if this makes sense. See also https://github.com/leanprover-community/mathlib4/pull/35307#discussion_r2823586252 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics new-contributor 14/0 Mathlib/Dynamics/BirkhoffSum/Average.lean 1 10 ['Maldooor', 'github-actions', 'samueloettl'] nobody
2-68527
2 days ago
2-68585
2 days ago
58-61438
58 days
37814 sglasman
author:sglasman
feat: Equivalence between HopfAlgCat R and Hopf (ModuleCat R) This PR resolves a TODO by demonstrating an equivalence of categories between two models of the category of Hopf algebras over a commutative ring R, that of Hopf objects in the module category of R and that of types with a `HopfAlgebra R` instance. --- AI declaration: I consulted with Claude on proof strategies. The proofs were ultimately written by me. new-contributor large-import 214/4 Mathlib/CategoryTheory/Monoidal/Hopf_.lean,Mathlib/RingTheory/HopfAlgebra/Basic.lean 2 4 ['github-actions', 'robin-carlier', 'sglasman'] nobody
2-62390
2 days ago
7-38319
7 days ago
7-37793
7 days
34773 semaraugusto
author:semaraugusto
feat(InformationTheory): add Shannon entropy for probability mass functions Add Shannon entropy for probability mass functions This PR defines the Shannon entropy of a probability mass function as an ℝ-valued infinite sum using `Real.negMulLog`, and proves basic properties and standard computations. Main results include: * entropy is nonnegative; * entropy vanishes iff the PMF is deterministic (`PMF.pure`); * entropy is strictly positive for non-pure PMFs; * entropy of a Bernoulli PMF coincides with `Real.binEntropy`; * entropy of uniform distributions is `log` of the cardinality, both for `PMF.uniformOfFintype` and `PMF.uniformOfFinset`. Several small helper lemmas isolate technical arguments about supports, coercions from `ℝ≥0∞`, and bounds on infinite sums, in order to keep the main proofs readable. See the [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/generic.20shannon.20entropy.20formalization.20mathlib4/with/570643335). --- I used ChatGPT for some proof structuring and refactoring suggestions, but all proofs were manually checked and adapted. I verified the arguments and adjusted naming and structure to follow mathlib conventions. The proof of shannonEntropy_eq_log_card_sub_toReal_klDiv_uniformOfFintype and some of its helper lemmas were initially generated using Codex. I manually reviewed the generated proof, checked each step, and refactored the code and naming to follow mathlib conventions. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor LLM-generated 417/0 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Log/NegMulLog.lean,Mathlib/InformationTheory/Entropy.lean 3 15 ['adomasbaliuka', 'dupuisf', 'euprunin', 'github-actions', 'mathlib-merge-conflicts', 'mattrobball', 'semaraugusto', 'wwylele'] dupuisf and sgouezel
assignee:sgouezel assignee:dupuisf
2-52386
2 days ago
11-28734
11 days ago
20-46312
20 days
37796 JadAbouHawili
author:JadAbouHawili
feat(Data/Set): add mem_singleton lemma --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 9/3 Mathlib/Data/Finset/Card.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Set/Insert.lean 3 5 ['JadAbouHawili', 'github-actions', 'wwylele'] nobody
2-48818
2 days ago
4-40011
4 days ago
7-59073
7 days
36758 LarsenClose
author:LarsenClose
feat(Algebra/Category/ModuleCat): add locally finitely presentable instance Prove that `ModuleCat R` is locally finitely presentable for any commutative ring `R`. The free rank-1 module is a small strong generator of `ℵ₀`-presentable objects (Gabriel-Ulmer, Adamek-Rosicky Theorem 1.11). This is the first `IsLocallyFinitelyPresentable` instance for an algebraic category in Mathlib. Opens the path to LFP instances for other algebraic categories (groups, rings, etc.) via the same generator pattern. Companion to #36104. ### AI disclosure Developed with assistance from Claude (Anthropic). AI was used for proof exploration, convention checking, and PR preparation. All mathematical content and proof strategy reviewed and understood by the author. new-contributor t-algebra LLM-generated
label:t-algebra$
163/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ForgetCorepresentable.lean,Mathlib/Algebra/Category/ModuleCat/Presentable.lean 3 21 ['LarsenClose', 'eric-wieser', 'github-actions', 'joelriou', 'robin-carlier'] nobody
2-43868
2 days ago
2-43868
2 days ago
5-7015
5 days
37062 tannerduve
author:tannerduve
feat(Computability): Turing join and semilattice structure on Turing degrees ## Summary - Add `Partrec.kronecker` (equality test) and `Partrec.join` (disjoint union by parity) in `Partrec.lean` - Prove `Nat.RecursiveIn` is closed under computable conditionals (`cond_const`, `cond`) - Show each component reduces to the join (`left_le_join`, `right_le_join`) and the join is the least upper bound (`join_le`) - Establish `SemilatticeSup` instance on `TuringDegree` t-computability new-contributor large-import 311/15 Mathlib/Computability/Partrec.lean,Mathlib/Computability/RecursiveIn.lean,Mathlib/Computability/TuringDegree.lean 3 5 ['Komyyy', 'github-actions', 'mathlib-merge-conflicts', 'tannerduve'] Komyyy
assignee:Komyyy
2-37559
2 days ago
2-58139
2 days ago
3-33507
3 days
36667 NoneMore
author:NoneMore
feat(ModelTheory): add `exClosure` definition for first-order formulas Prepare for moving realizations between elementarily equivalent structures. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic 37/0 Mathlib/ModelTheory/Semantics.lean,Mathlib/ModelTheory/Syntax.lean 2 2 ['github-actions'] nobody
2-23238
2 days ago
32-7455
32 days ago
32-6929
32 days
34851 dennj
author:dennj
feat(Data/Matrix/Mul): add diagonal and transpose lemmas for vector operations This adds three lemmas for matrix-vector operations that serve as foundational support for future ML formalization: - `vecMul_diagonal_dotProduct`: weighted inner product `x ᵥ* diagonal d ⬝ᵥ y = ∑ i, d i * x i * y i` - `dotProduct_transpose_mulVec`: bilinear form symmetry `x ⬝ᵥ Aᵀ *ᵥ y = y ⬝ᵥ A *ᵥ x` - `mul_diagonal_mulVec`: column-weighted sum `(A * diagonal d) *ᵥ x = ∑ i, (d i * x i) • A.col i` These are basic linear algebra identities involving diagonal matrices and vector operations that appear frequently in machine learning contexts (weighted inner products, attention mechanisms, feature scaling, diagonal preconditioning). t-data new-contributor 22/0 Mathlib/Data/Matrix/Mul.lean 1 7 ['dennj', 'eric-wieser', 'github-actions', 'themathqueen'] nobody
2-23230
2 days ago
70-38704
70 days ago
70-38178
70 days
36210 vbeffara
author:vbeffara
feat(Combinatorics/SimpleGraph): definitions of graph contraction and graph minor A contraction is the image of a graph through a surjective function with connected fibers, and a minor is a contraction of a subgraph. This PR shows that being a contraction is transitive, but does not show the same for minors because the proof is more involved, it will be in a subsequent PR. The definitions are in `Prop` and do not contain data, but I'm not sure if that was the right choice. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 151/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Contraction.lean,Mathlib/Combinatorics/SimpleGraph/Minor.lean 3 7 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'vbeffara'] b-mehta
assignee:b-mehta
2-22739
2 days ago
27-62764
27 days ago
41-2428
41 days
36787 hommmmm
author:hommmmm
feat(RingTheory/LocalRing): Krull dimension results for maximal ideal of local ring ## Summary This PR adds: * `IsLocalRing.exists_mem_maximalIdeal_not_mem_sq`: In a Noetherian local ring of positive Krull dimension, there exists an element in the maximal ideal that is not in its square. The result follows from Nakayama's lemma: if every element of the maximal ideal `𝔪` were in `𝔪²`, then `𝔪 = 𝔪²`, and Nakayama gives `𝔪 = ⊥`, contradicting positive dimension. ## Acknowledgements Thanks to Dora Kassabova and Leopold Mayer for edit suggestions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-ring-theory 14/0 Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean 1 15 ['NoahW314', 'chrisflav', 'github-actions', 'hommmmm', 'tb65536', 'wwylele'] chrisflav
assignee:chrisflav
2-21142
2 days ago
2-21191
2 days ago
29-3480
29 days
35287 arnoudvanderleer
author:arnoudvanderleer
feat(AlgebraicTopology/SimplicialSet): define isomorphisms in simplicial sets, and the coherent isomorphism simplicial set show that any edge in a simplicial set, that is the image of the forward edge of the coherent isomorphism under a simplicial set morphism, is an isomorphism. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology new-contributor infinity-cosmos please-merge-master 372/3 Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialSet/CoherentIso.lean,Mathlib/AlgebraicTopology/SimplicialSet/CompStruct.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveCodiscrete.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/CategoryTheory/CodiscreteCategory.lean 6 95 ['arnoudvanderleer', 'github-actions', 'joelriou', 'mathlib-merge-conflicts', 'robin-carlier'] robin-carlier
assignee:robin-carlier
2-10447
2 days ago
2-10447
2 days ago
12-77308
12 days
35653 pepamontero
author:pepamontero
feat: add ChartedSpace structure on orbit space Add topological preliminaries for properly discontinuous group actions, and use them to equip the orbit space `orbitRel.Quotient G M` with a `ChartedSpace` structure. In particular: - Show that the quotient map `Quotient.mk _ : M → orbitRel.Quotient G M` is a covering map and hence a local homeomorphism. - Construct chosen local inverses of the quotient map and establish properties over them. - Define a `ChartedSpace` instance on the quotient by composing these local inverses with charts of M. Future PRs will (hopefully) upgrade this to a smooth manifold structure (assuming a smooth action). This started as an ItaLean2025 project; here is the [Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/541885-ItaLean-2025/topic/Projects.3A.20Quotient.20Manifolds/with/575121158) dedicated to it. Co-authored by: Michael Rothgang Co-authored by: Archie Browne @archiebrowne Co-authored by: Enrique Diaz Blanco @qdiazblanco Co-authored by: Juanjo Madrigal @juanjomadrigal new-contributor t-differential-geometry 162/0 Mathlib.lean,Mathlib/Geometry/Manifold/Instances/OrbitSpace.lean,Mathlib/Topology/Algebra/OrbitSpace.lean 3 70 ['Rida-Hamadani', 'github-actions', 'grunweg', 'pepamontero'] grunweg
assignee:grunweg
1-73331
1 day ago
2-34822
2 days ago
51-84128
51 days
38049 WilliamCoram
author:WilliamCoram
feat: lemmas towards showing gaussNorm on MvPowerSeries is an absolute value We prove lemmas: ``gaussNorm_mul_le`` and ``gaussNorm_le_mul`` which will allow us to show it is an absolute value on Mv restricted power series. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 138/1 Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean 1 3 ['github-actions'] nobody
1-50529
1 day ago
1-51877
1 day ago
1-51351
1 day
37997 emlis42
author:emlis42
feat(Algebra/ContinuedFractions): generalize determinant formula to GenContFract Let $g$ be a `GenContFract K`. In this PR I generalize the determinant formula for continued fractions from the simple continued fraction case $$A_n B_{n+1} - B_n A_{n+1} = (-1)^n$$ to the generalized continued fraction product formula $$A_n B_{n+1} - B_n A_{n+1} = (-a_0) (-a_1) \dots (-a_n)$$ - I kept `SimpContFract.determinant_aux`, since it is used downstream in `Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean`. - The `SimpContFract` version is still available unchanged, so this should avoid breaking existing users of the old API. - I was not sure whether `(g.s.get? i).elim 0 Pair.a` is the correct or most idiomatic way to represent the partial numerator `aᵢ` in this context. Any feedback on a more canonical formulation would be appreciated. - The use of `0` as the default partial numerator in `(g.s.get? i).elim 0 Pair.a` allows product formulation that remains valid when the fraction is terminated. t-algebra new-contributor large-import
label:t-algebra$
53/29 Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/ContinuedFractions/Determinant.lean 2 9 ['emlis42', 'github-actions', 'vihdzp'] nobody
1-29056
1 day ago
2-68585
2 days ago
2-68556
2 days
37350 aditya-ramabadran
author:aditya-ramabadran
feat(Analysis/Distribution): define canonical maps between Schwartz/test functions, distributions/tempered distributions Defines these canonical maps: (1) continuous linear map from $\mathcal D$ to $\mathcal S$, and (2) induced (linear) restriction map from $\mathcal S'$ to $\mathcal D'$, as assigned by @ADedecker. --- Put in a separate file since Distribution.lean only imports TestFunction right now and I thought it was cleaner to do in a new bridge file with both the maps. Open to changing this though. * Made use of #36445 (proved first map locally on fixed support spaces first by local seminorm estimates, then used limitCLM) * Needed a real to complex bridge `TestFunction.ToComplexSchwartzMap` since distributions are defined on real-valued test functions but tempered distributions in mathlib are defined on complex-valued Schwartz functions * Induced map $\mathcal S'(E,F) \to \mathcal D'(Ω,F)$ is $\mathbb C$-linear The main important defs are `ContDiffMapSupportedIn.toSchwartzMapCLM` which is the local fixed-support part, then `TestFunction.toSchwartzMapCLM` (where the continuity uses limitCLM to glue the local continuous linear maps on each $\mathcal D_K$), and `TemperedDistribution.toDistributionLM` which is the linear map from tempered distributions to ordinary distributions. Tested with `lake env lean Mathlib/Analysis/Distribution/TestFunctionSchwartz.lean` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 279/0 Mathlib.lean,Mathlib/Analysis/Distribution/TestFunctionSchwartz.lean 2 3 ['aditya-ramabadran', 'github-actions'] j-loreaux
assignee:j-loreaux
1-22774
1 day ago
14-58705
14 days ago
15-12174
15 days
37540 quantumsnow
author:quantumsnow
feat(CategoryTheory/MorphismProperty/Comma): add MorphismProperty.Arrow This is needed for the category of topological pairs (#36621). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory new-contributor maintainer-merge 109/8 Mathlib/CategoryTheory/MorphismProperty/Comma.lean 1 20 ['chrisflav', 'github-actions', 'joelriou', 'quantumsnow'] robin-carlier
assignee:robin-carlier
1-22770
1 day ago
1-75808
1 day ago
1-82691
1 day
37718 SabrinaJewson
author:SabrinaJewson
feat(Order): add conversions from `Std` order typeclasses to Mathlib ones `{Preorder, PartialOrder, LinearOrder}.ofStd` exist to facilitate convenient translation from `Std` order typeclasses to Mathlib ones. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 366/0 Mathlib.lean,Mathlib/Order/Std.lean,MathlibTest/OrderOfStd.lean 3 2 ['github-actions'] bryangingechen
assignee:bryangingechen
1-22770
1 day ago
9-26149
9 days ago
9-26116
9 days
37926 e-271828
author:e-271828
feat(Analysis/Analytic): add AnalyticAt properties for iterated dslope This PR adds three fundamental lemmas in the `AnalyticAt` namespace to establish the analyticity of the (iterated) `dslope` function: * `AnalyticAt.dslope_of_ne` * `AnalyticAt.iterate_dslope_of_ne` * `AnalyticAt.iterate_dslope` (at the singularity, using `has_fpower_series_iterate_dslope_fslope`) These properties are crucial for factoring out removable singularities iteratively while preserving analyticity. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 29/0 Mathlib/Analysis/Analytic/IsolatedZeros.lean 1 6 ['e-271828', 'github-actions', 'wwylele'] j-loreaux
assignee:j-loreaux
1-22768
1 day ago
4-76747
4 days ago
4-76221
4 days
35846 BryceT233
author:BryceT233
feat(RingTheory/MvPowerSeries): adic completeness for `MvPowerSeries` This PR continues the work in #35670 and #35707 by adding typeclass instances for the completeness of `MvPowerSeries` when the index type is finite. --- - [x] depends on: #35789 - [x] depends on: #35707 - [x] depends on: #35670 - [x] depends on: #35597 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor large-import 25/0 Mathlib/RingTheory/AdicCompletion/Completeness.lean 1 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
1-13653
1 day ago
5-79724
5 days ago
5-79302
5 days
29434 ntapiam
author:ntapiam
feat(NonAssoc/LieAdmissible): prove every ring/algebra is LieAdmissible -awaiting-author t-algebra new-contributor
label:t-algebra$
32/6 Mathlib/Algebra/NonAssoc/LieAdmissible/Defs.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
0-86313
23 hours ago
0-86374
23 hours ago
1-542
1 day
38058 nielstron
author:nielstron
doc(Computability): fix typo in TM Config description Corrects minor grammatical error in comments. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability new-contributor maintainer-merge 3/3 Mathlib/Computability/TuringMachine/Config.lean 1 6 ['github-actions', 'grunweg', 'nielstron'] nobody
0-86220
23 hours ago
1-538
1 day ago
1-968
1 day
35906 scp020
author:scp020
feat(Combinatorics/SimpleGraph/Walk): chords of walks Define `Walk.IsChord` and `Walk.IsChordless` predicates in a new file `SimpleGraph/Walk/Chord.lean`. See "chord" in https://en.wikipedia.org/wiki/Glossary_of_graph_theory --- [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Walk.2EIsChordless.20live.20in.20mathlib.3F/with/575277309) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor maintainer-merge 59/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Walk/Chord.lean 2 68 ['SnirBroshi', 'YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'scp020'] YaelDillies
assignee:YaelDillies
0-71812
19 hours ago
11-21068
11 days ago
36-10407
36 days
37628 JadAbouHawili
author:JadAbouHawili
chore: Rename Xor' to Xor Rename `Xor'` to `Xor` per the comment which recommended doing so after `v4.25.0-rc1` Moves: - Xor' --> Xor [#new members > Why Xor' and not Xor? Why `Or` and not `OrOp` for `Prop`? @ 💬](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Why.20Xor.27.20and.20not.20Xor.3F.20Why.20.60Or.60.20and.20not.20.60OrOp.60.20for.20.60Prop.60.3F/near/583510533) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 75/66 Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/Ring/Int/Parity.lean,Mathlib/Algebra/Ring/Parity.lean,Mathlib/Data/Bool/Basic.lean,Mathlib/Data/Finset/Basic.lean,Mathlib/Data/Set/Disjoint.lean,Mathlib/Geometry/Manifold/IntegralCurve/ExistUnique.lean,Mathlib/GroupTheory/Index.lean,Mathlib/Logic/Basic.lean,Mathlib/NumberTheory/RatFunc/Ostrowski.lean,Mathlib/Order/SymmDiff.lean,Mathlib/Tactic/ITauto.lean,Mathlib/Topology/Algebra/Order/Archimedean.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/Instances/AddCircle/DenseSubgroup.lean,Mathlib/Topology/Separation/Basic.lean,Mathlib/Topology/Separation/Profinite.lean,MathlibTest/itauto.lean 18 20 ['JadAbouHawili', 'Ruben-VandeVelde', 'eric-wieser', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] nobody
0-61445
17 hours ago
0-68241
18 hours ago
11-14784
11 days
38074 WilliamCoram
author:WilliamCoram
refactor: PowerSeries.gaussNorm We refactor the definition of the gauss norm on power series to an abbrev of the gauss norm on multivariate power series, and remove the use of `Funlike`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor large-import 86/50 Mathlib/RingTheory/Polynomial/GaussNorm.lean,Mathlib/RingTheory/PowerSeries/GaussNorm.lean 2 2 ['github-actions'] riccardobrasca
assignee:riccardobrasca
0-60254
16 hours ago
0-60321
16 hours ago
0-60822
16 hours
38033 JadAbouHawili
author:JadAbouHawili
feat(Data/Set): add `subsingleton_iff_eq_empty_or_singleton` --- proof needs to be golfed, got lost in the api so any feedback/review is appreciated [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-data easy maintainer-merge 3/0 Mathlib/Data/Set/Subsingleton.lean 1 11 ['JadAbouHawili', 'github-actions', 'themathqueen', 'vihdzp'] nobody
0-58240
16 hours ago
0-68336
18 hours ago
1-68904
1 day
36104 LarsenClose
author:LarsenClose
feat(CategoryTheory/Endofunctor/Algebra): add Adámek's initial algebra theorem Adds Adámek's initial algebra theorem for endofunctors on categories with an initial object. Given `F : C ⥤ C` where `C` has an initial object, if the initial chain `⊥ → F(⊥) → F²(⊥) → ⋯` has a colimit preserved by `F`, then `F` has an initial algebra whose structure map is an isomorphism. New files: - `InitialChain.lean`: defines `iterateObj F n`, `iterateMap F n`, and `initialChain F : ℕ ⥤ C` via `Functor.ofSequence`. - `ChainShift.lean`: constructs `shiftCocone` and `extendCocone`, proves `shiftCoconeIsColimit` (shifted cocone inherits colimit). - `Adamek.lean`: main result. Constructs the initial `F`-algebra `adamek F c hc` and proves `adamek_isInitial`. Convenience API: `adamekFromInitial`, `adamekStructureIso`, `adamekFixedPoint`. 0 sorry. References Adámek 1974. ### AI disclosure Developed with assistance from Claude (Anthropic). AI was used for proof exploration, convention checking, and PR preparation. All mathematical content and proof strategy reviewed and understood by the author. t-category-theory new-contributor LLM-generated 462/0 Mathlib.lean,Mathlib/CategoryTheory/Endofunctor/Algebra/Adamek.lean,Mathlib/CategoryTheory/Endofunctor/Algebra/ChainShift.lean,Mathlib/CategoryTheory/Endofunctor/Algebra/InitialChain.lean,docs/references.bib 5 28 ['LarsenClose', 'dagurtomas', 'euprunin', 'github-actions', 'grunweg', 'joelriou'] joelriou
assignee:joelriou
0-39393
10 hours ago
0-39394
10 hours ago
16-41918
16 days
37862 DanielJHorton
author:DanielJHorton
feat(LinearAlgebra/BilinearMap): associativity of compl/compr and comp --- This PR adds theorems on the associativity of compositions of linear and bilinear maps in the file `LinearAlgebra/BilinearMap.lean`. These are: ``` theorem compl₂_comp ... : h.compl₂ (g ∘ₛₗ f) = (h.compl₂ g).compl₂ f theorem compl₁₂_comp₁ ... : f.compl₁₂ (g ∘ₗ h) g' = (f.compl₁₂ g g') ∘ₗ h theorem compl₁₂_comp₂ ... : f.compl₁₂ g (g' ∘ₗ h') = (f.compl₁₂ g g').compl₂ h' theorem compl₁₂_comp₁₂ ... : f.compl₁₂ (g ∘ₗ h) (g' ∘ₗ h') = (f.compl₁₂ g g').compl₁₂ h h' theorem compr₂_comp ... : f.compr₂ (h ∘ₗ g) = (f.compr₂ g).compr₂ h ``` Additionally, it also includes: - A theorem `compr₂_id`, analogous to the already existing theorems `compl₂_id` and `compl₁₂_id_id` - Removal of some unused variable declarations in `section CommSemiring` new-contributor t-algebra
label:t-algebra$
43/4 Mathlib/LinearAlgebra/BilinearMap.lean 1 10 ['DanielJHorton', 'github-actions', 'themathqueen'] nobody
0-36494
10 hours ago
0-36494
9 hours ago
6-14661
6 days
38014 cduenasnavarro
author:cduenasnavarro
feat(InformationTheory): linear codes over finite fields and minimum distance properties Define linear codes over a finite field `F` as finite-dimensional subspaces of `Fin n → F`, together with their minimum Hamming distance. Main definitions: * `LinearCode` * `minDist` * `LinearCodeWithDist` * `hammingSphere` Main results: * `minDist_eq_sInf_pairwiseDist`: characterisation of the minimum distance via pairwise distances * `disjoint_spheres`: Hamming spheres of radius `t` around distinct codewords are disjoint if `2 * t < d` Pending: * Choosing an adequate book reference --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor 149/0 Mathlib.lean,Mathlib/InformationTheory/Coding/LinearCode.lean 2 27 ['cduenasnavarro', 'github-actions', 'rkirov', 'vihdzp', 'wwylele'] RemyDegenne
assignee:RemyDegenne
0-33926
9 hours ago
2-41179
2 days ago
2-41416
2 days
35753 Vilin97
author:Vilin97
feat(Topology/Algebra/Order): regular grid helpers and piecewise linear interpolation Make API for piecewise linear interpolation on regular grids. I need these to for ODE time-stepping methods, like forward Euler, and later Runge–Kutta methods. Follow-up PR: #35755 (forward Euler method convergence). I don't know if these numerical analysis ODE-solving methods even belong in mathlib. If someone could advise me on it, I would appreciate it. --- The initial proof was produced by [Aristotle](https://aristotle.harmonic.fun). The code was iteratively refined (factoring out lemmas, golfing, simplifying proofs) using Claude Code. t-topology new-contributor LLM-generated 204/0 Mathlib.lean,Mathlib/Topology/Algebra/Order/PiecewiseLinear.lean 2 42 ['Vilin97', 'YanYablonovskiy', 'adomani', 'botbaki-review', 'copilot-pull-request-reviewer', 'dagurtomas', 'eric-wieser', 'github-actions', 'grunweg', 'j-loreaux', 'wwylele'] j-loreaux
assignee:j-loreaux
0-30918
8 hours ago
0-35993
9 hours ago
26-17116
26 days
36443 Fieldnote-Echo
author:Fieldnote-Echo
feat(Combinatorics/SimpleGraph): add SimpleGraph.ball (open metric ball) Add `SimpleGraph.ball`, the open ball in the graph extended metric. ## Design decisions - **Open ball** (strict `<`, not `≤`): `ball c ⊤` coincides with the connected component of `c`, whereas a closed ball would give `closedBall c ⊤ = univ`. - **Named `SimpleGraph.ball`** (not `eball`): since `dist`-valued balls are less natural for disconnected graphs, the `e` prefix is unnecessary. - **Graph-specific** (not via `PseudoEMetricSpace`): avoids importing `ℝ`. AI assistance: Claude (Opus 4.6) helped draft and iterate on the implementation. I reviewed the code line by line and vouch for the final contents. Discussed on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/SimpleGraph.20metric.20balls/with/577846803). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor LLM-generated 59/3 Mathlib/Combinatorics/SimpleGraph/Metric.lean 1 36 ['Fieldnote-Echo', 'Rida-Hamadani', 'SnirBroshi', 'github-actions', 'lauramonk', 'vlad902'] awainverse and b-mehta
assignee:b-mehta assignee:awainverse
0-22670
6 hours ago
36-57254
36 days ago
36-56728
36 days
36896 PieterCuijpers
author:PieterCuijpers
feat (Algebra/Order/Quantale): isMulIdempotent, isMulLeftsided, isMulRightsided, isMulTwosided and strict versions * Adding definitions of quantale elements being idempotent, leftsided, rightsided, and twosided, and strict versions I'd value some discussion on whether especially the definition of isMulIdempotent would belong here, since it applies to semigroups in general. I only see definitions of IdempotentOp in the library so far, focussing on operators that are fully idempotent, while in the study of Quantales it seems that subquantales of elements that are idempotent in the original are also interesting. This argues the need for having definitions on separate elements. Also, should we include these definitions in the main Algebra/Order/Quantale.lean file, or start a separate file for them? And I have a few basic theorems I would like to include, but invite suggestions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
81/1 Mathlib/Algebra/Order/Quantale.lean 1 4 ['NoahW314', 'github-actions'] chrisflav
assignee:chrisflav
0-22669
6 hours ago
26-75305
26 days ago
26-74779
26 days
37938 SamuelSchlesinger
author:SamuelSchlesinger
feat(Probability/Posterior): Posterior PMFs and Various Lemmas Upstreaming the probability lemmas needed in https://github.com/leanprover/cslib/pull/464. t-measure-probability new-contributor 130/0 Mathlib.lean,Mathlib/Probability/ProbabilityMassFunction/Posterior.lean 2 3 ['SamuelSchlesinger', 'github-actions'] RemyDegenne
assignee:RemyDegenne
0-22660
6 hours ago
0-63657
17 hours ago
0-67220
18 hours
38048 gilesgshaw
author:gilesgshaw
feat(Topology/EMetricSpace/Defs): add theorems `EMetric.continuous*_iff*` Add 8 theorems of the form `EMetric.continuous*_iff*`, which are exactly analogous to existing theorems of the form `Metric.continuous*_iff*` --- Thus the API between the following files (already pretty consistent) is now more consistent `Topology.MetricSpace.Pseudo.Defs` for `PseudoMetricSpace` `Topology.EMetricSpace.Defs` for `PseudoEMetricSpace` I have copied the theorems exactly (that is, changing only `[e]dist` and `Pseudo[E]MetricSpace`), however perhaps there will be suggestions to make other changes at this opportunity. (E.g. is it worth making the use of strict implicit parameters more consistent - possibly not?) new-contributor t-topology 44/0 Mathlib/Topology/EMetricSpace/Defs.lean 1 3 ['github-actions'] j-loreaux
assignee:j-loreaux
0-22658
6 hours ago
1-54332
1 day ago
1-53806
1 day
38023 Deicyde
author:Deicyde
feat: add `continuousAt_clm_apply` `continuousAt_clm_apply` proves that a map `f : X → CLM` is `continuousAt x` iff all of the applications `q ↦ f q y` are continuous for fixed `y`. This is a natural analogue of `continuousOn_clm_apply` and the proof is essentially identical. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 23/10 Mathlib/Analysis/Normed/Module/FiniteDimension.lean 1 6 ['Deicyde', 'github-actions', 'j-loreaux'] j-loreaux
assignee:j-loreaux
0-16823
4 hours ago
0-16857
4 hours ago
1-37703
1 day
38027 8e7
author:8e7
feat(Combinatorics/SimpleGraph/StarGraph): define star graphs Add a new definition `starGraph` and several key lemmas. Star graphs are a trivial class of tree, often used in constructive proofs regarding trees. --- All lemmas are hand written first, then golfed with the help of Claude Code. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 85/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/StarGraph.lean 2 36 ['8e7', 'IvanRenison', 'JovanGerb', 'SnirBroshi', 'github-actions', 'vihdzp', 'vlad902'] nobody
0-15041
4 hours ago
0-14811
3 hours ago
2-12550
2 days
38093 mortarsanjaya
author:mortarsanjaya
feat(Algebra/Order/Ring/Unbundled/Basic): Add a generalization of `two_mul_le_add_of_sq_eq_mul` The equality `r^2 = a * b` in the hypothesis can be weakened to `r^2 ≤ a * b`. The implementation requires adding an appropriate `ZeroLEOneClass` instance. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
18/5 Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean 1 6 ['github-actions', 'leanprover-radar', 'mortarsanjaya'] nobody
0-14571
4 hours ago
0-29470
8 hours ago
0-28944
8 hours
37946 Deicyde
author:Deicyde
feat(Topology/VectorBundle): `continuous_zeroSection` The continuous analogue of `contMDiff_zeroSection`; we match that proof as closely as possible. Claude was used to draft the proof (with lots of manual clean-up afterwards). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 34/0 Mathlib/Topology/FiberBundle/Basic.lean,Mathlib/Topology/VectorBundle/Basic.lean 2 16 ['Deicyde', 'github-actions', 'grunweg'] grunweg
assignee:grunweg
0-13222
3 hours ago
0-13236
3 hours ago
1-44095
1 day
38020 Deicyde
author:Deicyde
feat(Topology/FiberBundle): `continuousAt_symm_prodMk_left` API lemma for fiber bundle trivializations. Shows that `x => e.symm (x,v)` is continuous on its natural domain. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 13/0 Mathlib/Topology/FiberBundle/Trivialization.lean 1 12 ['Deicyde', 'github-actions', 'grunweg'] PatrickMassot and grunweg
assignee:grunweg assignee:PatrickMassot
0-11655
3 hours ago
0-11753
3 hours ago
1-41918
1 day
35976 Phelixh
author:Phelixh
feat: add add Liu's uncertainty theory foundations (core/distribution/process modules) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 2381/0 Mathlib.lean,Mathlib/Uncertainty/Base.lean,Mathlib/Uncertainty/BaseCore.lean,Mathlib/Uncertainty/BaseDistribution.lean,Mathlib/Uncertainty/BaseProcess.lean,Mathlib/Uncertainty/Uncertainty.lean 6 30 ['Phelixh', 'copilot-pull-request-reviewer', 'github-actions'] nobody
0-2929
48 minutes ago
0-26865
7 hours ago
17-63410
17 days

PRs on the review queue labelled 'easy'

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
37482 grunweg
author:grunweg
chore: test two consecutive simps in the flexible linter They are not linted, and should not be --- let's add a test to document this. Found when reviewing #36728. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy 9/1 MathlibTest/FlexibleLinter.lean 1 1 ['github-actions'] nobody
14-78967
14 days ago
14-79032
14 days ago
14-78506
14 days
37884 DanielJHorton
author:DanielJHorton
feat(LinearAlgebra/TensorProduct/Baisc): add lift_zero theorem for TensorProduct --- Added the following theorem to `TensorProduct` ``` @[simp] theorem lift_zero : lift (0 : M →ₛₗ[σ₁₂] N →ₛₗ[σ₁₂] P₂) = 0 := Eq.symm <| lift.unique fun _ _ => by simp only [LinearMap.zero_apply] ``` new-contributor t-algebra easy
label:t-algebra$
4/0 Mathlib/LinearAlgebra/TensorProduct/Basic.lean 1 2 ['github-actions'] nobody
5-62791
5 days ago
5-65068
5 days ago
5-64613
5 days
37960 DanielJHorton
author:DanielJHorton
doc: typo in docstring for alternatingMapToDual t-algebra easy new-contributor
label:t-algebra$
1/1 Mathlib/LinearAlgebra/ExteriorPower/Pairing.lean 1 2 ['github-actions'] nobody
3-29467
3 days ago
3-46487
3 days ago
3-45961
3 days
37967 vihdzp
author:vihdzp
chore: add `simp` to `aleph0_lt_univ`, etc Used in the CGT repo. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory easy 5/1 Mathlib/SetTheory/Ordinal/Univ.lean 1 2 ['github-actions'] nobody
3-24086
3 days ago
3-24063
3 days ago
3-23725
3 days
37995 grunweg
author:grunweg
doc(1000.yaml): note Koebe 1/4 and Sard's theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation easy 7/2 docs/1000.yaml 1 1 ['github-actions'] nobody
2-70914
2 days ago
2-70978
2 days ago
2-71040
2 days
38003 grunweg
author:grunweg
chore(downstream_repos.yml): update physlib name and repository --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy CI 2/2 scripts/downstream_repos.yml 1 1 ['github-actions', 'jstoobysmith'] nobody
2-61539
2 days ago
2-61683
2 days ago
2-61157
2 days
37796 JadAbouHawili
author:JadAbouHawili
feat(Data/Set): add mem_singleton lemma --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 9/3 Mathlib/Data/Finset/Card.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Set/Insert.lean 3 5 ['JadAbouHawili', 'github-actions', 'wwylele'] nobody
2-48818
2 days ago
4-40011
4 days ago
7-59073
7 days
37906 AntoineChambert-Loir
author:AntoineChambert-Loir
refactor(Data/Nat/Choose/Multinomial): last minute modification before merge Addresses the final remark by @b-mehta before #35830 was merged --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data easy 4/4 Mathlib/Data/List/ToFinsupp.lean,Mathlib/Data/Nat/Choose/Multinomial.lean 2 3 ['github-actions', 'mathlib-merge-conflicts', 'themathqueen'] nobody
2-32015
2 days ago
2-32039
2 days ago
5-43850
5 days
38060 vihdzp
author:vihdzp
doc(Algebra/Order/SuccPred): remove outdated TODO Both of these lemmas were made `simp` a while ago. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-algebra t-order easy
label:t-algebra$
1/7 Mathlib/Algebra/Order/SuccPred.lean 1 2 ['github-actions', 'plp127'] nobody
0-67665
18 hours ago
0-76846
21 hours ago
0-76378
21 hours
38069 grunweg
author:grunweg
doc(Tactic/StacksAttribute): fix outdated doc-string --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation easy t-meta 2/1 Mathlib/Tactic/StacksAttribute.lean 1 1 ['github-actions'] nobody
0-64305
17 hours ago
0-64385
17 hours ago
0-63859
17 hours
38068 mbkybky
author:mbkybky
doc(RingTheory/MvPowerSeries): fix typos in module docstrings --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-ring-theory easy 5/5 Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean,Mathlib/RingTheory/MvPowerSeries/LexOrder.lean 2 1 ['github-actions'] nobody
0-63661
17 hours ago
0-64491
17 hours ago
0-63965
17 hours
38033 JadAbouHawili
author:JadAbouHawili
feat(Data/Set): add `subsingleton_iff_eq_empty_or_singleton` --- proof needs to be golfed, got lost in the api so any feedback/review is appreciated [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-data easy maintainer-merge 3/0 Mathlib/Data/Set/Subsingleton.lean 1 11 ['JadAbouHawili', 'github-actions', 'themathqueen', 'vihdzp'] nobody
0-58240
16 hours ago
0-68336
18 hours ago
1-68904
1 day
38099 b-mehta
author:b-mehta
chore(Algebra/Group/Action): weaken hypothesis of instIsLeftCancelSMul `instIsLeftCancelSMul` previously assumed `LeftCancelMonoid G`, but `Mul G` and `IsLeftCancelMul G` suffice. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-algebra
label:t-algebra$
1/1 Mathlib/Algebra/Group/Action/Defs.lean 1 1 ['github-actions'] nobody
0-10670
2 hours ago
0-10730
2 hours ago
0-10280
2 hours
38101 b-mehta
author:b-mehta
feat(Order/OrderIsoNat): add WellFoundedLT.antitone_chain_condition This is an easy combination of existing things, but these are sometimes hard to find, and can be tricky to apply in practice since it involves a few different ideas. Since the informal statement here shows up fairly often, it's worth having for convenience downstream. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-order 9/0 Mathlib/Order/OrderIsoNat.lean 1 1 ['github-actions'] nobody
0-8448
2 hours ago
0-8524
2 hours ago
0-7998
2 hours
38103 b-mehta
author:b-mehta
feat(Algebra/GroupWithZero/Action/Pointwise/Finset): add ₀ variants These lemmas all have `Group` versions, and so we add `GroupWithZero` variants. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
14/0 Mathlib/Algebra/GroupWithZero/Action/Pointwise/Finset.lean 1 1 ['github-actions'] nobody
0-7344
2 hours ago
0-7416
1 hour ago
0-6890
1 hour

PRs on the review queue labelled 'tech debt' or 'longest-pole'

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
37358 grunweg
author:grunweg
chore(Geometry/Manifold): don't expose definitions depending on choice Some definitions in `Immersion.lean` still depend on choice, but need to be exposed for subsequent instances using their definition. We leave them alone for now. Also make not exposing definition the default in `LocalDiffeomorph.lean`; four definitions have useful definitional equalities, the others do not. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry tech debt 12/12 Mathlib/Geometry/Manifold/Immersion.lean,Mathlib/Geometry/Manifold/IsManifold/InteriorBoundary.lean,Mathlib/Geometry/Manifold/LocalDiffeomorph.lean,Mathlib/Geometry/Manifold/VectorBundle/Basic.lean 4 1 ['github-actions'] PatrickMassot
assignee:PatrickMassot
4-22819
4 days ago
5-55013
5 days ago
5-54860
5 days
37678 vihdzp
author:vihdzp
chore(Dynamics/FixedPoints/Defs): create `Defs` file --- I got a large import warning on another PR for simply importing the definition `Function.fixedPoints`, which I found rather silly. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics tech debt maintainer-merge 67/44 Mathlib.lean,Mathlib/Dynamics/FixedPoints/Basic.lean,Mathlib/Dynamics/FixedPoints/Defs.lean,Mathlib/Logic/Function/Defs.lean 4 2 ['Ruben-VandeVelde', 'github-actions'] urkud
assignee:urkud
2-81121
2 days ago
10-31409
10 days ago
10-31461
10 days
38007 JovanGerb
author:JovanGerb
perf(Data/Complex/Basic): `no_expose` the `Inv` and `Norm` instance This PR hides some more implementation details of complex numbers. It would be possible to `no_expose` even more definitions, but this could be at the cost of some proof writing convenience. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt 11/12 Mathlib/Analysis/Complex/Basic.lean,Mathlib/Analysis/Complex/Norm.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Data/Complex/Basic.lean 4 6 ['JovanGerb', 'github-actions', 'grunweg', 'leanprover-radar'] nobody
2-30417
2 days ago
2-49494
2 days ago
2-49057
2 days
37503 Vierkantor
author:Vierkantor
chore(*): remove comments mentioning obsolete note `[nolint_ge]` In Lean 3 times we used to have a `ge_or_gt` linter which complained if theorem statements contained `≥` or `>`, and it would be silenced with a reference to the library note `[nolint_ge]`. But the linter and its note never got ported, so the references are irrelevant and we should drop them. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter tech debt 1/6 Mathlib/Algebra/Order/CauSeq/Basic.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Filter/AtTopBot/Finite.lean,Mathlib/Topology/EMetricSpace/Basic.lean,Mathlib/Topology/MetricSpace/Cauchy.lean 5 4 ['Vierkantor', 'github-actions', 'grunweg'] joneugster
assignee:joneugster
0-22667
6 hours ago
14-58160
14 days ago
14-57634
14 days