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 21, 2026 at 11:13 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
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
30-66254
30 days ago
32-62657
32 days ago
34-5167
34 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
29-51628
29 days ago
29-53227
29 days ago
29-68736
29 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
26-75367
26 days ago
31-13955
31 days ago
32-83202
32 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
25-23093
25 days ago
27-42104
27 days ago
27-42095
27 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
21-71608
21 days ago
21-75091
21 days ago
21-75082
21 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
21-36645
21 days ago
23-27497
23 days ago
23-27488
23 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
21-36636
21 days ago
26-56358
26 days ago
26-56351
26 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
20-69098
20 days ago
20-71252
20 days ago
21-38257
21 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
20-47189
20 days ago
20-48209
20 days ago
34-29035
34 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
20-36330
20 days ago
29-54571
29 days ago
34-3769
34 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
20-11104
20 days ago
20-12406
20 days ago
20-18869
20 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
20-6133
20 days ago
20-6198
20 days ago
20-6189
20 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
19-85166
19 days ago
26-51697
26 days ago
26-51688
26 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
19-79642
19 days ago
31-72290
31 days ago
31-73110
31 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
19-46524
19 days ago
19-46549
19 days ago
20-56432
20 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
19-36750
19 days ago
19-80512
19 days ago
20-21713
20 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
19-36734
19 days ago
20-6748
20 days ago
20-6739
20 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
19-7934
19 days ago
19-7970
19 days ago
19-36482
19 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
18-78491
18 days ago
18-78562
18 days ago
18-78553
18 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
18-47987
18 days ago
18-48056
18 days ago
18-48047
18 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
18-46626
18 days ago
18-46702
18 days ago
18-46693
18 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
18-36644
18 days ago
33-74536
33 days ago
33-74535
33 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
18-36636
18 days ago
18-83836
18 days ago
18-83827
18 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
18-32927
18 days ago
18-32985
18 days ago
32-43304
32 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
18-6141
18 days ago
18-6188
18 days ago
75-76046
75 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
17-77531
17 days ago
25-41064
25 days ago
25-46752
25 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
17-76381
17 days ago
17-77532
17 days ago
19-23136
19 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
17-62898
17 days ago
17-65563
17 days ago
60-50371
60 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
17-62600
17 days ago
17-62644
17 days ago
18-44160
18 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
17-57958
17 days ago
21-29069
21 days ago
21-29204
21 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
17-57957
17 days ago
17-64218
17 days ago
90-33001
90 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
17-42828
17 days ago
17-42902
17 days ago
17-42893
17 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
17-39248
17 days ago
18-61744
18 days ago
18-61735
18 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
17-36775
17 days ago
25-36908
25 days ago
25-36899
25 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
17-36769
17 days ago
18-82620
18 days ago
18-82611
18 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
16-70199
16 days ago
16-70254
16 days ago
29-50681
29 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
16-64926
16 days ago
16-64965
16 days ago
16-65040
16 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
16-26194
16 days ago
16-45880
16 days ago
16-45871
16 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
15-71148
15 days ago
16-52986
16 days ago
38-64725
38 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
15-52411
15 days ago
15-52485
15 days ago
15-52476
15 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
15-49341
15 days ago
15-49422
15 days ago
15-49413
15 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
15-36535
15 days ago
23-82984
23 days ago
23-83317
23 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
15-36533
15 days ago
20-73640
20 days ago
20-73679
20 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
14-64644
14 days ago
14-64701
14 days ago
21-30935
21 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
14-56291
14 days ago
14-56352
14 days ago
41-23406
41 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
14-50031
14 days ago
14-50031
14 days ago
14-61988
14 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
14-36620
14 days ago
20-73076
20 days ago
20-73067
20 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
14-11093
14 days ago
15-9718
15 days ago
15-9709
15 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
14-3921
14 days ago
14-3974
14 days ago
18-72081
18 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
13-74891
13 days ago
13-74967
13 days ago
13-74958
13 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
13-67483
13 days ago
13-67546
13 days ago
13-68780
13 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
13-66985
13 days ago
13-73643
13 days ago
13-73634
13 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
13-66896
13 days ago
13-73508
13 days ago
13-73499
13 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
13-64676
13 days ago
13-64676
13 days ago
13-65057
13 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
13-61452
13 days ago
13-61512
13 days ago
15-78140
15 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
13-43168
13 days ago
13-81114
13 days ago
13-81948
13 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
13-36559
13 days ago
14-68875
14 days ago
17-76266
17 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
13-32393
13 days ago
13-32468
13 days ago
13-32459
13 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
13-23338
13 days ago
13-23397
13 days ago
20-55131
20 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
13-7484
13 days ago
15-74336
15 days ago
15-74471
15 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
13-5316
13 days ago
13-9275
13 days ago
16-65705
16 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
13-3695
13 days ago
13-6403
13 days ago
32-33295
32 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
12-83738
12 days ago
20-79034
20 days ago
42-74294
42 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
12-79487
12 days ago
12-79543
12 days ago
35-73593
35 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
12-74642
12 days ago
12-74900
12 days ago
14-15895
14 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
12-69955
12 days ago
12-69981
12 days ago
26-85659
26 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
12-52796
12 days ago
12-52498
12 days ago
28-63197
28 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
12-46369
12 days ago
12-49403
12 days ago
12-49720
12 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
12-45885
12 days ago
12-45910
12 days ago
47-76583
47 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
12-41544
12 days ago
18-82493
18 days ago
34-54303
34 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
12-36794
12 days ago
36-1198
36 days ago
36-1190
36 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
12-36791
12 days ago
15-76803
15 days ago
27-41153
27 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
12-36785
12 days ago
15-66174
15 days ago
17-3300
17 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
12-10915
12 days ago
22-46731
22 days ago
22-46722
22 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
11-77228
11 days ago
11-77228
11 days ago
29-4375
29 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
11-71949
11 days ago
11-72031
11 days ago
11-72022
11 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
11-65451
11 days ago
11-65511
11 days ago
26-40376
26 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
11-56525
11 days ago
11-62870
11 days ago
52-67738
52 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
11-55826
11 days ago
24-43634
24 days ago
24-43625
24 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
11-50011
11 days ago
36-71007
36 days ago
36-70998
36 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
11-49620
11 days ago
14-74065
14 days ago
14-74056
14 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
11-44756
11 days ago
11-44828
11 days ago
13-41928
13 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
11-43176
11 days ago
11-43234
11 days ago
21-49572
21 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
11-36590
11 days ago
39-1740
39 days ago
39-3520
39 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
11-36579
11 days ago
12-12984
12 days ago
12-12975
12 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
11-36578
11 days ago
12-9226
12 days ago
12-9217
12 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
11-21563
11 days ago
11-21598
11 days ago
156-33435
156 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
11-20998
11 days ago
13-104
13 days ago
13-5392
13 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
11-12670
11 days ago
11-28245
11 days ago
17-7266
17 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
11-12489
11 days ago
11-12648
11 days ago
59-39747
59 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
11-6220
11 days ago
11-73883
11 days ago
11-73874
11 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
11-2702
11 days ago
11-77068
11 days ago
11-77066
11 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
11-2310
11 days ago
13-4192
13 days ago
19-62628
19 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
11-1191
11 days ago
11-5104
11 days ago
28-62398
28 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
10-76357
10 days ago
10-78634
10 days ago
10-78696
10 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
10-75183
10 days ago
10-75183
10 days ago
10-75175
10 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
10-63470
10 days ago
10-63470
10 days ago
10-63462
10 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
10-36803
10 days ago
32-52754
32 days ago
32-63966
32 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
10-36707
10 days ago
33-7171
33 days ago
33-10280
33 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
10-36695
10 days ago
11-27706
11 days ago
11-30934
11 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
10-34536
10 days ago
10-83156
10 days ago
10-83149
10 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
10-13911
10 days ago
10-13971
10 days ago
34-72141
34 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
10-11551
10 days ago
10-11612
10 days ago
28-9187
28 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
10-11515
10 days ago
36-54083
36 days ago
36-54074
36 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
9-80634
9 days ago
9-80689
9 days ago
9-81067
9 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
9-58037
9 days ago
10-43155
10 days ago
10-43146
10 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
9-56864
9 days ago
9-56922
9 days ago
14-69230
14 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
9-54216
9 days ago
9-63683
9 days ago
13-49430
13 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
9-43900
9 days ago
10-2851
10 days ago
10-2842
10 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
9-36387
9 days ago
19-62203
19 days ago
19-62398
19 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
9-36385
9 days ago
19-49881
19 days ago
19-49872
19 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
9-36384
9 days ago
10-36099
10 days ago
10-43169
10 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
9-21073
9 days ago
9-21131
9 days ago
21-10912
21 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
9-17776
9 days ago
10-73875
10 days ago
10-73866
10 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
9-3438
9 days ago
9-3496
9 days ago
44-46729
44 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
8-77600
8 days ago
15-78638
15 days ago
19-38880
19 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
8-74070
8 days ago
8-75737
8 days ago
8-78510
8 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
8-71083
8 days ago
8-71143
8 days ago
8-71982
8 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
8-57204
8 days ago
8-57262
8 days ago
14-24704
14 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
8-56396
8 days ago
8-56447
8 days ago
24-27237
24 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
8-45721
8 days ago
8-63761
8 days ago
8-65553
8 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
8-43033
8 days ago
8-60053
8 days ago
8-60044
8 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
8-36302
8 days ago
30-53751
30 days ago
51-8754
51 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
8-36300
8 days ago
44-53356
44 days ago
44-53347
44 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
8-23574
8 days ago
8-24083
8 days ago
8-24074
8 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
8-8287
8 days ago
15-44975
15 days ago
15-45544
15 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
7-86157
7 days ago
8-58667
8 days ago
21-48939
21 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
7-84480
7 days ago
7-84544
7 days ago
7-85123
7 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
7-82234
7 days ago
7-82028
7 days ago
46-4077
46 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
7-74879
7 days ago
7-74940
7 days ago
59-55231
59 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
7-74843
7 days ago
9-11923
9 days ago
9-11915
9 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
7-73781
7 days ago
12-1760
12 days ago
12-4129
12 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
7-65985
7 days ago
7-66042
7 days ago
7-69178
7 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
7-51125
7 days ago
7-71705
7 days ago
8-47590
8 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
7-46090
7 days ago
7-46156
7 days ago
7-46147
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
7-45581
7 days ago
7-45605
7 days ago
10-57933
10 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
7-41749
7 days ago
7-73524
7 days ago
11-21884
11 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
7-36805
7 days ago
36-30185
36 days ago
36-85291
36 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
7-36804
7 days ago
97-53910
97 days ago
97-53901
97 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
7-36803
7 days ago
81-58713
81 days ago
93-17719
93 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
7-36796
7 days ago
30-25845
30 days ago
30-31225
30 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
7-36305
7 days ago
32-76330
32 days ago
46-16511
46 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
7-36303
7 days ago
34-36745
34 days ago
34-36736
34 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
7-36302
7 days ago
19-46515
19 days ago
21-13038
21 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
7-36294
7 days ago
10-4109
10 days ago
10-4326
10 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
7-8790
7 days ago
8-42202
8 days ago
21-69680
21 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
7-5667
7 days ago
7-5688
7 days ago
11-15116
11 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
6-84752
6 days ago
6-85892
6 days ago
6-85985
6 days
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
6-82615
6 days ago
7-3559
7 days ago
12-6763
12 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
6-79958
6 days ago
13-36909
13 days ago
24-73783
24 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
6-78197
6 days ago
6-78225
6 days ago
26-33253
26 days
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
6-64688
6 days ago
8-43631
8 days ago
19-45864
19 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
6-61659
6 days ago
15-72104
15 days ago
29-15164
29 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
6-52165
6 days ago
7-48696
7 days ago
7-50304
7 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
6-47045
6 days ago
6-46783
6 days ago
20-63756
20 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
6-36805
6 days ago
33-34337
33 days ago
33-34328
33 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
6-36344
6 days ago
45-16002
45 days ago
45-15993
45 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
6-36342
6 days ago
38-36774
38 days ago
38-36765
38 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
6-36342
6 days ago
36-74244
36 days ago
36-74235
36 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
6-36340
6 days ago
19-72271
19 days ago
20-26257
20 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
6-36337
6 days ago
19-3600
19 days ago
19-3591
19 days
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
6-36336
6 days ago
14-39715
14 days ago
14-40199
14 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
6-25121
6 days ago
6-25185
6 days ago
6-26337
6 days
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
6-23669
6 days ago
20-68141
20 days ago
35-66001
35 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
6-17992
6 days ago
6-80142
6 days ago
38-83529
38 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
6-13479
6 days ago
6-13540
6 days ago
6-14625
6 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
6-3214
6 days ago
9-82107
9 days ago
38-27001
38 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
6-1133
6 days ago
6-5452
6 days ago
6-6807
6 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
5-84015
5 days ago
11-44033
11 days ago
40-73102
40 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
5-79504
5 days ago
7-13594
7 days ago
7-13585
7 days
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
5-75770
5 days ago
5-75770
5 days ago
7-4462
7 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
5-75011
5 days ago
5-81807
5 days ago
16-28867
16 days
37878 YaelDillies
author:YaelDillies
chore(Combinatorics/SimpleGraph): avoid structure relation predicates Relation predicates used to be `def`s over a `forall`, which was optimal for usability in fields of other structures. This changed in #35591 and #35192 as a byproduct of reducing apparent code duplication. Unfortunately, the usability issue was overlooked. This PR restores usability by dropping the use of those relation classes that are `structure`s, ie `Std.Irrefl` and `Std.Transitive`. It also uses more widely the `simp` auto-param on `SimpleGraph.loopless`. --- 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
5-70554
5 days ago
11-9875
11 days ago
11-12948
11 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
5-68889
5 days ago
6-83562
6 days ago
6-83706
6 days
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
5-64879
5 days ago
5-64937
5 days ago
9-69139
9 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
5-60077
5 days ago
7-81036
7 days ago
7-81027
7 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
5-59001
5 days ago
5-59001
5 days ago
14-78387
14 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
5-57681
5 days ago
5-57712
5 days ago
5-57719
5 days
37865 Jun2M
author:Jun2M
feat(Combinatorics/Graph): Edge cut of `Graph` This PR introduces - `edgeCut`: A function on set of vertices that returns the set of edges with exactly one end in the set. - `IsEdgeCut`: A predicate for set of edges that promises it is `edgeCut` of some set. - `IsBridge`: An edge `e` is a bridge iff it is a singleton edge cut. - `IsBond`: An edge Set `B` is bond iff it is minimal nonempty edge cut. --- - [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
5-54680
5 days ago
5-72337
5 days ago
5-72766
5 days
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
5-52494
5 days ago
5-66572
5 days ago
11-46348
11 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
5-50060
5 days ago
5-50060
5 days ago
11-28744
11 days
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
5-36236
5 days ago
74-40310
74 days ago
77-53727
77 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
5-36234
5 days ago
29-67285
29 days ago
29-67276
29 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
5-36231
5 days ago
7-34688
7 days ago
18-70540
18 days
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
5-36229
5 days ago
6-53972
6 days ago
6-56851
6 days
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
5-36227
5 days ago
6-56473
6 days ago
6-56466
6 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
5-36224
5 days ago
6-67898
6 days ago
6-67889
6 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
5-31581
5 days ago
5-34749
5 days ago
5-38336
5 days
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
5-31065
5 days ago
21-30629
21 days ago
21-30620
21 days
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
5-21682
5 days ago
5-26556
5 days ago
5-26547
5 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
5-14154
5 days ago
5-14154
5 days ago
62-30517
62 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
5-9001
5 days ago
37-21021
37 days ago
37-21012
37 days
38055 felixpernegger
author:felixpernegger
feat(Topology/EMetricSpace): add r-variation Redoing #37007 (I had accidently deleted my fork which nuked the PR). See https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/p-variation for discussion. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology t-analysis 408/0 Mathlib.lean,Mathlib/Topology/EMetricSpace/RVariation.lean 2 2 ['felixpernegger', 'github-actions'] nobody
5-5698
5 days ago
5-7382
5 days ago
5-7767
5 days
37959 artie2000
author:artie2000
feat(LinearAlgebra/Dimension/Free): lemmas about finrank * Division variant of tower law * Isomorphic to base ring iff rank is one --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
34/9 Mathlib/LinearAlgebra/Dimension/Free.lean 1 4 ['artie2000', 'github-actions', 'themathqueen'] nobody
4-85293
4 days ago
4-85353
4 days ago
8-14592
8 days
37420 artie2000
author:artie2000
refactor: change definitions to avoid `ConvexCone` Change the definitions of `PointedCone.positive` and `PointedCone.closure` to avoid mentioning `ConvexCone`. This PR is part of a series deprecating `ConvexCone`: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Replacing.20.60ConvexCone.60.20with.20.60PointedCone.60/with/582738985 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry maintainer-merge 10/4 Mathlib/Analysis/Convex/Cone/Closure.lean,Mathlib/Geometry/Convex/Cone/Pointed.lean 2 3 ['YaelDillies', 'github-actions', 'mathlib-merge-conflicts', 'ooovi', 'vihdzp'] nobody
4-84249
4 days ago
4-84213
4 days ago
20-18367
20 days
37191 artie2000
author:artie2000
chore(Geometry/Convex/Cone/Pointed): clean up variables * Remove variable overwrites by changing `variable` declarations and renaming variables * Rename variables to maintain rough type-consistency within the file * Reorganise sections in order of increasing typeclass strength * Bring explicit/implicit variables in line with convention This PR doesn't change any declarations beyond changing variable explicitness. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 148/129 Mathlib/Geometry/Convex/Cone/Pointed.lean 1 7 ['YaelDillies', 'artie2000', 'github-actions', 'martinwintermath', 'mathlib-merge-conflicts'] YaelDillies
assignee:YaelDillies
4-82476
4 days ago
4-82529
4 days ago
23-85164
23 days
32692 WilliamCoram
author:WilliamCoram
feat: define multivariate restricted power series We define multivariate restricted power series over a normed ring R, and show the properties that they form a ring when R has the ultrametric property. This work generalises my previous work in #26089 which will need to be refactored. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-number-theory new-contributor 137/0 Mathlib.lean,Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/RingTheory/MvPowerSeries/Restricted.lean 3 43 ['WilliamCoram', 'erdOne', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts'] alreadydone
assignee:alreadydone
4-78414
4 days ago
4-78474
4 days ago
23-5727
23 days
38120 eric-wieser
author:eric-wieser
refactor(Lie/Graded): remove a redundant assumption The equality pattern can be helpful when working with families of types, but provides little value when working with families of submodules. Indeed, the only caller passes `rfl`, and any family implementing this interface can use `let +generalize k := i + j` if they really find it useful. Also adds an implementation note that remarks the design is divergent from GradedModule and GradedMonoid. I think we should correct this divergence, but it's not at all urgent. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
9/5 Mathlib/Algebra/Lie/Graded.lean 1 1 ['github-actions'] nobody
4-75330
4 days ago
4-76306
4 days ago
4-76297
4 days
26735 Raph-DG
author:Raph-DG
feat(AlgebraicGeometry): The codimension of a point of a scheme is equal to the krull dimension of the stalk In this PR we show that the codimension of a point in a scheme is equal to the krull dimension of the local ring at that point, as in stacks 02IZ. --- - [x] depends on: #26204 [For the notion of codimension, here we are using the coheight in the specialization order. ] - [x] depends on: #26225 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 126/0 Mathlib/AlgebraicGeometry/Properties.lean,Mathlib/AlgebraicGeometry/Scheme.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Topology/Continuous.lean,Mathlib/Topology/Irreducible.lean,Mathlib/Topology/KrullDimension.lean,Mathlib/Topology/Maps/Basic.lean,Mathlib/Topology/Sets/Closeds.lean,Mathlib/Topology/Sober.lean 9 70 ['Raph-DG', 'chrisflav', 'erdOne', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'tb65536'] adamtopaz and erdOne
assignee:adamtopaz assignee:erdOne
4-74996
4 days ago
4-75062
4 days ago
70-65731
70 days
38123 grunweg
author:grunweg
chore: three more items for the overview All of these are mentioned in the stacks project, hence might sensibly be linked elsewhere: let's add them to the overview. --- If these make no sense, please push back on this: I'm not an expert in these areas! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation 3/0 docs/overview.yaml 1 1 ['github-actions'] nobody
4-74194
4 days ago
4-74258
4 days ago
4-74249
4 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 6 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mcdoll'] ADedecker
assignee:ADedecker
4-72903
4 days ago
19-46546
19 days ago
24-19875
24 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. This PR was assisted by LLMs (Aristotle and Gemini). --- [![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
4-59902
4 days ago
10-3913
10 days ago
10-3904
10 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 the 4 classes `{Mul/Add}{Left/Right}ReflectLE` 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 maintainer-merge
label:t-algebra$
76/69 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/Algebra/Order/Positive/Ring.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean 10 14 ['JovanGerb', 'SnirBroshi', 'github-actions', 'leanprover-radar', 'vihdzp'] kim-em
assignee:kim-em
4-57192
4 days ago
4-65142
4 days ago
21-15019
21 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 4 ['euprunin', 'github-actions', 'mathlib-merge-conflicts'] nobody
4-56531
4 days ago
16-702
16 days ago
34-77621
34 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 2 ['artie2000', 'euprunin', 'github-actions'] nobody
4-56520
4 days ago
34-65046
34 days ago
34-65037
34 days
36963 seewoo5
author:seewoo5
feat(ModularForms): SL2 action and Serre derivative --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) Equivariance of Serre derivative under SL2 action. More precisely, $$\partial_k (F|_k \gamma) = (\partial_{k} F)|_{k+2} \gamma$$. From [Sphere Packing Project](https://github.com/thefundamentaltheor3m/Sphere-Packing-Lean). t-number-theory large-import 164/1 Mathlib/Analysis/Complex/UpperHalfPlane/MoebiusAction.lean,Mathlib/NumberTheory/ModularForms/Derivative.lean 2 8 ['github-actions', 'seewoo5', 'tb65536', 'wwylele'] tb65536
assignee:tb65536
4-52573
4 days ago
4-52573
4 days ago
6-6131
6 days
37598 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Coloring): add lemmas about coloring and maps --- Idea from this Zulip thread: [graph theory>Second Order Monadic Logic for Graph](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Second.20Order.20Monadic.20Logic.20for.20Graph/with/583013775) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 37/13 Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Combinatorics/SimpleGraph/Maps.lean 2 18 ['IvanRenison', 'SnirBroshi', 'b-mehta', 'github-actions', 'mathlib-bors', 'mathlib-merge-conflicts'] b-mehta
assignee:b-mehta
4-50076
4 days ago
4-54164
4 days ago
15-83371
15 days
37045 edegeltje
author:edegeltje
feat(CategoryTheory/Limits): Pullback squares in cartesian monoidal categories This PR adds various lemmas about standard pullback squares in categories with chosen finite products. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 351/0 Mathlib.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/IsPullback/CartesianMonoidal.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean 3 40 ['FernandoChu', 'dagurtomas', 'edegeltje', 'github-actions', 'joelriou', 'robin-carlier'] joelriou
assignee:joelriou
4-45522
4 days ago
4-45522
4 days ago
19-49378
19 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 39 ['Brian-Nugent', 'adamtopaz', 'dagurtomas', 'github-actions', 'joelriou', 'joneugster', 'mathlib-merge-conflicts'] robin-carlier
assignee:robin-carlier
4-38264
4 days ago
4-38264
4 days ago
68-66988
68 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'] nobody
4-36804
4 days ago
31-37152
31 days ago
33-56346
33 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'] riccardobrasca
assignee:riccardobrasca
4-36342
4 days ago
31-476
31 days ago
31-467
31 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'] joelriou
assignee:joelriou
4-36341
4 days ago
18-72666
18 days ago
18-72657
18 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'] dagurtomas
assignee:dagurtomas
4-36340
4 days ago
14-57541
14 days ago
14-57532
14 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'] dagurtomas
assignee:dagurtomas
4-36340
4 days ago
14-44317
14 days ago
14-47503
14 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'] dagurtomas
assignee:dagurtomas
4-36338
4 days ago
13-10067
13 days ago
13-11145
13 days
38131 eric-wieser
author:eric-wieser
refactor: deprecate `Finset.affineCombinationSingleWeights` This is much more verbose than `Pi.single _ 1`, and the latter has more theorems. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 63/70 Mathlib/Analysis/Convex/Between.lean,Mathlib/Analysis/Convex/Side.lean,Mathlib/Analysis/Convex/StrictCombination.lean,Mathlib/Geometry/Euclidean/Incenter.lean,Mathlib/Geometry/Euclidean/Sphere/SecondInter.lean,Mathlib/LinearAlgebra/AffineSpace/Ceva.lean,Mathlib/LinearAlgebra/AffineSpace/Combination.lean,Mathlib/LinearAlgebra/AffineSpace/Independent.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean 9 1 ['github-actions', 'wwylele'] jsm28
assignee:jsm28
4-36326
4 days ago
4-56945
4 days ago
4-57956
4 days
38095 astrainfinita
author:astrainfinita
perf(Algebra/*/{InjSurj, TransferInstance}): reduce instance `Expr`s --- We can not just use `fast_instance%`, because `fast_instance%` reduces instances into constructor applications, but their arguments may still not be reduced. This PR continues the work from #13795. Original PR: https://github.com/leanprover-community/mathlib4/pull/13795 [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/instance.20unfolding.20phenomenon/) 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
4-35756
4 days ago
5-26151
5 days ago
5-28672
5 days
38141 Jun2M
author:Jun2M
feat(Order/Partition): Partition induced by symmetric, transitive relation We introduce a constructor for Partition from a symmetric, transitive relation, with `copy` function baked into the definition. Co-authored-by: Peter Nelson --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 41/7 Mathlib/Order/Partition/Basic.lean 1 1 ['github-actions'] nobody
4-33629
4 days ago
4-33696
4 days ago
4-33687
4 days
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 5 ['NoahW314', 'github-actions', 'scholzhannah', 'vihdzp'] nobody
4-29515
4 days ago
4-79680
4 days ago
5-12310
5 days
38142 SnirBroshi
author:SnirBroshi
feat(Order/SuccPred/CompleteLinearOrder): generalize `csSup_mem_of_not_isSuccLimit` Given `s.Nonempty` and `BddAbove s` we can conclude `sSup s ∈ s` using either: - `csSup_mem_of_not_isSuccPrelimit`, given `ConditionallyCompleteLinearOrder` and `¬IsSuccPrelimit (sSup s)` - `csSup_mem_of_not_isSuccLimit`, given `ConditionallyCompleteLinearOrderBot` and `¬IsSuccLimit (sSup s)` We generalize both to a theorem that requires `ConditionallyCompleteLinearOrder` and `¬IsSuccLimit (sSup s)`. --- Should we also deprecate the 8 theorems that require `¬IsSuccPrelimit` and now use `mt`? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 60/33 Mathlib/Order/SuccPred/CompleteLinearOrder.lean 1 6 ['SnirBroshi', 'github-actions', 'vihdzp'] nobody
4-28281
4 days ago
4-31762
4 days ago
4-31753
4 days
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/Star.lean 2 38 ['8e7', 'IvanRenison', 'JovanGerb', 'SnirBroshi', 'github-actions', 'vihdzp', 'vlad902'] nobody
4-24813
4 days ago
5-28377
5 days ago
7-26633
7 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$
555/0 Mathlib.lean,Mathlib/LinearAlgebra/Center.lean,Mathlib/LinearAlgebra/LinearIndependent/Lemmas.lean,Mathlib/LinearAlgebra/Transvection/Basic.lean,Mathlib/LinearAlgebra/Transvection/Generation.lean 5 11 ['AntoineChambert-Loir', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] joelriou
assignee:joelriou
4-14282
4 days ago
4-14343
4 days ago
24-70750
24 days
38147 vihdzp
author:vihdzp
chore: deprecate `Cardinal.zero_le` This is a duplicate of `zero_le` in the root namespace. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 9/10 Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Order.lean 2 2 ['github-actions', 'vihdzp'] nobody
4-14031
4 days ago
4-16539
4 days ago
4-17265
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 28/0 Mathlib/Topology/NoetherianSpace.lean,Mathlib/Topology/Sober.lean 2 9 ['Raph-DG', 'chrisflav', 'github-actions', 'grunweg', 'vihdzp'] PatrickMassot
assignee:PatrickMassot
4-9488
4 days ago
4-9510
4 days ago
7-39635
7 days
35569 goliath-klein
author:goliath-klein
refactor(PiTensorProduct/{InjectiveNorm, ProjectiveNorm}): deprecate `injectiveSeminorm` This PR: * Deprecates `PiTensorProduct.injectiveSeminorm` and supporting lemmas. * Moves the theory of `liftEquiv` from InjectiveSeminorm.lean to ProjectiveSeminorm.lean. No changes are introduced beyond adding deprecation notices, adapting docstrings, and moving material between files. The PR leaves InjectiveSeminorm.lean almost empty. A new implementation of `injectiveSeminorm`, one which reflects the common mathematical definition, is to be done. This is the third in a series of three PRs with the goal to [deprecate `PiTensorProuduct.injectiveSeminorm`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/injectiveSeminorm/with/568798633). --- - [ ] depends on: #35567 - [ ] depends on: #35568 Deprecations: - injectiveSeminorm - dualSeminorms_bounded - injectiveSeminorm_apply - norm_eval_le_injectiveSeminorm - injectiveSeminorm_le_projectiveSeminorm - injectiveSeminorm_tprod_le Preliminary work toward a reimplementation is at #33969. I've added Davood and myself to the "Authors" field, as we have now significantly refactored this module. Co-authored-by: Davood H. T. Tehrani [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 222/233 Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean 2 6 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
4-8975
4 days ago
4-8999
4 days ago
20-63706
20 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 5 ['github-actions', 'joneugster', 'mathlib-dependent-issues'] nobody
4-5610
4 days ago
18-79472
18 days ago
18-79795
18 days
38152 grunweg
author:grunweg
feat: lint against new cases of the backward.inferInstanceAs.wrap.reu… …seSubInstances option This marks new technical debt: it should not happen at all (and if it does, disabling the linter explicitly should be a necessary speed bump): [zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Technical.20Debt.20Counters/near/586058368) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt t-logic t-linter maintainer-merge 8/2 Mathlib/Order/OrderDual.lean,Mathlib/Tactic/Linter/Style.lean 2 6 ['JovanGerb', 'github-actions', 'grunweg'] nobody
4-1257
4 days ago
4-11939
4 days ago
4-12032
4 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 maintainer-merge
label:t-algebra$
21/22 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 9 8 ['JovanGerb', 'github-actions', 'mathlib-merge-conflicts', 'themathqueen'] nobody
4-1182
4 days ago
4-7372
4 days ago
9-18660
9 days
37214 Kha
author:Kha
perf(Tactic/Abel): use `mkAuxTheorem` for proof term Removes some duplication from types of nested proofs t-meta maintainer-merge 4/1 Mathlib/Tactic/Abel.lean 1 6 ['JovanGerb', 'Kha', 'github-actions', 'joneugster', 'leanprover-radar'] JovanGerb
assignee:JovanGerb
3-81050
3 days ago
25-71685
25 days ago
25-71676
25 days
37588 Vierkantor
author:Vierkantor
feat(Linter/DocString): ignore Verso linter errors about links and LaTeX I went through [the weekly linting log](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Weekly.20linting.20log/near/582485221) and found most of the warnings come from three sources. All of these are sensical syntax in our current Markdown dialect, and should be fixed automatically by a script, instead of manually. I expect after these changes we'll be down to hundreds of linter errors rather than two thousand. * References [between square brackets] without a following link URL. Verso has different implementations for references depending on what kind they are, and since there are a thousand references we should be using a script to fix these. * Autolinks: bare URLs or URLs between . Autolinks are intentionally not supported by Verso but replacing every `https://...` with `[https://...](https://...)` would be too noisy. * LaTeX blocks: Verso does have TeX blocks but with an incompatible syntax. Better to fix it with a script. I ended up using preprocessing in addition to postprocessing to filter out errors: using the error message we can determine whether it is a reference, but for errors caused by autolinks and LaTeX blocks I couldn't figure out how to do so easily: the information about the parse error does report a string position but this is always the last character of the docstring. So instead we modify the docstring before it is passed into Verso to get rid of the offending syntax. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter large-import maintainer-merge 113/5 Mathlib/Tactic/Linter/DocString.lean,MathlibTest/DocString.lean 2 18 ['Vierkantor', 'github-actions', 'thorimur'] thorimur
assignee:thorimur
3-80475
3 days ago
3-80533
3 days ago
6-76205
6 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 maintainer-merge 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 4 ['JovanGerb', 'bryangingechen', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
3-80342
3 days ago
8-76322
8 days ago
8-83547
8 days
38159 jcommelin
author:jcommelin
chore: remove some backward.proofsInPublic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 12/6 Mathlib/Algebra/Category/ModuleCat/ChangeOfRings.lean,Mathlib/Computability/TuringMachine/ToPartrec.lean 2 1 ['github-actions'] nobody
3-78626
3 days ago
3-78690
3 days ago
3-78681
3 days
36863 artie2000
author:artie2000
refactor(Algebra/Order/Ring/Ordering): unbundle `RingPreordering` The current design for [RingPreordering](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Ring/Ordering/Defs.html#RingPreordering) ran into issues at PR #32077. This PR unbundles [RingPreordering](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Ring/Ordering/Defs.html#RingPreordering) into a class predicate on [Subsemiring](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Ring/Subsemiring/Defs.html#Subsemiring), generalising the material on supports as far as possible. Zulip thread: https://leanprover.zulipchat.com/#narrow/channel/116395-maths/topic/Ring.20orderings.20-.20structure.20or.20predicate.3F/with/562594050 See #37298 for the analogous change to group and ring cones. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra large-import
label:t-algebra$
455/87 Mathlib.lean,Mathlib/Algebra/Order/Ring/Ordering/Basic.lean,Mathlib/Algebra/Order/Ring/Ordering/Defs.lean,Mathlib/Algebra/Ring/Subsemiring/Support.lean 4 13 ['artie2000', 'chrisflav', 'github-actions'] eric-wieser
assignee:eric-wieser
3-76056
3 days ago
3-76682
3 days ago
28-86257
28 days
36541 BGuillemet
author:BGuillemet
feat(CategoryTheory): define internal equivalence relations Define internal equivalence relations in any category `C`, as a structure on parallel pairs of morphisms. Prove that equivalence relations on types are equivalence relations in the category of types. Prove that kernel pairs are equivalence relations. Define (universally) effective equivalence relations, and a associated class for categories in which every equivalence relation is effective universal. Prove that an effective equivalence relation yields a coequalizer diagram, and that the associated projection on the "quotient" of the relation is a regular epimorphism. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 288/0 Mathlib.lean,Mathlib/CategoryTheory/EquivalenceRelation.lean,Mathlib/CategoryTheory/Limits/Shapes/RegularMono.lean 3 12 ['BGuillemet', 'dagurtomas', 'github-actions'] b-mehta
assignee:b-mehta
3-74255
3 days ago
3-74255
3 days ago
11-10999
11 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)$$ - The `SimpContFract` version is still available unchanged, so this should avoid breaking existing users of the old API. - The use of `0` as the default partial numerator in `(g.partNums.get? i).getD 0` allows product formulation that remains valid when the fraction is terminated. t-algebra new-contributor large-import
label:t-algebra$
55/28 Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/ContinuedFractions/Determinant.lean 2 9 ['emlis42', 'github-actions', 'vihdzp'] nobody
3-73390
3 days ago
7-82151
7 days ago
7-82639
7 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 173/5 Mathlib/RingTheory/AdicCompletion/LocalRing.lean 1 15 ['BryceT233', 'Thmoas-Guan', 'github-actions'] nobody
3-73185
3 days ago
8-3983
8 days ago
8-15768
8 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$
141/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Baer.lean,Mathlib/Algebra/Homology/ShortComplex/ModuleCat.lean 3 46 ['Thmoas-Guan', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot'] dagurtomas
assignee:dagurtomas
3-73157
3 days ago
3-73157
3 days ago
28-38598
28 days
25974 scholzhannah
author:scholzhannah
feat(Topology/Compactness/CompactlyCoherentSpace): compact coherentification (k-ification) This PR defines the notion of turning an arbitrary topological space into a compactly coherent space. Compactly coherent spaces are commonly referred to as "compactly generated spaces" or "k-spaces" in the literature while the operation of turning a space into such as space is called the "k-ification". There are however three different notions that are described with this name. To disambiguate we use the names "compactly coherent space" and "compactcoherentification" here. See [this wikipedia page](https://en.wikipedia.org/wiki/Compactly_generated_space) for an explanation of these notions. This PR continues the work from #25318. Original PR: https://github.com/leanprover-community/mathlib4/pull/25318 Co-authored-by: Floris van Doorn t-topology large-import 162/5 Mathlib/Topology/Compactness/CompactlyCoherentSpace.lean 1 6 ['github-actions', 'joelriou', 'mathlib4-merge-conflict-bot', 'scholzhannah'] ADedecker
assignee:ADedecker
3-72193
3 days ago
3-73472
3 days ago
151-51708
151 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 maintainer-merge 152/0 Mathlib.lean,Mathlib/CategoryTheory/Profunctor/Basic.lean 2 13 ['dagurtomas', 'github-actions', 'robin-carlier'] robin-carlier
assignee:robin-carlier
3-67035
3 days ago
3-74159
3 days ago
5-36861
5 days
37411 vasnesterov
author:vasnesterov
feat(Tactic/ComputeAsymptotics/Multiseries): introduce `Monomial` * Introduce `Monomial` and `UnitMonomial` * Define `Monomial.toFun` and algebraic operations on monomials: negation, inversion, multiplication. --- - [x] depends on: #37414 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 maintainer-merge 232/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ComputeAsymptotics/Multiseries/Monomial/Basic.lean 3 9 ['github-actions', 'joneugster', 'mathlib-dependent-issues'] joneugster
assignee:joneugster
3-66509
3 days ago
3-68959
3 days ago
3-74309
3 days
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 maintainer-merge 201/0 Mathlib/Tactic/ComputeAsymptotics/Multiseries/Defs.lean 1 32 ['github-actions', 'joneugster', 'mathlib-merge-conflicts', 'vasnesterov'] joneugster
assignee:joneugster
3-66386
3 days ago
3-68271
3 days ago
20-20497
20 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 t-combinatorics 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
3-65765
3 days ago
17-51091
17 days ago
29-6944
29 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 t-measure-probability 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
3-65341
3 days ago
16-42300
16 days ago
25-60395
25 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 85/2 Mathlib/Algebra/Homology/ExactSequence.lean,Mathlib/CategoryTheory/Abelian/DiagramLemmas/Four.lean,Mathlib/CategoryTheory/ComposableArrows/Basic.lean 3 8 ['Brian-Nugent', 'dagurtomas', 'erdOne', 'github-actions'] adamtopaz
assignee:adamtopaz
3-65271
3 days ago
3-65271
3 days ago
18-80419
18 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 t-data 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
3-65254
3 days ago
9-79720
9 days ago
17-35676
17 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 t-order 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
3-65079
3 days ago
12-30427
12 days ago
12-34236
12 days
37893 abeldonate
author:abeldonate
feat: Module theory theorems Added three theorems: - annihilator_sup - torsionOf_eq_annihilator_span_singleton - annihilator_eq_iInf_torsionOf new-contributor t-algebra
label:t-algebra$
15/0 Mathlib/Algebra/Module/Torsion/Basic.lean,Mathlib/RingTheory/Ideal/Maps.lean 2 8 ['abeldonate', 'github-actions', 'scholzhannah', 'wwylele'] nobody
3-64800
3 days ago
3-72474
3 days ago
4-85342
4 days
38171 emlis42
author:emlis42
feat(Analysis/Calculus/Deriv): add deriv_const_mul_id' This PR adds a simp lemma for the derivative of multiplication by a constant on the left. In practice, `simp` is already able to simplify `fun x => x * c` and `fun x => x / c`. However, it getting stuck on `fun x => c * x` and `deriv (HMul.hMul c)`. This PR fix this by adding a simp lemma so that `simp` can also handle `fun x => c * x` without requiring an explicit `rw [deriv_const_mul]`. This is useful for examples such as: ```lean4 example {t : ℝ} (ht : t ≠ 0) : deriv (fun x => x ^ 2 / (2 * x)) t = 1 / 2 := by simp (disch := first | fun_prop (disch := grind) | grind); field example {t : ℝ} : deriv (HMul.hMul 2) t = 2 := by simp ``` new-contributor t-analysis 12/11 Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean,Mathlib/NumberTheory/Harmonic/GammaDeriv.lean,Mathlib/NumberTheory/ModularForms/DedekindEta.lean 4 4 ['emlis42', 'github-actions', 'leanprover-radar'] nobody
3-63407
3 days ago
3-69162
3 days ago
3-69153
3 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/) t-ring-theory 6/0 Mathlib/RingTheory/DividedPowerAlgebra/Init.lean 1 6 ['ADedecker', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
3-63209
3 days ago
7-45560
7 days ago
10-61048
10 days
37319 PrParadoxy
author:PrParadoxy
feat(Algebra/Field/Power): weaken assumptions of Odd.neg_zpow The lemmas `Even.neg_zpow` and `Even.neg_one_zpow` are stated assuming `[DivisionMonoid α] [HasDistribNeg α]`. However, `Odd.neg_zpow` and `Odd.neg_one_zpow` currently assume the stronger `[DivisionRing α]`. This PR weakens the assumption of the `Odd` lemmas to match their `Even` counterparts. The lemmas are currently the only content of Mathlib.Algebra.Field.Power. That files exists in order to "define Field with minimal imports". But after this PR, Power.lean does not rely on Mathlib.Algebra.Field.Defs any more. We hence deprecate "Field.Power" and move the two statements to Mathlib.Algebra.Ring.Int.Parity. --- Examples: ``` -- these all work: example (z : ℤ) (h : Even z) : (-1 : ℂ)^z = 1 := Even.neg_one_zpow h example (z : ℤ) (h : Even z) : (-1 : unitary ℂ)^z = 1 := Even.neg_one_zpow h example (z : ℤ) (h : Odd z) : (-1 : ℂ)^z = -1 := Odd.neg_one_zpow h -- but this fails without the PR: example (z : ℤ) (h : Odd z) : (-1 : unitary ℂ)^z = -1 := Odd.neg_one_zpow h ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
24/29 Mathlib/Algebra/Field/Power.lean,Mathlib/Algebra/Ring/Int/Parity.lean,Mathlib/Tactic/FieldSimp/Lemmas.lean 3 8 ['eric-wieser', 'github-actions', 'goliath-klein', 'joelriou'] joelriou
assignee:joelriou
3-61551
3 days ago
3-63101
3 days ago
16-34501
16 days
38178 Brian-Nugent
author:Brian-Nugent
chore(Topology): redefine TopologicalSpace.Opens.mapMapIso using OrderIso.equivalence This was a TODO. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 20/9 Mathlib/Topology/Category/TopCat/Opens.lean 1 1 ['github-actions'] nobody
3-60814
3 days ago
3-60877
3 days ago
3-60868
3 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 123/1 Mathlib.lean,Mathlib/RingTheory/Etale/Basic.lean,Mathlib/RingTheory/Etale/Descent.lean 3 5 ['chrisflav', 'github-actions', 'robin-carlier'] mattrobball
assignee:mattrobball
3-59780
3 days ago
3-59780
3 days ago
7-82923
7 days
38180 chrisflav
author:chrisflav
chore(CategoryTheory/Limits): limit properties of `MorphismProperty.Under` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 134/0 Mathlib/CategoryTheory/Limits/MorphismProperty.lean,Mathlib/CategoryTheory/MorphismProperty/Comma.lean 2 1 ['github-actions'] nobody
3-58594
3 days ago
3-58672
3 days ago
3-58663
3 days
38045 kbuzzard
author:kbuzzard
perf(Analysis/CStarAlgebra/Matrix): speed up simp call Remove a lemma from the simp set to stop typeclass inference taking an expensive wrong turn. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) The theorem `Matrix.l2_opNorm_diagonal` currently takes 66018097 mHeartbeats to elaborate (a couple of seconds, even on a fast machine). The reason for this is the final `simp` call, which takes 2/3 of the time, and the reason it takes so long is this misstep: ``` [Meta.synthInstance] [17395634.000000] ❌️ Nontrivial (EuclideanSpace 𝕜 n →L[𝕜] EuclideanSpace 𝕜 n) ▶ ``` This can't be proved (n can have size 0) but `simp` is darn well going to try anyway. Unfolding the profiler trace shows over 1000 lines for this failure (there are many many ways to prove that something is `Nontrivial` and it takes a long time for them all to fail). To add insult to injury, `simp` attempts to prove this twice! These two failed proof attempts eat up over 50% of the total time spent on this proof. The simplifier attempts to prove this because it wants to apply `CStarRing.norm_of_mem_unitary`, which needs nontriviality as a hypothesis. If we remove this lemma from the `simp` set and instead add `norm_coe_unitary` then this speeds up elaboration of this proof by a factor of slightly more than 2, and also has positive effects elsewhere in the library. I noticed this because a change in the algebra hierarchy which I'm experimenting with, made this proof start timing out. I'm fixing up my change because of this but having diagnosed the poor performance I thought there was no harm in fixing it anyway. t-analysis 1/1 Mathlib/Analysis/CStarAlgebra/Basic.lean 1 13 ['github-actions', 'grunweg', 'j-loreaux', 'kbuzzard', 'leanprover-radar'] j-loreaux
assignee:j-loreaux
3-56504
3 days ago
3-58423
3 days ago
4-20906
4 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 4 ['Multramate', 'github-actions', 'tb65536', 'wwylele'] riccardobrasca
assignee:riccardobrasca
3-55740
3 days ago
13-49097
13 days ago
13-49090
13 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 144/1 Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean 1 4 ['WilliamCoram', 'github-actions'] nobody
3-55467
3 days ago
6-65443
6 days ago
6-65434
6 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 97/6 Mathlib/Topology/Sets/VietorisTopology.lean 1 13 ['gasparattila', 'github-actions', 'mathlib-merge-conflicts', 'scholzhannah'] PatrickMassot
assignee:PatrickMassot
3-51343
3 days ago
5-65636
5 days ago
14-25704
14 days
38185 Jun2M
author:Jun2M
feat(Order/Partition): operations over Frame This PR introduces: * `Partition.induce`: The induce of a partition by a frame element. * `Partition.disjUnion`: The disjoint union of two partitions. * `Partition.bind`: The finer partition obtained by family of partitions for each part of the original partition. Co-authored-by: Peter Nelson --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 89/11 Mathlib/Order/Partition/Basic.lean,Mathlib/Order/SupIndep.lean 2 1 ['github-actions'] nobody
3-51015
3 days ago
3-51087
3 days ago
3-51078
3 days
38182 tb65536
author:tb65536
feat(RingTheory/Spectrum/Prime/Noetherian): rank of an Artinian ring over a field This PR proves that the rank of an Artinian ring over a field is the sum of the ranks of the localizations. This will be applied in #37130 to prove the ramification-inertia formula (this is where the sum first shows up). I had to upgrade the Finite instance on the prime spectrum of an Artinian ring to a Fintype instance in order to write down the sum, but this should be fine since this fintype instance can already be inferred from heavier imports: https://live.lean-lang.org/#codez=JYWwDg9gTgLgBAWQIYwBYBtgCMBQOB2E%2BAxhOAK4xJboCmctAHkuHXAN4BKcAXHACoBPMLQBUAXzgBtAMJkQnYPgDmcTgF1pASQDOAQVhLgSfIpVrNfAGJKYw%2BgAoAClFC0AyiOIwo5EGoBKXgBeHDg4JQAzWigtfB0qElocIA --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
20/10 Mathlib/RingTheory/Artinian/Module.lean,Mathlib/RingTheory/OrderOfVanishing/Noetherian.lean,Mathlib/RingTheory/Spectrum/Prime/Noetherian.lean 3 2 ['github-actions', 'tb65536'] nobody
3-50610
3 days ago
3-50610
3 days ago
3-50602
3 days
38186 tb65536
author:tb65536
feat(RingTheory/QuasiFinite/Basic): Localizations of the fiber are finite over the residue field This PR adds an instance stating that localizations of the fiber are finite over the residue field. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
4/0 Mathlib/RingTheory/QuasiFinite/Basic.lean 1 1 ['github-actions'] nobody
3-49856
3 days ago
3-49856
3 days ago
3-49849
3 days
38188 tb65536
author:tb65536
feat(RingTheory/Ideal/Over): image of `primeCompl` under a surjective `algebraMap` This PR proves that `primeCompl` maps to `primeCompl` along a surjective `algebraMap`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
10/0 Mathlib/RingTheory/Ideal/Over.lean 1 1 ['github-actions'] nobody
3-46724
3 days ago
3-46724
3 days ago
3-46716
3 days
38179 wwylele
author:wwylele
feat(Combinatorics): Pentagonal numbers Introduces definition of pentagonal number https://en.wikipedia.org/wiki/Pentagonal_number in preparation for pentagonal number theorem. --- This is extracted from #33143 as suggested. I only put a few elementary properties here to limit the code change size. The future file structure will be - Combinatorics/Enumerative/Pentagonal.lean (this PR) - Topology/Algebra/InfiniteSum/Pentagonal.lean + RingTheory/PowerSeries/Pentagonal.lean (#33143, depends on previous one) pentagonal theorem in generic form and for power series - Combinatorics/Enumerative/Partition/Pentagonal.lean (future PR, depends on the previous one): connection between partition and pentagonal numbers This originally comes from my own repo https://github.com/wwylele/PentagonalNumberTheorem. In the past, there were also PR #31156 and #31362 independently worked by @BeibeiX0 on the same topic, and I tried avoiding stepping on each other's toes when making #33143. Then #31156 and #31362 were closed for unclear reason. As I mostly rewrote the code based on my own repo, I only put my name here, but given that I unavoidably took inspiration from other PRs, if @BeibeiX0 would like his name to be added to co-author and copyright notice, I am happy to do so. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics maintainer-merge 75/0 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Pentagonal.lean 2 27 ['copilot-pull-request-reviewer', 'github-actions', 'tb65536', 'wwylele'] nobody
3-43984
3 days ago
3-44668
3 days ago
3-53445
3 days
35216 kim-em
author:kim-em
doc(Tactic/Translate/ToDual): add deployment guide for @[to_dual] This PR expands the documentation for `@[to_dual]` with practical advice for deploying it to existing code. **Module docstring** (`Mathlib/Tactic/Translate/ToDual.lean`): adds a "Deploying `@[to_dual]` to existing code" section covering name agreement, attribute propagation, docstring syntax ordering, declaration order dependencies, and known structural mismatches (conjunct reordering, type class gaps, interval argument swapping). **Attribute docstring**: adds a note that `@[simp]` is not auto-copied (must use `(attr := simp)`), and shows the correct ordering when combining `(attr := ...)` with docstrings. **Agent skill** (`.claude/skills/to_dual/SKILL.md`): detailed step-by-step instructions for an AI agent deploying `@[to_dual]`, including how to identify candidates, common patterns, and debugging. 🤖 Prepared with Claude Code documentation enhancement LLM-generated 31/3 Mathlib/Tactic/Translate/ToDual.lean 1 30 ['JovanGerb', 'MichaelStollBayreuth', 'github-actions', 'kim-em', 'mathlib-merge-conflicts', 'vihdzp'] JovanGerb
assignee:JovanGerb
3-43123
3 days ago
3-43146
3 days ago
10-30021
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'] nobody
3-36805
3 days ago
27-42590
27 days ago
32-11389
32 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 46/3 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Data/Sym/Sym2.lean 2 8 ['SnirBroshi', 'eric-wieser', 'github-actions', 'mathlib-merge-conflicts'] nobody
3-36803
3 days ago
31-41386
31 days ago
74-1069
74 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'] PatrickMassot
assignee:PatrickMassot
3-36622
3 days ago
27-66179
27 days ago
27-67420
27 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 17 ['Maldooor', 'github-actions', 'lua-vr', 'samueloettl'] mcdoll
assignee:mcdoll
3-36621
3 days ago
7-82151
7 days ago
63-75521
63 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'] eric-wieser
assignee:eric-wieser
3-36621
3 days ago
58-313
58 days ago
58-14810
58 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'] fpvandoorn
assignee:fpvandoorn
3-36620
3 days ago
46-27228
46 days ago
58-11070
58 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/) t-category-theory 159/0 Mathlib/CategoryTheory/Abelian/Injective/Dimension.lean,Mathlib/CategoryTheory/Abelian/Projective/Dimension.lean 2 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] adamtopaz
assignee:adamtopaz
3-36619
3 days ago
15-19200
15 days ago
21-54632
21 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 t-algebra
label:t-algebra$
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'] dagurtomas
assignee:dagurtomas
3-36618
3 days ago
24-45592
24 days ago
29-36808
29 days
37298 artie2000
author:artie2000
refactor(Algebra/Order): unbundle group and ring cone * Unbundle `GroupCone` and `RingCone` using `Submonoid.IsMulPointed` The material in `Mathlib.Algebra.Group.Submonoid.Support` was created to treat uniformly * positive cones in groups and rings * pointed cones in vector spaces over an ordered field * orderings in rings This PR deprecates the [GroupCone](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Group/Cone.html#GroupCone) and [RingCone](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Ring/Cone.html#RingCone) structures, making use of the predicates `Submonoid.IsMulPointed` and `AddSubmonoid.IsPointed` defined in that file instead. See also #36863 for the analogous change to ring orderings. --- [![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 2 ['github-actions', 'joneugster'] kim-em
assignee:kim-em
3-36617
3 days ago
22-63393
22 days ago
22-63939
22 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 t-measure-probability 92/0 Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean 1 2 ['github-actions'] RemyDegenne
assignee:RemyDegenne
3-36616
3 days ago
14-73804
14 days ago
14-73795
14 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'] dagurtomas
assignee:dagurtomas
3-36614
3 days ago
11-32640
11 days ago
11-32631
11 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'] dwrensha
assignee:dwrensha
3-36613
3 days ago
8-64844
8 days ago
8-69530
8 days
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 32/23 Mathlib/Algebra/Algebra/Basic.lean,Mathlib/RingTheory/LocalProperties/Basic.lean,Mathlib/RingTheory/Localization/Away/Basic.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean,Mathlib/RingTheory/Localization/FractionRing.lean 6 1 ['github-actions'] riccardobrasca
assignee:riccardobrasca
3-36612
3 days ago
5-63997
5 days ago
5-64194
5 days
38127 riccardobrasca
author:riccardobrasca
feat: add ClassGroup.extendedHom --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-algebra t-ring-theory
label:t-algebra$
109/6 Mathlib.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/NumberTheory/ClassNumber/Finite.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/FundamentalCone.lean,Mathlib/RingTheory/ClassGroup/Basic.lean,Mathlib/RingTheory/ClassGroup/ExtendedHom.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean,Mathlib/RingTheory/PicardGroup.lean,Mathlib/RingTheory/UniqueFactorizationDomain/ClassGroup.lean 9 2 ['github-actions'] mattrobball
assignee:mattrobball
3-36612
3 days ago
4-60133
4 days ago
4-60166
4 days
38177 chrisflav
author:chrisflav
chore(RingTheory/Localization): mirror tensor product compatibilities and golf We add a mirrored version of `IsLocalization.tensorProduct_tensorProduct` and some related isomorphisms. We use this to golf the proof of `RingHom.locally_isStableUnderBaseChange`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 116/44 Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Finiteness.lean,Mathlib/RingTheory/RingHom/Locally.lean,Mathlib/RingTheory/RingHomProperties.lean 5 1 ['github-actions'] riccardobrasca
assignee:riccardobrasca
3-36607
3 days ago
3-59353
3 days ago
3-60305
3 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 30/1 Mathlib/ModelTheory/Topology/Types.lean 1 12 ['NoneMore', 'anishrajeev', 'fpvandoorn', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] fpvandoorn
assignee:fpvandoorn
3-31988
3 days ago
3-32043
3 days ago
17-14073
17 days
38194 ryanncode
author:ryanncode
feat(LinearAlgebra/BilinearForm): add indefinite metrics Add the `IndefiniteMetric` structure to support vector spaces equipped with a non-degenerate, symmetric, indefinite bilinear form. Provide the algebraic foundation for indefinite inner product spaces by formalizing the metric via `LinearMap.BilinForm` and extracting its associated quadratic form without enforcing the `IsPosSemidef` typeclass. Previously, mathlib required strictly positive-definite metrics to instantiate inner product spaces (`InnerProductSpace`), which prevented the formalization of indefinite geometries without causing typeclass inference failures. Bridge this gap by isolating the symmetric bilinear form from topological and positivity constraints, allowing the library to handle generalized indefinite metric spaces safely. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
47/0 Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/IndefiniteMetric.lean 2 2 ['github-actions'] nobody
3-21360
3 days ago
3-21431
3 days ago
3-21422
3 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 140/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
3-20587
3 days ago
3-20606
3 days ago
29-13564
29 days
37923 e-271828
author:e-271828
feat(Analysis/Calculus/DSlope): add `eq_smul_dslope_of_zero` and iterated version This PR adds two fundamental algebraic identities connecting a function with its `dslope` when the base point is a root: * `eq_smul_dslope_of_zero`: `f b = (b - a) • dslope f a b` when `f a = 0`. * `eq_pow_smul_iterate_dslope_of_zero`: The iterated version `f b = (b - a) ^ n • (Function.swap dslope a)^[n] f b` when the first `n-1` iterated dslopes vanish at `a`. These lemmas are essential for factoring out removable singularities locally. This PR was assisted by LLMs (Aristotle and Gemini). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 13/0 Mathlib/Analysis/Calculus/DSlope.lean 1 18 ['e-271828', 'github-actions', 'j-loreaux', 'wwylele'] j-loreaux
assignee:j-loreaux
3-19772
3 days ago
3-19772
3 days ago
6-63314
6 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 48/13 Mathlib/SetTheory/Cardinal/Ordinal.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] alreadydone
assignee:alreadydone
3-18421
3 days ago
3-18477
3 days ago
18-22591
18 days
37640 IvanRenison
author:IvanRenison
feat(Order/RelIso): add lemmas about congruence with `relIso` Also, the default `simps` lemmas (`*_apply` and `*_symm_apply`) are convenient for `simp` but not for `rw`, `simp_rw`, or `simp_only`, so we add new `simps` lemmas for them (`*_apply_apply` and `*_symm_apply_apply`). --- 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 maintainer-merge 33/1 Mathlib/Order/RelIso/Basic.lean 1 12 ['IvanRenison', 'Komyyy', 'github-actions'] nobody
3-16169
3 days ago
9-56888
9 days ago
15-59101
15 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 maintainer-merge 89/5 Mathlib/Order/Ideal.lean 1 19 ['Komyyy', 'bryangingechen', 'github-actions', 'leanprover-radar', 'mathlib-dependent-issues', 'staroperator'] nobody
3-15723
3 days ago
6-48203
6 days ago
62-35302
62 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 maintainer-merge
label:t-algebra$
1/7 Mathlib/Algebra/Order/SuccPred.lean 1 3 ['Komyyy', 'github-actions', 'plp127'] nobody
3-14524
3 days ago
6-4012
6 days ago
6-4061
6 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 203/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 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
3-13004
3 days ago
3-13027
3 days ago
11-4875
11 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 11 ['eric-wieser', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody
3-12007
3 days ago
3-12065
3 days ago
7-86252
7 days
37877 joelriou
author:joelriou
chore(AlgebraicTopology/SingularHomology): deprecating renamed module `HomotopyInvarianceTopCat` The file `SingularHomology/HomotopyInvarianceTopCat` is deprecated after it was renamed `SingularHomology/HomotopyInvariance` in #37658. --- - [x] depends on: #37658 - [x] depends on: #37656 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology 7/1 Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialSet/Homology/HomotopyInvariance.lean,Mathlib/AlgebraicTopology/SingularHomology/HomotopyInvarianceTopCat.lean 3 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
3-10405
3 days ago
3-10405
3 days ago
3-10398
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 maintainer-merge 80/7 Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/DirSupClosed.lean 2 13 ['Komyyy', 'github-actions', 'leanprover-radar', 'mathlib-splicebot', 'vihdzp'] nobody
3-8780
3 days ago
3-8838
3 days ago
14-84164
14 days
38200 Parcly-Taxel
author:Parcly-Taxel
feat: Turán numbers and their strict monotonicity `strictMonoOn_turanNumber` and `sum_mul_le_twice_turanNumber` were initially proved by @Aristotle-Harmonic, then hand-polished. Co-authored-by: Aristotle (Harmonic) t-combinatorics 55/20 Mathlib/Combinatorics/SimpleGraph/Extremal/Turan.lean 1 1 ['github-actions'] nobody
3-7659
3 days ago
3-9086
3 days ago
3-9077
3 days
38163 joelriou
author:joelriou
feat(AlgebraicTopology): strong anodyne extensions respects isomorphisms --- - [x] depends on: #37321 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology 27/0 Mathlib/AlgebraicTopology/SimplicialSet/AnodyneExtensions/Basic.lean,Mathlib/AlgebraicTopology/SimplicialSet/Subcomplex.lean 2 2 ['github-actions', 'mathlib-dependent-issues'] nobody
3-6523
3 days ago
3-6343
3 days ago
3-7787
3 days
38196 vihdzp
author:vihdzp
chore(Data/Prod/Lex): use `to_dual` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order t-data maintainer-merge 47/39 Mathlib/Data/Prod/Lex.lean 1 2 ['JovanGerb', 'github-actions'] nobody
3-5011
3 days ago
3-17366
3 days ago
3-17357
3 days
36524 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(GroupTheory/SpecificGroups/Alternating/Simple): simplicity of the alternating groups This is the conclusion of the story of the proof of simplicity of the alternating group using the Iwasawa criterion. * `Equiv.Perm.iwasawaStructure_two`: the natural `IwasawaStructure` of `Equiv.Perm α` acting on `Nat.Combination α 2` Its commutative subgroups consist of the permutations with support in a given element of `Nat.Combination α 2`. They are cyclic of order 2. * `alternatingGroup_of_le_of_normal`: If `α` has at least 5 elements, then a nontrivial normal subgroup of `Equiv.Perm α` contains the alternating group. * `alternatingGroup.iwasawaStructure_three`: the natural `IwasawaStructure` of `alternatingGroup α` acting on `Nat.Combination α 3` Its commutative subgroups consist of the permutations with support in a given element of `Nat.Combination α 2`. They are cyclic of order 3. * `alternatingGroup.iwasawaStructure_three`: the natural `IwasawaStructure` of `alternatingGroup α` acting on `Nat.Combination α 4` Its commutative subgroups consist of the permutations of cycleType (2, 2) with support in a given element of `Nat.Combination α 2`. They have order 4 and exponent 2 (`IsKleinFour`). * `alternatingGroup.normal_subgroup_eq_bot_or_eq_top`: If `α` has at least 5 elements, then a nontrivial normal subgroup of `alternatingGroup` is `⊤`. * `alternatingGroup.isSimpleGroup`: If `α` has at least 5 elements, then `alternatingGroup α` is a simple group. --- - [x] depends on: #33082 - [x] depends on: #36983 - [x] depends on: #37026 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory large-import 320/42 Mathlib.lean,Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/Algebra/Group/Subgroup/Map.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/GroupTheory/GroupAction/MultipleTransitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/Combination.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/Centralizer.lean,Mathlib/GroupTheory/SpecificGroups/Alternating/Simple.lean 9 66 ['AntoineChambert-Loir', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'robin-carlier', 'tb65536'] tb65536
assignee:tb65536
3-4722
3 days ago
3-4763
3 days ago
11-6370
11 days
36236 kim-em
author:kim-em
chore: add module keyword to Archive and Counterexamples files This PR converts 105 Archive and Counterexamples files to module format, adding `module`, `public import`, and `@[expose] public section`. Eight files are left unconverted for now: - Seven files containing `private` declarations that need further work (`Imo1962Q1`, `MiuLanguage/Basic`, `MiuLanguage/DecisionSuf`, `AscendingDescendingSequences`, `BallotProblem`, `AharoniKorman`, `TopologistsSineCurve`) - `Counterexamples/InvertibleModuleNotIdeal` which needs an import path update For `Archive/Examples/PropEncodable`, the `private` declarations were removed as part of this conversion. 🤖 Prepared with Claude Code IMO LLM-generated 735/309 Archive/Arithcc.lean,Archive/Examples/Eisenstein.lean,Archive/Examples/Kuratowski.lean,Archive/Examples/PropEncodable.lean,Archive/Hairer.lean,Archive/Imo/Imo1959Q1.lean,Archive/Imo/Imo1959Q2.lean,Archive/Imo/Imo1960Q1.lean,Archive/Imo/Imo1960Q2.lean,Archive/Imo/Imo1961Q3.lean,Archive/Imo/Imo1962Q4.lean,Archive/Imo/Imo1963Q5.lean,Archive/Imo/Imo1964Q1.lean,Archive/Imo/Imo1969Q1.lean,Archive/Imo/Imo1972Q5.lean,Archive/Imo/Imo1975Q1.lean,Archive/Imo/Imo1977Q6.lean,Archive/Imo/Imo1981Q3.lean,Archive/Imo/Imo1982Q1.lean,Archive/Imo/Imo1985Q2.lean,Archive/Imo/Imo1986Q5.lean,Archive/Imo/Imo1987Q1.lean,Archive/Imo/Imo1988Q6.lean,Archive/Imo/Imo1994Q1.lean,Archive/Imo/Imo1997Q3.lean,Archive/Imo/Imo1998Q2.lean,Archive/Imo/Imo2001Q2.lean,Archive/Imo/Imo2001Q3.lean,Archive/Imo/Imo2001Q4.lean,Archive/Imo/Imo2001Q5.lean,Archive/Imo/Imo2001Q6.lean,Archive/Imo/Imo2002Q3.lean,Archive/Imo/Imo2005Q3.lean,Archive/Imo/Imo2005Q4.lean,Archive/Imo/Imo2006Q3.lean,Archive/Imo/Imo2006Q5.lean,Archive/Imo/Imo2008Q2.lean,Archive/Imo/Imo2008Q3.lean,Archive/Imo/Imo2008Q4.lean,Archive/Imo/Imo2010Q5.lean,Archive/Imo/Imo2011Q3.lean,Archive/Imo/Imo2011Q5.lean,Archive/Imo/Imo2013Q1.lean,Archive/Imo/Imo2013Q5.lean,Archive/Imo/Imo2015Q6.lean,Archive/Imo/Imo2019Q1.lean,Archive/Imo/Imo2019Q2.lean,Archive/Imo/Imo2019Q4.lean,Archive/Imo/Imo2020Q2.lean,Archive/Imo/Imo2021Q1.lean,Archive/Imo/Imo2024Q2.lean,Archive/Imo/Imo2024Q3.lean,Archive/Imo/Imo2024Q6.lean,Archive/Imo/Imo2025Q3.lean,Archive/Kuratowski.lean,Archive/MinimalSheffer.lean,Archive/OxfordInvariants/Summer2021/Week3P1.lean,Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/AbelRuffini.lean,Archive/Wiedijk100Theorems/AreaOfACircle.lean,Archive/Wiedijk100Theorems/BirthdayProblem.lean,Archive/Wiedijk100Theorems/BuffonsNeedle.lean,Archive/Wiedijk100Theorems/CubingACube.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Archive/Wiedijk100Theorems/HeronsFormula.lean,Archive/Wiedijk100Theorems/InverseTriangleSum.lean,Archive/Wiedijk100Theorems/Konigsberg.lean,Archive/Wiedijk100Theorems/PerfectNumbers.lean,Archive/Wiedijk100Theorems/SolutionOfCubicQuartic.lean,Archive/Wiedijk100Theorems/SumOfPrimeReciprocalsDiverges.lean,Archive/ZagierTwoSquares.lean,Counterexamples/CanonicallyOrderedCommSemiringTwoMul.lean,Counterexamples/CharPZeroNeCharZero.lean,Counterexamples/CliffordAlgebraNotInjective.lean,Counterexamples/Cyclotomic105.lean,Counterexamples/DimensionPolynomial.lean,Counterexamples/DirectSumIsInternal.lean,Counterexamples/DiscreteTopologyNonDiscreteUniformity.lean,Counterexamples/EulerSumOfPowers.lean,Counterexamples/Girard.lean,Counterexamples/HeawoodUnitDistance.lean,Counterexamples/HomogeneousPrimeNotPrime.lean,Counterexamples/IrrationalPowerOfIrrational.lean,Counterexamples/MapFloor.lean,Counterexamples/MonicNonRegular.lean,Counterexamples/Motzkin.lean,Counterexamples/NowhereDifferentiable.lean,Counterexamples/OrderedCancelAddCommMonoidWithBounds.lean,Counterexamples/PeanoCurve.lean,Counterexamples/Phillips.lean,Counterexamples/PolynomialIsDomain.lean,Counterexamples/Pseudoelement.lean,Counterexamples/QuadraticForm.lean,Counterexamples/SeminormLatticeNotDistrib.lean,Counterexamples/SeparableNotSecondCountable.lean,Counterexamples/SorgenfreyLine.lean,Counterexamples/ZeroDivisorsInAddMonoidAlgebras.lean 97 8 ['JovanGerb', 'github-actions', 'grunweg', 'mathlib-merge-conflicts'] dwrensha
assignee:dwrensha
3-4495
3 days ago
3-42949
3 days ago
3-45731
3 days
38198 JovanGerb
author:JovanGerb
chore(Data/Real/Basic): `no_expose` the private operations This PR puts `no_expose` on all of the operations on `Real` that are defined in terms of quotients. This is a step in the direction of not exposing the definiton of `Real`. Note that I leave the `irreducible_def`s as is. This is because the `simpNF` linter does not participate in the module system, and it would time out otherwise. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 11/32 Mathlib/Analysis/SpecialFunctions/Gaussian/GaussianIntegral.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Topology/Algebra/Valued/NormedValued.lean 3 4 ['JovanGerb', 'github-actions', 'leanprover-radar'] nobody
3-4220
3 days ago
3-7391
3 days ago
3-8323
3 days
30185 alreadydone
author:alreadydone
feat(MathlibTest): kernel reduction of nsmul on elliptic curve over ZMod Co-authored-by: @SteffenReith --- - [x] depends on: #30144 - [x] depends on: #30181 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-number-theory t-algebraic-geometry
label:t-algebra$
29/0 MathlibTest/EllipticCurve.lean 1 10 ['alreadydone', 'github-actions', 'joneugster', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] joneugster
assignee:joneugster
3-3833
3 days ago
3-3833
3 days ago
4-19346
4 days
38173 JovanGerb
author:JovanGerb
chore(CategoryTheory/EpiMono): use `to_dual` Generate declarations about `Mono`, `SplitMono` and `SplitMonoCategory` from the epic versions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 40/120 Mathlib/CategoryTheory/EpiMono.lean,Mathlib/Tactic/Translate/ToDual.lean 2 1 ['github-actions'] nobody
3-2092
3 days ago
3-2149
3 days ago
3-4974
3 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$
602/19 Mathlib.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/Data/DFinsupp/BigOperators.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/RingQuot.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/Ideal/Span.lean 11 71 ['AntoineChambert-Loir', 'chrisflav', 'eric-wieser', 'github-actions', 'robin-carlier'] ocfnash and robin-carlier
assignee:ocfnash assignee:robin-carlier
2-84586
2 days ago
2-84633
2 days ago
20-77473
20 days
38169 tb65536
author:tb65536
chore(GroupTheory/Finiteness): make `Subgroup.FG` a class This PR refactors `Subgroup.FG` to be a class to match `Group.FG`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-group-theory
label:t-algebra$
37/20 Mathlib/GroupTheory/Commutator/Finite.lean,Mathlib/GroupTheory/Finiteness.lean,Mathlib/GroupTheory/Rank.lean,Mathlib/GroupTheory/Schreier.lean 4 3 ['JovanGerb', 'github-actions', 'tb65536'] riccardobrasca
assignee:riccardobrasca
2-76055
2 days ago
3-67454
3 days ago
3-67447
3 days
34435 huaizhangchu
author:huaizhangchu
feat(Probability): convolution of Poisson distributions This PR proves that the convolution of two Poisson distributions is again a Poisson distribution: `Poisson(r₁) ∗ Poisson(r₂) = Poisson(r₁ + r₂)` ## Main results - `poissonMeasureReal_charFun`: characteristic function of Poisson distribution is `exp(r(exp(it) - 1))` - `poissonMeasureReal_conv_poissonMeasureReal`: convolution of Poisson distributions on ℝ - `poissonMeasure_conv_poissonMeasure`: convolution of Poisson distributions on ℕ - `poissonMeasure_add_poissonMeasure_of_indepFun`: sum of independent Poisson random variables ## Proof strategy Uses characteristic functions: `φ(t) = exp(r(eⁱᵗ - 1))`, then pulls back from ℝ to ℕ. --- - [x] depends on: #34521 - [ ] depends on: #36374 t-measure-probability large-import new-contributor 122/17 Mathlib/Probability/Distributions/Poisson/Basic.lean 1 64 ['CoolRmal', 'DavidLedvinka', 'EtienneC30', 'github-actions', 'huaizhangchu', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'pfaffelh', 'vianna04', 'yuanyi-350'] EtienneC30
assignee:EtienneC30
2-75202
2 days ago
3-75740
3 days ago
50-41738
50 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 228/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
2-72489
2 days ago
6-47371
6 days ago
6-47915
6 days
38212 gaetanserre
author:gaetanserre
feat(MarkovCategory/Positive): Define `PositiveCategory` Define `PositiviveCategory`: a specific kind of Markov category deeply related to determinism of isomorphisms. For some additional context, please see #37851. ### References - Section 11 of [A synthetic approach to Markov kernels, conditional independence and theorems on sufficient statistics, Fritz, 2020](https://arxiv.org/abs/1908.07021) - Section 3 of [A category-theoretic proof of the ergodic decomposition theorem, Moss and Perrone, 2023](https://arxiv.org/abs/2207.07353) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 102/0 Mathlib.lean,Mathlib/CategoryTheory/CopyDiscardCategory/Deterministic.lean,Mathlib/CategoryTheory/MarkovCategory/Positive.lean,docs/references.bib 4 1 ['github-actions'] nobody
2-71712
2 days ago
2-74427
2 days ago
2-74910
2 days
38184 tb65536
author:tb65536
chore(Algebra/Algebra/Tower): make `Algebra.algHom` an alias of `IsScalarTower.ofAlgHom` `Algebra.algHom` is a duplicate of `IsScalarTower.ofAlgHom` so I've made it an alias to make this clearer. Zulip thread: [#mathlib4 > duplication: Algebra.algHom = IsScalarTower.toAlgHom](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/duplication.3A.20Algebra.2EalgHom.20.3D.20IsScalarTower.2EtoAlgHom/with/569828872) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
6/7 Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Tower.lean 2 5 ['acmepjz', 'github-actions', 'tb65536'] nobody
2-71679
2 days ago
3-49262
3 days ago
3-49254
3 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 maintainer-merge 41/0 Mathlib/Data/Set/Finite/Lattice.lean 1 18 ['Komyyy', 'github-actions', 'plp127', 'staroperator'] nobody
2-69389
2 days ago
3-2110
3 days ago
52-48095
52 days
38073 sgouezel
author:sgouezel
chore: improve performance for quotient group structure The ring instance on `R ⧸ I` is not reducibly compatible with its `AddCommGroup` structure. A previous version of this PR was fixing this diamond, but mixing several changes (notably improving performance to compensate for the performance loss due to the fix). Now, the PR is only improving performance (quite nicely) by introducing intermediate classes for typeclass inference (notably `AddMonoid`) to make for more compact instances in quotient groups. Another PR will subsequently fix the diamond (with a performance hit). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 6/1 Mathlib/GroupTheory/QuotientGroup/Defs.lean,Mathlib/LinearAlgebra/Quotient/Defs.lean 2 36 ['JovanGerb', 'github-actions', 'leanprover-radar', 'robin-carlier', 'sgouezel'] JovanGerb
assignee:JovanGerb
2-68928
2 days ago
5-18057
5 days ago
5-73726
5 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$
104/0 Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean 1 16 ['copilot-pull-request-reviewer', 'eric-wieser', 'github-actions', 'wwylele'] eric-wieser
assignee:eric-wieser
2-68421
2 days ago
2-68478
2 days ago
64-67371
64 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 22/11 Mathlib/Tactic/TacticAnalysis/Declarations.lean,MathlibTest/TacticAnalysis.lean 2 6 ['chenson2018', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
2-64697
2 days ago
2-64697
2 days ago
9-21713
9 days
38020 Deicyde
author:Deicyde
feat(Topology/FiberBundle): `continuousAt_symm_prodMk_left` API lemma for fiber bundle trivializations. Shows that for a given trivialization `e` and fixed `v`, `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 11/2 Mathlib/Topology/FiberBundle/Trivialization.lean,Mathlib/Topology/Homotopy/Lifting.lean 2 17 ['Deicyde', 'github-actions', 'grunweg'] PatrickMassot and grunweg
assignee:grunweg assignee:PatrickMassot
2-61085
2 days ago
2-61085
2 days ago
4-23829
4 days
38215 wwylele
author:wwylele
feat(AffineSpace): the plane through a simplex vertex parallel to the opposite face intersects with closedInterior only at the vertex Split off from #36018, and ultimately this is in the dependency tree of #37910 (volume of a simplex). Technically speaking, this lemma is not necessary for volume calculation, as this specific parallel space is counted for 0 measure, but it is needed to state intermediate lemma in appropriate generality --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
40/0 Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean 1 1 ['github-actions'] nobody
2-53374
2 days ago
2-53374
2 days ago
2-53365
2 days
38183 MichaelStollBayreuth
author:MichaelStollBayreuth
feat(NumberTheory/Height/NumberField): results on heights over the rational numbers This adds the statement that the height of a tuple of coprime integers (considered as rational numbers) is the maximum of their absolute values and also the fact that the height of a rational number is the maximum of the absolute value of its numerator and its denominator. We use this to golf the proof of the statement for natural numbers recently introduced in [#38125](https://github.com/leanprover-community/mathlib4/pull/38125). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 132/18 Mathlib/NumberTheory/Height/NumberField.lean,Mathlib/NumberTheory/NumberField/Completion/FinitePlace.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean 3 28 ['MichaelStollBayreuth', 'github-actions', 'jcommelin', 'tb65536'] tb65536
assignee:tb65536
2-52363
2 days ago
2-62301
2 days ago
3-43070
3 days
38219 wwylele
author:wwylele
feat(AffineSpace): gcongr lemma for AffineSubspace.mk' --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
9/0 Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean 1 2 ['github-actions', 'wwylele'] nobody
2-51444
2 days ago
2-51511
2 days ago
2-51502
2 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 19/0 Mathlib/Data/Finset/Preimage.lean,Mathlib/Data/Set/Function.lean 2 4 ['Rida-Hamadani', 'github-actions', 'themathqueen'] nobody
2-51308
2 days ago
16-41053
16 days ago
16-41044
16 days
38220 wwylele
author:wwylele
feat(LinearAlgebra/AffineSpace): shifting a subspace towards a point Split off from #36018 and excluded the Simplex part. This is preparing to calculate the volume of a simplex by integrating the cross-section created by shifting the base plane. Part of https://github.com/leanprover-community/mathlib4/pull/34826. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
133/0 Mathlib.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Shift.lean 2 1 ['github-actions'] nobody
2-50328
2 days ago
2-50406
2 days ago
2-50397
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
2-47117
2 days ago
11-6890
11 days ago
11-6985
11 days
38199 vihdzp
author:vihdzp
chore: add items to set theory overview --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-set-theory 11/2 docs/overview.yaml 1 3 ['SnirBroshi', 'github-actions', 'vihdzp'] nobody
2-43218
2 days ago
3-9759
3 days ago
3-9849
3 days
37939 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Order/Completion): embed a linear order into a dense and complete linear order The aim of the PR is to prove the following theorem that will be used as an input to [Sion.DMCompletion.exists_isSaddlePointOn](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Sion.html#Sion.DMCompletion.exists_isSaddlePointOn) : *If `β` is any linear order, then there exists a complete and dense linear order `γ` together with a continuous embedding `ι : β ↪o γ` (for the order topologies on `β` and `γ`).* Meanwhile, the PR also records various instances about dense orders and lemmas regarding the Dedekind MacNeille completion and lexicographic orders. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 208/3 Mathlib.lean,Mathlib/Data/Prod/Lex.lean,Mathlib/Order/Completion.lean,Mathlib/Topology/Order/Completion.lean,Mathlib/Topology/Sion.lean 5 49 ['ADedecker', 'AntoineChambert-Loir', 'github-actions', 'vihdzp'] vihdzp
assignee:vihdzp
2-43053
2 days ago
2-43053
2 days ago
2-45350
2 days
38224 plp127
author:plp127
fix(QuadraticAlgebra): `Rat` algebra diamond Fix a diamond for `Algebra Rat (QuadraticAlgebra Rat a b)` at default transparency by overriding the default implementation of the `qsmul` and `ratCast` fields with one that does not create a diamond. The diamond is still present at reducible-and-instances transparency. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
59/7 Mathlib/Algebra/QuadraticAlgebra/Basic.lean,Mathlib/Algebra/QuadraticAlgebra/Defs.lean,MathlibTest/Algebra/QuadraticAlgebra/RatAlgebraDiamond.lean 3 1 ['github-actions'] nobody
2-38813
2 days ago
2-38883
2 days ago
2-38874
2 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'] nobody
2-36805
2 days ago
24-60745
24 days ago
24-61496
24 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'] nobody
2-36804
2 days ago
24-60759
24 days ago
24-61540
24 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'] riccardobrasca
assignee:riccardobrasca
2-36247
2 days ago
14-70560
14 days ago
19-14858
19 days
32555 ksenono
author:ksenono
feat(Combinatorics/SimpleGraph/Matching): maximum and maximal matchings for Konig's theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 112/0 Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean 2 39 ['SnirBroshi', 'SproutSeeds', 'github-actions', 'jcommelin', 'ksenono'] b-mehta
assignee:b-mehta
2-36247
2 days ago
3-72936
3 days ago
103-54516
103 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'] thorimur
assignee:thorimur
2-36246
2 days ago
24-48859
24 days ago
56-46411
56 days
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'] alreadydone
assignee:alreadydone
2-36245
2 days ago
27-6572
27 days ago
46-383
46 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'] TwoFX
assignee:TwoFX
2-36244
2 days ago
26-76832
26 days ago
31-26499
31 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'] kim-em
assignee:kim-em
2-36243
2 days ago
16-24695
16 days ago
17-40174
17 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'] Komyyy
assignee:Komyyy
2-36243
2 days ago
12-38523
12 days ago
14-25276
14 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 t-category-theory 214/4 Mathlib/CategoryTheory/Monoidal/Hopf_.lean,Mathlib/RingTheory/HopfAlgebra/Basic.lean 2 4 ['github-actions', 'robin-carlier', 'sglasman'] kim-em
assignee:kim-em
2-36242
2 days ago
12-51885
12 days ago
12-51876
12 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 maintainer-merge 7/31 Mathlib/Tactic/Replace.lean 1 2 ['github-actions', 'joneugster'] dwrensha
assignee:dwrensha
2-36241
2 days ago
7-73229
7 days ago
7-73942
7 days
38211 gaetanserre
author:gaetanserre
feat(Probability/Kernel): define `IsDeterministicKernel` Defines the `IsDeterministicKernel` typeclass which state that a kernel is deterministic in a categorical sense, i.e., it "commutes" with `Kernel.copy`. For some additional context, please see #37851. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 212/0 Mathlib.lean,Mathlib/Probability/Kernel/Deterministic.lean 2 1 ['github-actions'] RemyDegenne
assignee:RemyDegenne
2-36237
2 days ago
2-78640
2 days ago
2-78631
2 days
38218 gasparattila
author:gasparattila
chore(MeasureTheory): remove some unnecessary `@[measurability]` attributes --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 6/14 Mathlib/MeasureTheory/MeasurableSpace/Basic.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/MeasureTheory/Measure/AEMeasurable.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/MeasureTheory/Measure/Prod.lean,Mathlib/Probability/Density.lean 6 8 ['gasparattila', 'github-actions'] EtienneC30
assignee:EtienneC30
2-36236
2 days ago
2-51524
2 days ago
2-51515
2 days
38193 Jun2M
author:Jun2M
feat(Topology/Algebra/InfiniteSum): Generalise ENNReal lemmas for CompleteLinearOrderedAddCommMonoidWithTop This PR generalizes many theorems in Topology/Algebra/InfiniteSum/ENNReal.lean from `ENNREal` to any type with `CompleteLinearOrderedAddCommMonoidWithTop` instance which in particular, includes `ENat`. `CompleteLinearOrderedAddCommMonoidWithTop` is a new class introduced in this PR as extension of `LinearOrderedAddCommMonoidWithTop` and `CompleteLinearOrder`. Although a lot of files are being changed, all but 4 files are just changing the calls to theorems to calls to the generalised one. The 2 files with major changes are + Topology/InfiniteSum/ENNReal: The many theorems here are generalised and deprecated. + Topology/InfiniteSum/WithTop: A new file for the generalised theorems. And 2 files with minor changes are + Algebra/Order/AddGraphWithTop: Definition of `CompleteLinearOrderedAddCommMonoidWithTop` added. + Data/ENat/Lattice: Proof that `ENat` is `CompleteLinearOrderedAddCommMonoidWithTop` added. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import 554/365 Mathlib.lean,Mathlib/Algebra/Order/AddGroupWithTop.lean,Mathlib/Analysis/Normed/Group/InfiniteSum.lean,Mathlib/Analysis/PSeries.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Data/ENat/Lattice.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Real.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Covering/Differentiation.lean,Mathlib/MeasureTheory/Covering/Vitali.lean,Mathlib/MeasureTheory/Function/AEMeasurableOrder.lean,Mathlib/MeasureTheory/Function/ConvergenceInMeasure.lean,Mathlib/MeasureTheory/Function/Egorov.lean,Mathlib/MeasureTheory/Function/Jacobian.lean,Mathlib/MeasureTheory/Function/LpSpace/Complete.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Integral/Bochner/VitaliCaratheodory.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Add.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Basic.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Countable.lean,Mathlib/MeasureTheory/Measure/AbsolutelyContinuous.lean,Mathlib/MeasureTheory/Measure/AddContent.lean,Mathlib/MeasureTheory/Measure/Content.lean,Mathlib/MeasureTheory/Measure/Count.lean,Mathlib/MeasureTheory/Measure/Hausdorff.lean,Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/MeasureTheory/Measure/MeasuredSets.lean,Mathlib/MeasureTheory/Measure/MutuallySingular.lean,Mathlib/MeasureTheory/Measure/PreVariation.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/MeasureTheory/Measure/RegularityCompacts.lean,Mathlib/MeasureTheory/Measure/Restrict.lean,Mathlib/MeasureTheory/Measure/Stieltjes.lean,Mathlib/MeasureTheory/Measure/Tight.lean,Mathlib/MeasureTheory/Measure/Typeclasses/SFinite.lean,Mathlib/MeasureTheory/Measure/WithDensity.lean,Mathlib/MeasureTheory/OuterMeasure/Caratheodory.lean,Mathlib/MeasureTheory/OuterMeasure/Induced.lean,Mathlib/MeasureTheory/OuterMeasure/OfAddContent.lean,Mathlib/MeasureTheory/OuterMeasure/OfFunction.lean,Mathlib/MeasureTheory/OuterMeasure/Operations.lean,Mathlib/MeasureTheory/VectorMeasure/Basic.lean,Mathlib/NumberTheory/Transcendental/Liouville/Measure.lean,Mathlib/Probability/Distributions/Uniform.lean,Mathlib/Probability/Kernel/Defs.lean,Mathlib/Probability/Kernel/WithDensity.lean,Mathlib/Probability/ProbabilityMassFunction/Basic.lean,Mathlib/Probability/ProbabilityMassFunction/Constructions.lean,Mathlib/Probability/ProbabilityMassFunction/Monad.lean,Mathlib/Probability/Process/LocalProperty.lean,Mathlib/Topology/Algebra/InfiniteSum/ENNReal.lean,Mathlib/Topology/Algebra/InfiniteSum/WithTop.lean,Mathlib/Topology/MetricSpace/PiNat.lean,Mathlib/Topology/Semicontinuity/Basic.lean 54 1 ['github-actions'] nobody
2-30387
2 days ago
2-49756
2 days ago
2-53295
2 days
37076 ertwro
author:ertwro
feat(Combinatorics/SimpleGraph/Hasse): Hasse diagram is triangle-free Add `SimpleGraph.hasse_cliqueFree_three`: the Hasse diagram of a preorder is triangle-free (`CliqueFree 3`). This is the graph-theoretic formulation of `not_covBy_of_lt_of_lt`: if `a ⋖ b` and `b ⋖ c`, then `¬ a ⋖ c`, so no three elements can be pairwise adjacent in the Hasse diagram. The proof extracts three vertices from a hypothetical 3-clique, case-splits on the covering directions (8 cases), and closes each by `not_covBy_of_lt_of_lt` (6 transitive cases) or `lt_asymm` (2 cyclic cases). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 11/0 Mathlib/Combinatorics/SimpleGraph/Hasse.lean 1 21 ['Rida-Hamadani', 'SnirBroshi', 'ertwro', 'github-actions', 'vlad902'] nobody
2-25294
2 days ago
2-25349
2 days ago
10-35120
10 days
38208 mbkybky
author:mbkybky
chore: rename two instances Rename [Module.Free.Module.free_shrink](https://leanprover-community.github.io/mathlib4_docs/Mathlib/LinearAlgebra/FreeModule/Basic.html#Module.Free.Module.free_shrink) to `Module.Free.shrink` and rename [Module.Finite.Module.finite_shrink](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Finiteness/Basic.html#Module.Finite.Module.finite_shrink) to `Module.Finite.shrink`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-ring-theory
label:t-algebra$
6/2 Mathlib/LinearAlgebra/FreeModule/Basic.lean,Mathlib/RingTheory/Finiteness/Basic.lean 2 3 ['github-actions', 'mbkybky', 'plp127'] nobody
2-21564
2 days ago
2-79339
2 days ago
2-80545
2 days
38231 NoneMore
author:NoneMore
feat(ModelTheory/Definablity): add syntax-to-definability bridge lemmas Add bridge lemmas from syntax to definability and refactor downstream proofs to use them. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 88/56 Mathlib/ModelTheory/Definability.lean,Mathlib/ModelTheory/ElementarySubstructures.lean 2 1 ['github-actions'] nobody
2-21409
2 days ago
2-21488
2 days ago
2-21479
2 days
38026 mrdouglasny
author:mrdouglasny
feat(Analysis/Calculus): define absolutely monotone functions ## Summary - Define `AbsolutelyMonotoneOn f s` for functions `f : ℝ → ℝ` that are smooth on `s` with all iterated derivatives within `s` nonneg - Prove closure under `add`, `smul`, `mul` - Show `exp`, `cosh`, constants, and powers are absolutely monotone on appropriate domains This is the first part of a split of #37879. Follow-up PRs will add: - Bernstein backward direction (nonneg coefficients → absolutely monotone) - Bernstein forward direction (absolutely monotone → analytic at 0) - Matrix applications (Schur product theorem for power series, entrywise exp) ## Test plan - [ ] CI passes (build + lint) - [ ] Verify `AbsolutelyMonotoneOn` structure and examples type-check 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.6 (1M context) t-analysis new-contributor LLM-generated 93/0 Mathlib.lean,Mathlib/Analysis/Calculus/AbsolutelyMonotone.lean,docs/references.bib 3 15 ['github-actions', 'j-loreaux', 'mrdouglasny', 'vihdzp', 'wwylele'] nobody
2-20723
2 days ago
2-20723
2 days ago
3-28211
3 days
38201 joelriou
author:joelriou
feat(Topology): more API for ZerothHomotopy This PR introduces a very basic API for `ZerothHomotopy`. As it was not very well typed, the generic constructor `⟦x⟧` for quotients is replaced by a specific constructor `ZerothHomotopy.mk`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 43/8 Mathlib/Topology/Connected/LocPathConnected.lean,Mathlib/Topology/Connected/PathConnected.lean 2 2 ['SnirBroshi', 'github-actions'] nobody
2-18354
2 days ago
3-8452
3 days ago
3-8443
3 days
38233 mbkybky
author:mbkybky
feat(Algebra/Module/Projective): add `ULift` and `Shrink` lemmas for `Module.Projective` Add `ULift` and `Shrink` lemmas for `Module.Projective`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
13/1 Mathlib/Algebra/Category/ModuleCat/Ulift.lean,Mathlib/Algebra/Module/Projective.lean 2 1 ['github-actions'] nobody
2-17095
2 days ago
2-17164
2 days ago
2-17155
2 days
36621 quantumsnow
author:quantumsnow
feat: add the category of topological pairs This is needed for the Eilenberg-Steenrod axioms for a homology theory. --- - [x] depends on: #37540 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 255/9 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean,Mathlib/Topology/Category/TopCat/Limits/Basic.lean,Mathlib/Topology/Category/TopPair.lean,Mathlib/Topology/Homotopy/TopCat/Basic.lean 5 86 ['chrisflav', 'dagurtomas', 'erdOne', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'quantumsnow', 'vlad902'] dagurtomas
assignee:dagurtomas
2-1852
2 days ago
2-55666
2 days ago
9-28175
9 days
38232 vihdzp
author:vihdzp
chore: golf `eVariationOn.union` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 8/34 Mathlib/Topology/EMetricSpace/BoundedVariation.lean 1 1 ['github-actions'] nobody
2-1052
2 days ago
2-785
2 days ago
2-18444
2 days
33714 idontgetoutmuch
author:idontgetoutmuch
feat(Mathlib/Geometry/Manifold): Riemannian metrics exist II Supersedes https://github.com/leanprover-community/mathlib4/pull/33519 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor 723/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Geometry/Manifold/ExistsRiemannianMetric.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean 4 200 ['Rida-Hamadani', 'github-actions', 'grunweg', 'idontgetoutmuch'] ocfnash
assignee:ocfnash
1-76352
1 day ago
1-76352
1 day ago
46-83796
46 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
1-75018
1 day ago
13-10896
13 days ago
27-63090
27 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 maintainer-merge 106/176 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,Mathlib/Topology/Order/SuccPred.lean 8 15 ['JovanGerb', 'github-actions', 'mathlib-dependent-issues', 'vihdzp'] j-loreaux
assignee:j-loreaux
1-73722
1 day ago
1-84662
1 day ago
6-15525
6 days
38245 RemyDegenne
author:RemyDegenne
feat: CountableSupClosed Define the property for a set of being closed by countable supremum (resp. infimum). The new file is adapted from the `SupClosed` file, which describes sets closed by binary supremum. Also use `to_dual` on `SupClosed`. `CountableInfClosed` will be used in measure theory, for developments related to compact systems used for Kolmogorov's extension theorem and Choquet's capacitability theorem. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order brownian 308/66 Mathlib.lean,Mathlib/Order/CountableSupClosed.lean,Mathlib/Order/SupClosed.lean 3 14 ['RemyDegenne', 'b-mehta', 'github-actions', 'vihdzp'] nobody
1-68801
1 day ago
1-83051
1 day ago
2-1366
2 days
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
1-65254
1 day ago
16-34634
16 days ago
41-24490
41 days
38191 artie2000
author:artie2000
refactor: deprecate `Mathlib.LinearAlgebra.FreeModule.StrongRankCondition` * Deprecate `Mathlib.LinearAlgebra.FreeModule.StrongRankCondition` * Minimise imports of files that used to import it This file contains a single declaration, which is an instance whose proof is `inferInstance`. Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Mathlib.2ELinearAlgebra.2EFreeModule.2EStrongRankCondition/with/586164258 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory awaiting-bench 46/104 Mathlib/Algebra/Algebra/Subalgebra/IsSimpleOrder.lean,Mathlib/Algebra/Algebra/Subalgebra/Rank.lean,Mathlib/Algebra/Lie/Sl2.lean,Mathlib/Algebra/Module/LinearMap/Polynomial.lean,Mathlib/FieldTheory/IntermediateField/Algebraic.lean,Mathlib/GroupTheory/IndexNSmul.lean,Mathlib/LinearAlgebra/Determinant.lean,Mathlib/LinearAlgebra/Dual/Lemmas.lean,Mathlib/LinearAlgebra/Eigenspace/Zero.lean,Mathlib/LinearAlgebra/ExteriorPower/Basis.lean,Mathlib/LinearAlgebra/FreeAlgebra.lean,Mathlib/LinearAlgebra/FreeModule/Finite/Matrix.lean,Mathlib/LinearAlgebra/FreeModule/Finite/Quotient.lean,Mathlib/LinearAlgebra/FreeModule/StrongRankCondition.lean,Mathlib/LinearAlgebra/InvariantBasisNumber.lean,Mathlib/LinearAlgebra/RootSystem/Finite/Nondegenerate.lean,Mathlib/LinearAlgebra/Span/TensorProduct.lean,Mathlib/LinearAlgebra/Trace.lean,Mathlib/RepresentationTheory/Basic.lean,Mathlib/RingTheory/FiniteType.lean,Mathlib/RingTheory/LocalProperties/Projective.lean,Mathlib/RingTheory/LocalRing/Module.lean,Mathlib/RingTheory/LocalRing/Quotient.lean,Mathlib/RingTheory/Localization/Free.lean,Mathlib/RingTheory/MvPolynomial.lean 25 11 ['acmepjz', 'artie2000', 'github-actions', 'leanprover-radar'] nobody
1-58922
1 day ago
3-34782
3 days ago
3-41400
3 days
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 246/4 Mathlib.lean,Mathlib/MeasureTheory/VectorMeasure/Integral.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean 3 66 ['EtienneC30', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'yoh-tanimoto'] EtienneC30
assignee:EtienneC30
1-56433
1 day ago
1-56385
1 day ago
5-52523
5 days
38240 vihdzp
author:vihdzp
chore(Order/Interval/Set/WithBotTop): use `to_dual` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order maintainer-merge 50/168 Mathlib/Order/Cover.lean,Mathlib/Order/Interval/Set/Defs.lean,Mathlib/Order/Interval/Set/OrdConnected.lean,Mathlib/Order/Interval/Set/WithBotTop.lean 4 3 ['JovanGerb', 'github-actions'] nobody
1-55857
1 day ago
2-6315
2 days ago
2-6306
2 days
37198 mckoen
author:mckoen
feat(AlgebraicTopology/SimplicialSet/Subcomplex): isomorphisms and lifting properties of pushout-products Defines various isomorphisms of pushout-products. Defines an isomorphism in the arrow category of `SSet` between the canonical inclusion `(S.unionProd T).toSSet ⟶ X ⊗ Y` and the pushout-product `S.ι □ T.ι`. Proves various equivalent lifting properties involving pushout-products - [x] depends on: #37182 - [x] depends on: #33935 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology t-category-theory 322/4 Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialSet/Monoidal.lean,Mathlib/AlgebraicTopology/SimplicialSet/PushoutProduct.lean,Mathlib/CategoryTheory/LiftingProperties/PushoutProduct.lean,Mathlib/CategoryTheory/Monoidal/Closed/Cartesian.lean,Mathlib/CategoryTheory/Monoidal/Limits/Shapes/Pullback.lean,Mathlib/CategoryTheory/Monoidal/PushoutProduct.lean,docs/references.bib 8 2 ['github-actions', 'mathlib-dependent-issues'] nobody
1-51112
1 day ago
1-51353
1 day ago
1-51391
1 day
38239 vihdzp
author:vihdzp
chore(Order/SuccPred/Limit): reorganize sections In an effort to keep the file better organized, we move theorems which use `SuccOrder`/`PredOrder` as an assumption to a new section. No theorems have been changed. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 95/110 Mathlib/Order/SuccPred/Limit.lean 1 1 ['github-actions'] nobody
1-43047
1 day ago
2-7805
2 days ago
2-7796
2 days
38235 vihdzp
author:vihdzp
refactor: `not_isSuccLimit_iff` → `not_isSuccLimit_iff_succ_eq` A lemma with such a simple name as `not_isSuccLimit_iff` shouldn't require a partial successor order! The new `not_isSuccLimit_iff` is a straightforward unfolding of the definitions and requires only a preorder. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 36/20 Mathlib/MeasureTheory/Measure/MeasureSpace.lean,Mathlib/Order/SuccPred/Limit.lean,Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/Topology/Order/SuccPred.lean 6 1 ['github-actions'] nobody
1-42723
1 day ago
2-6332
2 days ago
2-6359
2 days
38217 themathqueen
author:themathqueen
chore(Algebra): remove some broken dot notation porting notes --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra tech debt easy
label:t-algebra$
8/17 Mathlib/Algebra/Category/ModuleCat/Kernels.lean,Mathlib/Algebra/Module/Torsion/Basic.lean 2 1 ['artie2000', 'github-actions'] nobody
1-42630
1 day ago
2-51799
2 days ago
2-52461
2 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 4 ['artie2000', 'github-actions', 'vihdzp'] nobody
1-42070
1 day ago
8-37629
8 days ago
8-37808
8 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
1-41477
1 day ago
7-44682
7 days ago
14-4756
14 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 86/73 .github/workflows/add_label_from_diff.yaml,scripts/autolabel.lean 2 4 ['github-actions', 'mathlib-merge-conflicts'] nobody
1-36805
1 day ago
22-83805
22 days ago
55-38736
55 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'] nobody
1-36804
1 day ago
24-60756
24 days ago
24-61483
24 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'] nobody
1-36804
1 day ago
28-6832
28 days ago
28-6823
28 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'] nobody
1-36803
1 day ago
54-62658
54 days ago
57-10535
57 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'] mariainesdff
assignee:mariainesdff
1-36289
1 day ago
17-66223
17 days ago
17-68311
17 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 87/11 Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean 2 2 ['github-actions', 'mathlib-merge-conflicts'] mariainesdff
assignee:mariainesdff
1-36288
1 day ago
2-78363
2 days ago
18-7726
18 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'] mariainesdff
assignee:mariainesdff
1-36287
1 day ago
18-46921
18 days ago
18-46912
18 days
37801 eliasjudin
author:eliasjudin
refactor(Algebra/MvPolynomial): generalize pUnitAlgEquiv to Unique ## Summary Generalize `MvPolynomial.pUnitAlgEquiv` to `MvPolynomial.uniqueAlgEquiv` for any `[Unique σ]`: $$ \mathrm{MvPolynomial}\ \sigma\ R \simeq_R R[X]. $$ The equivalence is induced by $$ X_i \mapsto X, $$ and its inverse is induced by $$ X \mapsto X_{\mathrm{default}}. $$ For `d : σ →₀ ℕ` and `r : R`, the monomial lemmas identify $$ \mathrm{monomial}(d,r) \mapsto \mathrm{monomial}(d(\mathrm{default}),r), $$ with the corresponding inverse statement. The evaluation lemmas state that for `φ : R →+* S` and `a : σ → S`, evaluation after `uniqueAlgEquiv` is evaluation at the unique variable value `a default`: $$ \mathrm{eval}_2(\varphi, a(\mathrm{default}))\bigl(\mathrm{uniqueAlgEquiv}_{R,\sigma}(f)\bigr)=\mathrm{eval}_2(\varphi, a)(f), $$ together with the inverse and constant-variable special cases. Keep `pUnitAlgEquiv` as a deprecated compatibility abbreviation and migrate downstream uses to the new API. This PR adds proofs autoformalised by @Aristotle-Harmonic. ## Motivation The old API proves the canonical one-variable equivalence only for `PUnit`: $$ \mathrm{MvPolynomial}\ \mathrm{PUnit}\ R \simeq_R R[X]. $$ The natural hypothesis is `[Unique σ]`, giving the same equivalence for any one-element index type: $$ \mathrm{MvPolynomial}\ \sigma\ R \simeq_R R[X]. $$ This avoids inserting an auxiliary equivalence `σ ≃ PUnit` in one-variable arguments, and removes the need for separate APIs for other singleton index types such as `Fin 1`. Co-authored-by: Aristotle (Harmonic) t-algebraic-geometry new-contributor 107/48 Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/AlgebraicGeometry/AffineSpace.lean,Mathlib/RingTheory/AlgebraicIndependent/TranscendenceBasis.lean,Mathlib/RingTheory/AlgebraicIndependent/Transcendental.lean,Mathlib/RingTheory/FinitePresentation.lean,Mathlib/RingTheory/FreeCommRing.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/Evaluation.lean,Mathlib/RingTheory/Smooth/Basic.lean 9 16 ['eliasjudin', 'eric-wieser', 'github-actions', 'wwylele'] riccardobrasca
assignee:riccardobrasca
1-36286
1 day ago
3-3358
3 days ago
5-58698
5 days
37527 bryanboehnke
author:bryanboehnke
feat(LocalRing/Etale): Finite étale extensions of local rings are monogenic Formalization of Lemma 3.2 from https://arxiv.org/abs/2503.07846: Given a finite extension of local rings R -> S, if the extension is étale, then there exists β ∈ S such that R[β] = S. Furthermore, if f(z) ∈ R[z] is the minimal polynomial of β, then f′(β) is a unit in S. This file also includes some relevant intermediate results used in the formalization of the proof of Lemma 3.1 from the same paper. Co-authored-by: George Peykanu Co-authored-by: Bianca Viray Co-authored-by: Grant Yang --- - [ ] depends on: #36421 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 148/0 Mathlib.lean,Mathlib/RingTheory/LocalRing/Etale.lean 2 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
1-36099
1 day ago
1-36123
1 day ago
1-57091
1 day
38222 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph/Girth): add lemmas about isomorphism and girth --- I added the lemma `Iso.egirth_le` to probe `Iso.egirth_eq` with out repetition. Y tried probing it directly, but I found universe levels issues, similar to this Zulip topic: [lean4>WLOG/suffices and universe polymorphism](https://leanprover.zulipchat.com/#narrow/channel/270676-lean4/topic/WLOG.2Fsuffices.20and.20universe.20polymorphism/with/435455723) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 17/1 Mathlib/Combinatorics/SimpleGraph/Girth.lean 1 2 ['SnirBroshi', 'github-actions'] nobody
1-35755
1 day ago
2-45373
2 days ago
2-45364
2 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
1-26694
1 day ago
18-6208
18 days ago
31-76427
31 days
37071 ericluap
author:ericluap
feat: Dedekind completion of rationals is isomorphic to EReal t-order new-contributor 143/4 Mathlib.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/EReal/DedekindCut.lean,Mathlib/Order/Completion.lean,Mathlib/Order/Concept.lean 5 49 ['ericluap', 'github-actions', 'vihdzp', 'wwylele'] vihdzp
assignee:vihdzp
1-24233
1 day ago
1-29552
1 day ago
7-17855
7 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
1-20734
1 day ago
29-6716
29 days ago
29-12288
29 days
38237 vihdzp
author:vihdzp
feat: generalize `IsSuccLimit.bot_lt` to preorders --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order easy maintainer-merge 15/7 Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/SuccPred/Limit.lean 2 4 ['YaelDillies', 'artie2000', 'github-actions', 'vihdzp'] nobody
1-13516
1 day ago
2-9861
2 days ago
2-9852
2 days
38276 b-mehta
author:b-mehta
feat(Data/Set/Function): add prod lemmas for InjOn, SurjOn, MapsTo, LeftInvOn We have these for prodMap, these are arguably generalisations for prodMk. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 42/0 Mathlib/Data/Set/Function.lean 1 1 ['github-actions'] nobody
1-11655
1 day ago
1-11387
1 day ago
1-12286
1 day
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 330/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/ErdosStoneSimonovits.lean 2 11 ['YaelDillies', 'b-mehta', 'github-actions', 'mathlib-dependent-issues', 'mathlib4-merge-conflict-bot', 'mitchell-horner'] awainverse and b-mehta
assignee:b-mehta assignee:awainverse
1-11261
1 day ago
50-16279
50 days ago
50-16316
50 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 maintainer-merge 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 4 ['dupuisf', 'github-actions', 'joneugster'] joneugster
assignee:joneugster
1-9636
1 day ago
1-9698
1 day ago
42-31730
42 days
38282 JovanGerb
author:JovanGerb
chore(Algebra/Lie/Submodule): remove duplicate instance This PR removes the explicit `CoeSort` instance on `LieSubmodule`, because it is identical to the one inherited from its `SetLike` instance. This instance was added in #16509, and I'm not quite sure why it was needed then and not anymore. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
0/3 Mathlib/Algebra/Lie/Submodule.lean 1 1 ['github-actions'] nobody
1-6145
1 day ago
1-6430
1 day ago
1-6421
1 day
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 7 ['adomani', 'github-actions', 'joneugster', 'marcelolynch'] joneugster
assignee:joneugster
1-5691
1 day ago
7-31471
7 days ago
7-38977
7 days
38148 vihdzp
author:vihdzp
chore: make argument in `zero_le`/`one_le` implicit This matches `bot_le` and is quite more convenient in practice. Among the hundreds of times we use this theorem, we require the explicit argument only 8 (or 13, counting tactics). --- A large part of the diff consists of trivial changes `(zero_le _)` → `zero_le`. A handful of files were also golfed somewhat. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-order
label:t-algebra$
444/507 Archive/Sensitivity.lean,Archive/Wiedijk100Theorems/FriendshipGraphs.lean,Mathlib/Algebra/CharP/Lemmas.lean,Mathlib/Algebra/CubicDiscriminant.lean,Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/Algebra/Lie/Solvable.lean,Mathlib/Algebra/Lie/Weights/Chain.lean,Mathlib/Algebra/MvPolynomial/Degrees.lean,Mathlib/Algebra/Order/BigOperators/Group/Finset.lean,Mathlib/Algebra/Order/BigOperators/Group/List.lean,Mathlib/Algebra/Order/Field/Canonical.lean,Mathlib/Algebra/Order/Floor/Extended.lean,Mathlib/Algebra/Order/Group/Indicator.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/Monoid/Canonical/Defs.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Sub/Basic.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Reverse.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/Analysis/Analytic/Basic.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Asymptotics/SpecificAsymptotics.lean,Mathlib/Analysis/BoxIntegral/Box/SubboxInduction.lean,Mathlib/Analysis/BoxIntegral/Integrability.lean,Mathlib/Analysis/CStarAlgebra/ApproximateUnit.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Isometric.lean,Mathlib/Analysis/Calculus/BumpFunction/FiniteDimension.lean,Mathlib/Analysis/Calculus/ContDiff/Defs.lean,Mathlib/Analysis/Calculus/ContDiff/FTaylorSeries.lean,Mathlib/Analysis/Calculus/FDeriv/Measurable.lean,Mathlib/Analysis/Calculus/LocalExtr/Polynomial.lean,Mathlib/Analysis/Calculus/SmoothSeries.lean,Mathlib/Analysis/Convex/EGauge.lean,Mathlib/Analysis/Convex/NNReal.lean,Mathlib/Analysis/Convex/Segment.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/TemperateGrowth.lean,Mathlib/Analysis/Fourier/FourierTransformDeriv.lean,Mathlib/Analysis/FunctionalSpaces/SobolevInequality.lean,Mathlib/Analysis/Matrix/Normed.lean,Mathlib/Analysis/MeanInequalities.lean,Mathlib/Analysis/Normed/Algebra/GelfandFormula.lean,Mathlib/Analysis/Normed/Group/Indicator.lean,Mathlib/Analysis/Normed/Group/Int.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Lp/lpSpace.lean,Mathlib/Analysis/Normed/Module/FiniteDimension.lean,Mathlib/Analysis/Normed/Operator/NNNorm.lean,Mathlib/Analysis/Normed/Ring/Lemmas.lean,Mathlib/Analysis/Normed/Unbundled/SmoothingSeminorm.lean,Mathlib/Analysis/Normed/Unbundled/SpectralNorm.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Analysis/Oscillation.lean,Mathlib/Analysis/SpecialFunctions/ArithmeticGeometricMean.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Order.lean,Mathlib/Analysis/SpecialFunctions/Exp.lean,Mathlib/Analysis/SpecialFunctions/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Pow/Continuity.lean,Mathlib/Analysis/SpecialFunctions/Pow/NNReal.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Analysis/SpecificLimits/FloorPow.lean,Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/Combinatorics/Additive/PluenneckeRuzsa.lean,Mathlib/Combinatorics/Configuration.lean,Mathlib/Combinatorics/Enumerative/Composition.lean,Mathlib/Combinatorics/Enumerative/DyckWord.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/Combinatorics/SetFamily/FourFunctions.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Chunk.lean,Mathlib/Data/Bool/Count.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/DFinsupp/WellFounded.lean,Mathlib/Data/ENNReal/Basic.lean,Mathlib/Data/ENNReal/Inv.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/ENat/Pow.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/Finite/Card.lean,Mathlib/Data/Finsupp/MonomialOrder/DegLex.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Finsupp/Weight.lean,Mathlib/Data/Finsupp/WellFounded.lean,Mathlib/Data/Int/WithZero.lean,Mathlib/Data/NNRat/Floor.lean,Mathlib/Data/NNReal/Defs.lean,Mathlib/Data/Nat/Totient.lean,Mathlib/Data/Set/Card.lean,Mathlib/Data/W/Cardinal.lean,Mathlib/Dynamics/Flow.lean,Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/Dynamics/TopologicalEntropy/CoverEntropy.lean,Mathlib/Dynamics/TopologicalEntropy/Semiconj.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/TriangleInequality.lean,Mathlib/GroupTheory/GroupAction/Primitive.lean,Mathlib/GroupTheory/Index.lean,Mathlib/InformationTheory/Hamming.lean,Mathlib/LinearAlgebra/Dimension/Free.lean,Mathlib/LinearAlgebra/Dimension/Localization.lean 201 37 ['JovanGerb', 'github-actions', 'mathlib-merge-conflicts', 'vihdzp'] nobody
1-5250
1 day ago
2-17524
2 days ago
2-56137
2 days
36474 SmwYin
author:SmwYin
feat(NumberTheory/ModularForms/QExpansion): update qExpansion API for more general objects This PR generalises several lemmas from `ModularFormClass` and `ModularForm` to functions on the upper half plane that are periodic, holomorphic, and bounded at infinity. This allows us to study the _q_-expansion of functions such as `q * j`, where `j` denotes the _j_-function. The specialised `ModularFormClass` and `ModularForm` lemmas are retained as wrappers. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 349/235 Mathlib/NumberTheory/ModularForms/Bounds.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/QExpansion.lean,Mathlib/NumberTheory/ModularForms/LevelOne.lean,Mathlib/NumberTheory/ModularForms/Petersson.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean 5 59 ['CBirkbeck', 'MichaelStollBayreuth', 'SmwYin', 'github-actions', 'loefflerd', 'mathlib-bors', 'mathlib-merge-conflicts', 'tb65536'] CBirkbeck and loefflerd
assignee:loefflerd assignee:CBirkbeck
1-3691
1 day ago
1-63550
1 day ago
15-66086
15 days
38287 b-mehta
author:b-mehta
feat(Data/Set/Function): make mapsTo_univ a simp lemma --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-data 1/1 Mathlib/Data/Set/Function.lean 1 1 ['github-actions'] nobody
1-3172
1 day ago
1-3259
1 day ago
1-3250
1 day
38284 jcommelin
author:jcommelin
chore: remove shortcut instance that is no longer needed --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 0/5 Mathlib/Analysis/Fourier/AddCircleMulti.lean 1 3 ['github-actions', 'jcommelin', 'leanprover-radar'] nobody
1-2781
1 day ago
1-3968
1 day ago
1-3959
1 day
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. --- - [x] depends on: #31697 - [x] 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$
223/0 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/ChangeOfRingsExact.lean,Mathlib/Algebra/Category/ModuleCat/Ext/Ulift.lean 3 19 ['Thmoas-Guan', 'dagurtomas', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] dagurtomas
assignee:dagurtomas
1-1683
1 day ago
1-1744
1 day ago
4-44244
4 days
38281 joelriou
author:joelriou
chore(CategoryTheory): fix diamond for the preadditive structure on the opposite category See [#mathlib4 > diamond for Preadditive/HasZeroMorphisms and op](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/diamond.20for.20Preadditive.2FHasZeroMorphisms.20and.20op/with/587714738) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 9/3 Mathlib/Algebra/Homology/Opposite.lean,Mathlib/CategoryTheory/Preadditive/Opposite.lean 2 7 ['github-actions', 'joelriou', 'kbuzzard', 'leanprover-radar', 'riccardobrasca'] nobody
1-1467
1 day ago
1-6660
1 day ago
1-6888
1 day
38181 chrisflav
author:chrisflav
feat(CategoryTheory/Sites): `Over.post F` preserves one-hypercovers if `F` does --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 60/5 Mathlib/CategoryTheory/Sites/Continuous.lean,Mathlib/CategoryTheory/Sites/Hypercover/Zero.lean,Mathlib/CategoryTheory/Sites/Over.lean,Mathlib/CategoryTheory/Sites/Sieves.lean 4 2 ['github-actions', 'joelriou'] nobody
1-1082
1 day ago
1-1107
1 day ago
3-54147
3 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. --- - [x] 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
1-873
1 day ago
10-75004
10 days ago
10-75735
10 days
38275 TTony2019
author:TTony2019
feat: Add `AffineEquiv.image_intrinsicInterior` ## Summary This PR generalizes the existing lemma `AffineIsometry.image_intrinsicInterior` to the setting of affine equivalences, yielding the corresponding result `AffineEquiv.image_intrinsicInterior`. Since affine equivalences are more general than affine isometries, the proof requires an additional finite-dimensionality assumption. The key extra input is that in finite-dimensional spaces, an affine equivalence induces a homeomorphism via `AffineEquiv.toHomeomorphOfFiniteDimensional`, so the assumptions are adjusted accordingly. Apart from these extra assumptions, the argument is essentially the same as for `AffineIsometry.image_intrinsicInterior`. ## Collaboration This PR was developed together with @imathwy. t-analysis new-contributor 28/0 Mathlib/Analysis/Convex/Intrinsic.lean 1 4 ['github-actions', 'themathqueen'] nobody
1-10
1 day ago
1-15613
1 day ago
1-15604
1 day
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 59/0 Mathlib/Data/FinEnum.lean 1 12 ['dtumad', 'github-actions', 'joneugster', 'linesthatinterlace'] joneugster
assignee:joneugster
0-82757
22 hours ago
20-70894
20 days ago
25-20718
25 days
38256 sgouezel
author:sgouezel
chore: fix implicit-reducible diamond in languages --- The diff is misleading, I'm mostly moving `withConstantsStructure` up to be able to use it in `withConstantsSelfStructure` (which is a particular case of it) through `inferInstance`, instead of having two separate definitions hidden behind two different opaque functions. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 9/10 Mathlib/ModelTheory/LanguageMap.lean 1 1 ['github-actions'] nobody
0-81368
22 hours ago
1-70563
1 day ago
1-70554
1 day
38205 jcommelin
author:jcommelin
chore: reduce technical debt in FreimanHom This PR reduces technical debt related to the `CommRing` instance on `Fin (n + 1)`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics large-import 66/27 Mathlib/Combinatorics/Additive/FreimanHom.lean 1 1 ['github-actions'] nobody
0-80547
22 hours ago
0-80746
22 hours ago
0-81244
22 hours
38234 vihdzp
author:vihdzp
chore: make `IsSuccLimit` a structure This lets us name the fields. Note that the `mk_iff` lemma overwrites a recently deprecated theorem. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 35/28 Mathlib/Order/SuccPred/InitialSeg.lean,Mathlib/Order/SuccPred/Limit.lean 2 5 ['github-actions', 'plp127'] nobody
0-80420
22 hours ago
1-42653
1 day ago
1-45038
1 day
38286 b-mehta
author:b-mehta
feat(Logic/Equiv/Defs): add coe_ofBijective simp lemma We have the applied version of this, but that doesn't fire on the coerced equiv --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-logic 2/0 Mathlib/Logic/Equiv/Defs.lean 1 4 ['b-mehta', 'eric-wieser', 'github-actions', 'plp127'] nobody
0-76095
21 hours ago
1-3479
1 day ago
1-3470
1 day
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) . Just to be clear, all comments below are human-written by me with 0 AI assistance. 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: the idea is that `x ^ (z : Int)` is preferred in the algorithm and `x⁻¹` is eliminated. 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. So we need to find another way of normalising terms of the form `-x`. 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 which normalise `(n • b) + -b` to `(n - 1) • b`. etc. The idea is to ensure that any consecutive chains of `b`'s and `-b`'s and `z • b`'s will now all get amalgamated into something of the form `z • b`, 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 5 ['SnirBroshi', 'github-actions', 'kbuzzard', 'mathlib-merge-conflicts'] nobody
0-71079
19 hours ago
0-83971
23 hours ago
25-2754
25 days
38297 sgouezel
author:sgouezel
chore: fix double conflicting instances of `OmegaCompletePartialOrder` on `CompleteLattice` Currently, we have a direct instance `CompleteLattice -> OmegaCompletePartialOrder` (in `OmegaCompletePartialOrder.lean`), and a path `CompleteLattice -> ChainCompletePartialOrder -> OmegaCompletePartialOrder` (in `BourbakiWitt.lean`). They are defeq, but not implicit-reducibly. To solve the diamond, we remove the first instance, and move everything that depends on it from the first file to the second file. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 60/65 Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/Order/BourbakiWitt.lean,Mathlib/Order/Category/OmegaCompletePartialOrder.lean,Mathlib/Order/FixedPoints.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,Mathlib/Topology/OmegaCompletePartialOrder.lean 6 1 ['github-actions'] nobody
0-71028
19 hours ago
0-71528
19 hours ago
0-71908
19 hours
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-68179
18 hours ago
10-57158
10 days ago
10-57879
10 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-67446
18 hours ago
7-54745
7 days ago
7-55499
7 days
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 14/4 Mathlib/Tactic/Order.lean 1 3 ['JovanGerb', 'github-actions', 'joneugster'] JovanGerb
assignee:JovanGerb
0-65772
18 hours ago
0-65828
18 hours ago
4-58013
4 days
37850 Vierkantor
author:Vierkantor
feat(Logic): declare optional simprocs for commuting equality and iff This PR introduces two simprocs `eqComm` and `iffComm` that can use `@[simp]` lemmas on symmetrical forms of an expression: if we have a simp lemma saying `f a = b ↔ a = g b` and the goal contains `b = f a`, then we would end up with `g b = a`. I developed these in #36534. Enabling them globally proved to be quite slow (+0,44% overall build time, which corresponds to +5% `simp`ing time), so this PR only declares them (and enables them locally, using e.g. `simp [eqComm]`, when we see that it pays off in the proof). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-meta 145/59 Archive/Imo/Imo2024Q5.lean,Mathlib/Algebra/Exact.lean,Mathlib/Algebra/Group/Pi/Lemmas.lean,Mathlib/Algebra/GroupWithZero/Defs.lean,Mathlib/Algebra/MvPolynomial/Nilpotent.lean,Mathlib/Algebra/Order/Antidiag/Finsupp.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Pi.lean,Mathlib/Analysis/Complex/Arg.lean,Mathlib/Analysis/Normed/Module/Multilinear/Basic.lean,Mathlib/Analysis/Polynomial/MahlerMeasure.lean,Mathlib/Analysis/SpecialFunctions/Complex/Arg.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/FourierTransform.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/CategoryTheory/Preadditive/Biproducts.lean,Mathlib/Data/ENNReal/Operations.lean,Mathlib/Data/EReal/Operations.lean,Mathlib/Data/Fin/Tuple/Sort.lean,Mathlib/Data/Matrix/Diagonal.lean,Mathlib/Data/Set/Prod.lean,Mathlib/FieldTheory/Finite/Basic.lean,Mathlib/FieldTheory/Finite/Polynomial.lean,Mathlib/FieldTheory/SeparablyGenerated.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/Lean/Meta/Simp.lean,Mathlib/LinearAlgebra/Matrix/Permutation.lean,Mathlib/LinearAlgebra/Matrix/Stochastic.lean,Mathlib/Logic/Basic.lean,Mathlib/Logic/Function/Basic.lean,Mathlib/NumberTheory/LegendreSymbol/GaussEisensteinLemmas.lean,Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/SetTheory/Cardinal/Aleph.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Ordinal/Notation.lean,Mathlib/Tactic/NormNum/Irrational.lean 36 2 ['Vierkantor', 'github-actions'] nobody
0-65551
18 hours ago
0-65610
18 hours ago
0-72165
20 hours
37868 Jun2M
author:Jun2M
feat(Combinatorics/Graph): map on `Graph` This PR introduces vertex map on graphs, `map`. This creates a new file `Maps` which will be home to `map` and morphisms between `Graph`s. 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 108/0 Mathlib.lean,Mathlib/Combinatorics/Graph/Maps.lean 2 8 ['Jun2M', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib-merge-conflicts'] nobody
0-63192
17 hours ago
0-63192
17 hours ago
10-77791
10 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 V D G`: A typeclass parameterized by a vertex type `V`, dart type `D` and a graph `G` (with `V` & `D` as an `outParam`). * `GraphLike.verts : Set V`: The set of vertices of the graph. * `GraphLike.darts : Set D`: The set of darts of the graph. * `GraphLike.Adj : V → V → Prop`: The adjacency relation, defined by default as `∃ d ∈ darts, fst d = u ∧ snd d = v`. * `Graph.HasDart G γ`: Dart structure on top of `Graph`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 341/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/GraphLike.lean,Mathlib/Combinatorics/Graph/GraphLike.lean,Mathlib/Combinatorics/GraphLike/Basic.lean,Mathlib/Combinatorics/SimpleGraph/GraphLike.lean 5 46 ['IvanRenison', 'Jun2M', 'SnirBroshi', 'github-actions', 'lauramonk', 'mathlib-merge-conflicts'] nobody
0-62983
17 hours ago
0-63009
17 hours ago
35-10534
35 days
38264 peabrainiac
author:peabrainiac
feat(CategoryTheory): add `MorphismProperty.paths` For any `W : MorphismProperty C`, we define `W.paths : MorphismProperty (Paths C)` as the morphism property containing those paths that consist entirely of morphisms in `W`. --- I'm currently preparing a PR defining replete subcategories and showing that the replete subcategories of any fixed category form a complete lattice; this API was written because it is helpful to characterise the subcategory generated by a class of morphisms `W` as (up to some issues regarding identities) consisting of those morphisms `f` which are the concatenation of a finitely many morphisms in `W`, i.e. for which there exists a path `p` with `composePath p = f` and `W.paths p`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 92/3 Mathlib/CategoryTheory/PathCategory/Basic.lean 1 3 ['github-actions', 'joelriou', 'peabrainiac'] nobody
0-62260
17 hours ago
0-62264
17 hours ago
1-14108
1 day
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 maintainer-merge 56/48 Mathlib/Data/Int/Basic.lean,Mathlib/Data/Int/Init.lean,Mathlib/GroupTheory/CoprodI.lean 3 8 ['SnirBroshi', 'github-actions', 'joneugster', 'mathlib-merge-conflicts', 'plp127'] joneugster
assignee:joneugster
0-61940
17 hours ago
20-25566
20 days ago
21-33259
21 days
38301 SnirBroshi
author:SnirBroshi
feat(Algebra/Group/Commutator): tag `addCommutatorElement` as a scoped instance #34784 additivized commutators and made the multiplicative commutator instance available under `open scoped commutatorElement`. This makes the additive instance available under `open scoped addCommutatorElement`. --- ~~Should we instead make it scoped under the `addCommutatorElement` namespace? The existing usages of additive commutators come from decls marked with `open scoped commutatorElement in @[to_additive]`, and `to_additive` seemingly doesn't mind that the additivized version is not an instance. So I think they don't have to live in the same namespace.~~ [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra maintainer-merge
label:t-algebra$
6/0 Mathlib/Algebra/Group/Commutator.lean 1 6 ['SnirBroshi', 'github-actions', 'tb65536'] nobody
0-61533
17 hours ago
0-63988
17 hours ago
0-64393
17 hours
38309 ntapiam
author:ntapiam
feat(Algebra/NonAssoc): dendriform algebras Define dendriform semirings and algebras --- This PR introduces dendriform structures such as dendriform semirings and algebras, and proves basic facts linking them to their pre-Lie counterparts. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
270/0 Mathlib.lean,Mathlib/Algebra/NonAssoc/Dendriform/Defs.lean,docs/references.bib 3 3 ['github-actions'] nobody
0-60627
16 hours ago
0-61965
17 hours ago
0-62054
17 hours
38114 javgomzar
author:javgomzar
feat(FinitelyPresentedGroup): add finite groups instance Add IsFinitelyPresented instance for finite groups. Co-authored-by: Hang Lu Su , Thomas Browning --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor large-import 31/3 Mathlib/GroupTheory/FinitelyPresentedGroup.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean 2 31 ['github-actions', 'javgomzar', 'kbuzzard', 'mathlib-merge-conflicts', 'plp127', 'tb65536', 'vihdzp'] nobody
0-59286
16 hours ago
0-59288
16 hours ago
2-49186
2 days
38260 sgouezel
author:sgouezel
chore: fix implicit-reducible diamond in Lie subalgebras The following example fails on master, is fine on the branch: ``` example (I : LieIdeal R L) : ((LieIdeal.lieRing R L I).toBracket : Bracket ↥I ↥I) = (LieIdeal.lieRingModule (↥I) I).toBracket := by with_reducible_and_instances rfl ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
6/0 Mathlib/Algebra/Lie/Ideal.lean 1 14 ['JovanGerb', 'github-actions', 'sgouezel'] nobody
0-58277
16 hours ago
1-60883
1 day ago
1-60874
1 day
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 20 ['SnirBroshi', 'adomasbaliuka', 'github-actions'] urkud
assignee:urkud
0-57124
15 hours ago
11-85515
11 days ago
13-85564
13 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 large-import 48/28 Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/RingTheory/Valuation/Basic.lean 2 4 ['chrisflav', 'github-actions', 'xgenereux'] chrisflav
assignee:chrisflav
0-55826
15 hours ago
0-55946
15 hours ago
19-51286
19 days
38310 ZRTMRH
author:ZRTMRH
feat(Combinatorics/Quiver/Schreier): word evaluation and reachability Adds word evaluation and reachability results to the Schreier graph API. * `SchreierGraph.evalWord` : evaluates a word `List (S × Bool)` as an element of the ambient group, where `(s, true)` contributes `ι s` and `(s, false)` contributes `(ι s)⁻¹`. * `SchreierGraph.evalWord_eq_lift` : agreement with `FreeGroup.lift`. * `SchreierGraph.evalWord_mem_closure` : every word evaluates into the subgroup generated by `ι`. * `SchreierGraph.pathFromWord` : a Bool-tagged word yields a path in `Symmetrify (SchreierGraph V ι)` from `x` to `evalWord ι w • x`. * `SchreierGraph.reachable_iff` : two vertices are connected by a path in the symmetrification iff some element of the subgroup closure carries one to the other. Follow-up to #36320. This PR was written with AI assistance (Claude). The code has been reviewed by the author. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics large-import 157/0 Mathlib/Combinatorics/Quiver/Schreier.lean 1 2 ['github-actions'] nobody
0-55594
15 hours ago
0-55673
15 hours ago
0-55664
15 hours
38251 WenrongZou
author:WenrongZou
feat(LocalField): valuation of nonachimedean local field is rank one discrete This PR add an instance that the valuation of nonarchimedean local field is rank one discrete. With this, we can pick a uniformizer of `𝒪[K]` using the API [`Valuation.Uniformizer`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Valuation/Discrete/Basic.html#Valuation.Uniformizer). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory 6/0 Mathlib/NumberTheory/LocalField/Basic.lean 1 4 ['MichaelStollBayreuth', 'WenrongZou', 'github-actions', 'leanprover-radar'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-53148
14 hours ago
1-76300
1 day ago
1-76291
1 day
38314 pedroscortes
author:pedroscortes
feat(CategoryTheory/Monoidal): tensorμ_braid_swap and tensor-product IsCommComonObj --- ## Summary Two symmetric-monoidal coherence results in a new file `Mathlib/CategoryTheory/Monoidal/Symmetric/TensorBraidSwap.lean`: 1. `MonoidalCategory.tensorμ_braid_swap` — canonical rearrangement `tensorμ A A Y Y` intertwines the braiding on `A ⊗ Y` with the pair of braidings on `A` and `Y`. Sibling of `CategoryTheory.MonObj.mul_braiding` (`Mathlib.CategoryTheory.Monoidal.Mon_`, line 759). 2. Tensor-product instance for `IsCommComonObj`: if `A, B` carry commutative comonoid structures in a symmetric monoidal category, so does `A ⊗ B`. Reduces `comul_comm` for `Δ[A ⊗ B]` via `tensorμ_braid_swap` to the pointwise hypotheses. Fills a gap in `Mathlib/CategoryTheory/Monoidal/CommComon_.lean`, which currently provides only the unit instance (`instCommComonObjUnit`) and the auto-instance for cartesian categories (`instIsCommComonObjOfCartesian`). ## Placement rationale Placed in a new `Symmetric/` subdirectory rather than appended to `Braided/Basic.lean` because the latter's top-level `variable [BraidedCategory C]` creates an instance diamond against any locally-added `[SymmetricCategory C]`. On v4.30.0-rc2 this diamond blocks `rw [SymmetricCategory.symmetry]` motive extraction through `A ◁ _ ▷ Y` — the pattern is literally present in the target, but the two distinct `BraidedCategory C` instances (outer variable vs `SymmetricCategory.toBraidedCategory`) cause the rewrite to fail. A new file with only `[SymmetricCategory C]` as its variable avoids this. ## Downstream consumer The `IsCommComonObj` tensor-product instance is load-bearing for the external library [markovcat](https://github.com/pedroscortes/markovcat) (formalising Fritz–Klingler Markov categories), specifically for symmetry of the conditional-independence predicate on compound objects. ## Checks - `lake build Mathlib.CategoryTheory.Monoidal.Symmetric.TensorBraidSwap` — green. - `lake exe lint-style` — clean (exit 0). - Rebased onto current `master`; single commit; 72 insertions across two files (new file + one-line `Mathlib.lean` registration). Opening as draft to let CI run before requesting review. t-category-theory new-contributor 72/0 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Symmetric/TensorBraidSwap.lean 2 2 ['github-actions'] nobody
0-51791
14 hours ago
0-51791
14 hours ago
0-51782
14 hours
34815 Deep0Thinking
author:Deep0Thinking
feat(Analysis/SpecialFunctions/ImproperIntegrals): Frullani integral - [x] depends on: #34966 --- Add a proof of **Frullani integral**. Main theorems: - `Frullani.integral_Ioi` - `IntegrableOn.tendsto_integral_Ioi` - `exists_integral_div_eq_mul_log` Supporting lemmas: - `Frullani.comp_mul_left_div` - `Frullani.intervalIntegrable_div` - `Frullani.exists_integral_div_eq_mul_log` - `Ioi_diff_Ioc` - `ContinuousOn.comp_mul_left_div`, `ContinuousOn.comp_mul_right_div` - `ContinuousOn.comp_mul_left`, `ContinuousOn.comp_mul_right` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import t-analysis 265/4 Mathlib/Analysis/SpecialFunctions/ImproperIntegrals.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/MeanValue.lean,Mathlib/Topology/Algebra/GroupWithZero.lean,Mathlib/Topology/Algebra/Monoid.lean 4 10 ['CoolRmal', 'Deep0Thinking', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'sgouezel'] urkud
assignee:urkud
0-49738
13 hours ago
0-53152
14 hours ago
7-8114
7 days
38313 thorimur
author:thorimur
feat: warn on deprecated declarations in `scripts/check-yaml` This PR updates `scripts/check-yaml.lean` to warn on deprecated declarations. It also cleans up some code: `initSearchPath` does exactly what the removed code plus `CoreM.withImportModules` does (and as far as I can see we no longer need `CoreM`). Also modulizes and removes the dependence on Mathlib. --- - [x] depends on: #38312 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI 32/26 scripts/check-yaml.lean 1 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-48487
13 hours ago
0-48489
13 hours ago
0-50196
13 hours
36787 hommmmm
author:hommmmm
feat(RingTheory/LocalRing): Krull dimension results for maximal ideal of local ring Adds 1 declaration: * `IsLocalRing.maximalIdeal_sq_lt`: In a Noetherian local ring of positive Krull dimension, the square of the maximal ideal is a proper subset of the maximal ideal. 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 12/0 Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean 1 18 ['NoahW314', 'chrisflav', 'github-actions', 'hommmmm', 'tb65536', 'wwylele'] chrisflav
assignee:chrisflav
0-48209
13 hours ago
0-48238
13 hours ago
34-1841
34 days
38266 staroperator
author:staroperator
feat(Order/CompleteLatticeIntervals): `ConditionallyCompleteLinearOrderBot` for `Set.Iio` `Set.Iio a` (when it's nonempty) inherits the `ConditionallyCompleteLinearOrderBot` structure from the base type. This is commonly used in set theory, where we consider the ordinals within `a`, and convert `Iio a` from/to `Ordinal`. There should also be a `ConditionallyCompleteLinearOrder` instance, but adding this seems difficult for now because the junk value may not be the same as bottom (which has been mentioned as "refactor that will allow different default values for `sSup` and `sInf`" in the module doc). Since my motivation is for the ordinals purely, this PR only adds a single `ConditionallyCompleteLinearOrderBot` instance. --- I'm not very familiar with the API design here, so any suggestion would be helpful. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 76/0 Mathlib/Order/Bounds/Basic.lean,Mathlib/Order/CompleteLatticeIntervals.lean,Mathlib/Order/LatticeIntervals.lean 3 5 ['github-actions', 'staroperator', 'vihdzp'] nobody
0-48060
13 hours ago
1-37740
1 day ago
1-37731
1 day
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 198/38 Mathlib.lean,Mathlib/NumberTheory/ModularForms/Basic.lean,Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean,Mathlib/NumberTheory/ModularForms/CuspFormSubmodule.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/QExpansion.lean,Mathlib/NumberTheory/ModularForms/LevelOne.lean,Mathlib/NumberTheory/ModularForms/NormTrace.lean 7 34 ['CBirkbeck', 'MichaelStollBayreuth', 'github-actions', 'loefflerd', 'tb65536'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-46797
12 hours ago
0-46853
13 hours ago
6-67666
6 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 45 ['Vilin97', 'YanYablonovskiy', 'adomani', 'botbaki-review', 'copilot-pull-request-reviewer', 'dagurtomas', 'eric-wieser', 'github-actions', 'grunweg', 'j-loreaux', 'wwylele'] j-loreaux
assignee:j-loreaux
0-45577
12 hours ago
5-49559
5 days ago
31-31199
31 days
38317 WenrongZou
author:WenrongZou
feat(Date/Choose): add some lemmas about choose of prime pow In this PR, I add some lemma about choose of prime pow. 1) For primes `p` and positive integer `n`, assume that for all `i ∈ Icc 1 (n - 1)`, `choose n i` congruent to `0` module `p`, then `n = p ^ multiplicity p n`. 2) For a prime power `n`, the greatest common divisor of `choose n 1, ⋯, choose n (n - 1)` is actually the minimal prime factor of `n`. 3) For a natural number `n` greater than `1`, assume that `n` is not a prime power, then the greatest common divisor of `choose n 1, ⋯, choose n (n - 1)` is `1`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 88/1 Mathlib/Data/Nat/Choose/Lucas.lean 1 1 ['github-actions'] nobody
0-45539
12 hours ago
0-45610
12 hours ago
0-45601
12 hours
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-45538
12 hours ago
5-39863
5 days ago
5-41178
5 days
38228 kim-em
author:kim-em
ci: block merging PRs that increase technical debt unless reviewed This PR adds a merge gate for technical debt increases. When the existing technical debt metrics script reports an increase, the `build` job adds an `increases-technical-debt` label. A `check-technical-debt` job then adds `blocked-by-increases-technical-debt`, which blocks bors. A reviewer can add `allow-increases-technical-debt` to unblock after confirming the increase is acceptable. ### Fail-closed detection The detection greps for the *safe* patterns (`Decrease in tech debt:` / `No changes to technical debt.`) rather than for `Increase`. If `mathlib-ci` changes the script's output wording, the label is added (fail closed) rather than silently skipped (fail open). ### Labels (three-label pattern, same as #38225) | Label | Managed by | Purpose | |---|---|---| | `increases-technical-debt` | `build` job (tech debt script) | Factual: this PR increases debt | | `blocked-by-increases-technical-debt` | `check-technical-debt` job | Operational: blocks bors | | `allow-increases-technical-debt` | Reviewer | Override: reviewer approves the increase | Bors's `block_labels` has no conditional logic, so we need the derived `blocked-by-increases-technical-debt` label to express the conjunction "increases-technical-debt AND NOT allow-increases-technical-debt". False positives can be reported on the [mathlib4 Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/increases-technical-debt.20label). 🤖 Prepared with Claude Code CI 76/2 .github/workflows/PR_summary.yml,bors.toml 2 2 ['github-actions', 'jcommelin'] nobody
0-41508
11 hours ago
0-41569
11 hours ago
0-41630
11 hours
38225 kim-em
author:kim-em
ci: block merging PRs with large import increases unless reviewed This PR makes the existing `large-import` label into a merge gate. PRs that significantly increase transitive imports (>2% for any modified file) are now blocked from merging until a reviewer adds the `allow-large-import` label. ### Why three labels? Bors's `block_labels` has no conditional logic — if a label is in the list, merge is blocked unconditionally. We need "blocked unless a reviewer has approved", i.e. `large-import ∧ ¬allow-large-import`. Since bors can't express that, we use a derived label: | Label | Managed by | Purpose | |---|---|---| | `large-import` | `build` job (import analysis) | Factual: this PR increases imports | | `blocked-by-large-import` | `check-large-import` job | Operational: blocks bors | | `allow-large-import` | Reviewer | Override: reviewer approves the increase | Each label is managed by exactly one actor, so there is no label-fighting. ### How it works 1. The existing `build` job adds/removes `large-import` based on import analysis (unchanged). 2. A new `check-large-import` job (in the same workflow) waits for `build` to finish, then: - If `large-import` is present and `allow-large-import` is absent → adds `blocked-by-large-import` - Otherwise → removes `blocked-by-large-import` 3. `blocked-by-large-import` is added to `block_labels` in `bors.toml`. When a reviewer adds `allow-large-import`, the `labeled` event re-triggers the workflow. The heavy `build` job is skipped (guarded by `github.event.action != 'labeled'`), but the lightweight `check-large-import` job runs, sees both labels, and removes `blocked-by-large-import`. Bors can now merge. ### Reviewer workflow The CI failure message tells the reviewer to consider whether the PR could be improved by splitting files, rearranging material, or creating new intermediate files. If the import increase is reasonable, they add `allow-large-import`. False positives can be reported on the [mathlib4 Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/large-import.20label). 🤖 Prepared with Claude Code CI 78/2 .github/workflows/PR_summary.yml,bors.toml 2 3 ['SnirBroshi', 'github-actions', 'jcommelin'] nobody
0-41494
11 hours ago
0-41553
11 hours ago
0-42162
11 hours
38189 artie2000
author:artie2000
feat: simplify proof of `IsAdjoinRootMonic.mkOfAdjoinEqTop'` * Simplify the proof of `IsAdjoinRootMonic.mkOfAdjoinEqTop'` by factoring out a lemma `OrzechProperty.bijective_of_surjective_of_finrank_le` and making use of the existing lemma `finrank_le_iff_exists_linearMap`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 22/21 Mathlib/LinearAlgebra/Dimension/Free.lean,Mathlib/RingTheory/IsAdjoinRoot.lean 2 3 ['Vierkantor', 'github-actions'] nobody
0-40807
11 hours ago
3-41591
3 days ago
3-44247
3 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 8 ['JadAbouHawili', 'artie2000', 'github-actions', 'wwylele'] nobody
0-40632
11 hours ago
9-53577
9 days ago
12-73156
12 days
38319 Zetetic-Dhruv
author:Zetetic-Dhruv
feat(Combinatorics/SetFamily): Assouad's dual VC bound Adds the Finset-level form of Assouad's 1983 dual VC bound: if a family `𝒜 : Finset (Finset α)` has VC dimension at most `d`, then for any ground set `X : Finset α` the dual family `{𝒜.filter (· ∋ x) : x ∈ X}` has VC dimension at most `2 ^ (d + 1) - 1`. New declarations (in `Finset` namespace): - `dualFamily 𝒜 X`: for each `x ∈ X`, the subfamily `{A ∈ 𝒜 | x ∈ A}` - `mem_dualFamily` (`@[simp]`): membership characterisation - `exists_shatters_of_dualFamily_shatters`: Assouad's bitstring-coding lemma - `vcDim_dualFamily_le`: the headline VC bound Proof by Assouad's classical bitstring-coding argument. Sits on top of `Finset.shatterer` / `Finset.vcDim` from `Mathlib.Combinatorics.SetFamily.Shatter`. References: - P. Assouad, Densite et dimension, Ann. Inst. Fourier 33(3) (1983), Thm 2.13 - J. Matousek, Lectures on Discrete Geometry, GTM 212, Springer, 2002, Section 10.3 Lemma 10.3.3 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 187/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/DualVC.lean 2 5 ['Shreyas4991', 'Zetetic-Dhruv', 'github-actions'] nobody
0-37654
10 hours ago
0-41843
11 hours ago
0-41834
11 hours
38298 yuanyi-350
author:yuanyi-350
chore(CategoryTheory): remove unnecessary conditions in ` Mathlib/CategoryTheory/Limits/Shapes/Opposites/Equalizers` The linter is supposed to detect this extra condition here, but no error was reported. What could be the issue? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 4/4 Mathlib/CategoryTheory/Limits/Shapes/Opposites/Equalizers.lean 1 1 ['github-actions'] nobody
0-37619
10 hours ago
0-74008
20 hours ago
0-73999
20 hours
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$
79/0 Mathlib.lean,Mathlib/Algebra/Module/StablyFree/Basic.lean 2 6 ['dagurtomas', 'github-actions', 'mbkybky'] nobody
0-36805
10 hours ago
10-85467
10 days ago
29-56558
29 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'] nobody
0-36804
10 hours ago
44-77942
44 days ago
51-44250
51 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'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-36320
10 hours ago
23-17569
23 days ago
53-10321
53 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'] mariainesdff
assignee:mariainesdff
0-36319
10 hours ago
32-2471
32 days ago
32-2462
32 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. 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 66/10 Mathlib/RingTheory/UniqueFactorizationDomain/Multiplicity.lean 1 1 ['github-actions'] chrisflav
assignee:chrisflav
0-36317
10 hours ago
14-32163
14 days ago
14-32154
14 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 t-topology 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'] ADedecker
assignee:ADedecker
0-36316
10 hours ago
6-9308
6 days ago
6-12621
6 days
38104 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf 100 files This PR is an experimental project. In this PR, we use an Agent to automatically scan and attempt to simplify proofs. We hope to eventually effectively golf 100 files and avoid reinventing the wheel in mathlib. We have chosen `Mathlib/MeasureTheory` as the testing ground. If this experiment is very successful and accepted by the mathlib community, we would be honored to open source it. The relevant projects includes - [ ] #37968, which golfs `Mathlib/Analysis`. - [ ] #38144 , which golfs `Mathlib/NumberTheory`. **This PR serves as an index. For the actual code review, please refer to the individual PRs linked below. Each of those PRs modifies only a single file to facilitate the review process.** --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability codex LLM-generated 228/492 Mathlib/MeasureTheory/Constructions/BorelSpace/Metrizable.lean,Mathlib/MeasureTheory/Constructions/BorelSpace/Real.lean,Mathlib/MeasureTheory/Constructions/Pi.lean,Mathlib/MeasureTheory/Constructions/Polish/Basic.lean,Mathlib/MeasureTheory/Constructions/Polish/EmbeddingReal.lean,Mathlib/MeasureTheory/Constructions/Polish/StronglyMeasurable.lean,Mathlib/MeasureTheory/Covering/Besicovitch.lean,Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/MeasureTheory/Function/AEEqOfIntegral.lean,Mathlib/MeasureTheory/Function/AEMeasurableOrder.lean,Mathlib/MeasureTheory/Function/AEMeasurableSequence.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/AEMeasurable.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/RadonNikodym.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean,Mathlib/MeasureTheory/Function/ContinuousMapDense.lean,Mathlib/MeasureTheory/Function/Egorov.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Function/LpOrder.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Basic.lean,Mathlib/MeasureTheory/Function/LpSeminorm/Count.lean,Mathlib/MeasureTheory/Function/LpSeminorm/TriangleInequality.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Complete.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/Probability/ProductMeasure.lean 27 3 ['github-actions', 'grunweg', 'yuanyi-350'] kex-y
assignee:kex-y
0-36314
10 hours ago
1-18627
1 day ago
1-26585
1 day
38161 ADedecker
author:ADedecker
fix: wrong set-builder syntax in the definition of `CompactConvergenceCLM` See https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Simp.20failure.20due.20to.20set.20builder.20notation/near/586133497 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 1/1 Mathlib/Topology/Algebra/Module/Spaces/CompactConvergenceCLM.lean 1 1 ['github-actions'] j-loreaux
assignee:j-loreaux
0-36313
10 hours ago
3-77582
3 days ago
3-77573
3 days
38164 ADedecker
author:ADedecker
feat: add `IsCompact.isVonNBounded` This could already be proven using [TotallyBounded.isVonNBounded](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/LocallyConvex/Bounded.html#TotallyBounded.isVonNBounded), but this requires a uniform structure. Hence, adding the lemma specific to compact sets avoids a few local instances. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 15/10 Mathlib/Analysis/LocallyConvex/Bounded.lean,Mathlib/Analysis/LocallyConvex/Montel.lean,Mathlib/Analysis/Normed/Operator/Compact.lean,Mathlib/Topology/Algebra/Module/Spaces/CompactConvergenceCLM.lean 4 1 ['github-actions'] j-loreaux
assignee:j-loreaux
0-36312
10 hours ago
3-72552
3 days ago
3-72543
3 days
38254 jvanwinden
author:jvanwinden
refactor(Probability/Process): rework predictable and progressive processes The purpose of this PR is to rework `IsProgressive` and `ProgMeasurable` to have a weak (i.e., `Measurable`) and strong (i.e., `StronglyMeasurable`) variant, so that they are more in line with `Adapted`/`StronglyAdapted`. As a side effect, some lemmas can have certain typeclasses removed (which were previously needed to go back and forth between `Measurable` and `StronglyMeasurable`). Zulip discussion at [#Brownian motion > Adapted Filtrations for Markov Chains and Markov Processes](https://leanprover.zulipchat.com/#narrow/channel/509433-Brownian-motion/topic/Adapted.20Filtrations.20for.20Markov.20Chains.20and.20Markov.20Processes/with/563702867) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability brownian 230/188 Mathlib/Probability/Martingale/Basic.lean,Mathlib/Probability/Martingale/Centering.lean,Mathlib/Probability/Martingale/OptionalSampling.lean,Mathlib/Probability/Process/Adapted.lean,Mathlib/Probability/Process/Predictable.lean,Mathlib/Probability/Process/Stopping.lean 6 5 ['github-actions', 'jvanwinden', 'mathlib-bors'] kex-y
assignee:kex-y
0-36311
10 hours ago
0-58882
16 hours ago
0-58890
16 hours
38267 CoolRmal
author:CoolRmal
feat(ProbabilityTheory): add APIs for predicationPart and martingalePart Upstream results from https://github.com/RemyDegenne/brownian-motion/pull/422 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability brownian 88/1 Mathlib/Probability/Martingale/Centering.lean 1 1 ['github-actions'] kex-y
assignee:kex-y
0-36311
10 hours ago
1-37495
1 day ago
1-37486
1 day
38280 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/Cyclotomic/Basic` - refactors `Cyclotomic/Basic` by rewriting `nonempty_algEquiv_adjoin_of_isSepClosed` around `AlgHom.fieldRange_eq_map` and `IntermediateField.adjoin_map` - replaces the manual adjoin induction with direct `adjoin_le_iff` inclusions for the cyclotomic roots Extracted from #38144 , migrate from #38202 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-number-theory LLM-generated 12/35 Mathlib/NumberTheory/Cyclotomic/Basic.lean 1 2 ['acmepjz', 'github-actions', 'yuanyi-350'] tb65536
assignee:tb65536
0-36308
10 hours ago
1-7533
1 day ago
1-7524
1 day
38293 Vierkantor
author:Vierkantor
chore(Tactic): rewrite `split_ifs` tactic docstring This PR rewrites the docstrings for the `split_ifs` tactic, to consistently match the [official style guide](https://github.com/leanprover/lean4/blob/master/doc/style.md#tactics), to make sure they are complete while not getting too long. Most important addition is the fact that hypothesis names are not reused across splits. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-meta 11/8 Mathlib/Tactic/SplitIfs.lean 1 1 ['github-actions'] JovanGerb
assignee:JovanGerb
0-36306
10 hours ago
0-75784
21 hours ago
0-75775
21 hours
38294 Vierkantor
author:Vierkantor
chore(Tactic): rewrite `subsingleton` tactic docstring This PR rewrites the docstrings for the `subsingleton` tactic, to consistently match the [official style guide](https://github.com/leanprover/lean4/blob/master/doc/style.md#tactics), to make sure they are complete while not getting too long. The remark about `Sort _` being set to `Sort 0` by `apply Subsingleton.elim` does not seem to be true anymore, so I removed it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-meta 10/23 Mathlib/Tactic/Subsingleton.lean 1 1 ['github-actions'] JovanGerb
assignee:JovanGerb
0-36305
10 hours ago
0-75148
20 hours ago
0-75139
20 hours
38278 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/ArithmeticFunction/Zeta` - proves `coe_zeta_mul_comm` directly by reindexing the divisor antidiagonal with `map_swap_divisorsAntidiagonal` - derives `coe_mul_zeta_apply` from `coe_zeta_mul_comm` and `coe_zeta_mul_apply` Extracted from #38144 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-number-theory LLM-generated 6/10 Mathlib/NumberTheory/ArithmeticFunction/Zeta.lean 1 7 ['FLDutchmann', 'github-actions', 'leanprover-radar', 'yuanyi-350'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-35792
9 hours ago
1-6868
1 day ago
1-6914
1 day
38105 felixpernegger
author:felixpernegger
feat(Topology/EMetricSpace): add ```Weak(Pseudo)EMetricSpace``` See #32891. Unfortunately I accidentally deleted my fork, so redoing it here (I applied the outstanding suggestions there as far as I could) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 161/13 Mathlib/Topology/EMetricSpace/Defs.lean,Mathlib/Topology/Instances/ENNReal/Lemmas.lean 2 1 ['github-actions'] nobody
0-35342
9 hours ago
0-35398
9 hours ago
0-47561
13 hours
38110 felixpernegger
author:felixpernegger
feat(Topology): two theorems about extremally disconnected and irreducible A preconnected, extremally disconnected space is preirredicuble and a preirreducible space is extremally disconnected. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 42/0 Mathlib/Topology/ExtremallyDisconnected.lean,Mathlib/Topology/Irreducible.lean 2 10 ['NoahW314', 'felixpernegger', 'github-actions', 'vihdzp'] nobody
0-35177
9 hours ago
0-35235
9 hours ago
1-66600
1 day
38320 ldct
author:ldct
chore: Tag floor lemmas Tag lemmas that allow pushing `Int.floor` / `Nat.floor` through addition I tagged everything matching [Int.floor (_ + _) = _ + _](https://loogle.lean-lang.org/?q=Int.floor+%28_+%2B+_%29+%3D+_+%2B+_) and [Nat.floor (_ + _) = _ + _](https://loogle.lean-lang.org/?q=Nat.floor+%28_+%2B+_%29+%3D+_+%2B+_) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
46/7 Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,MathlibTest/push.lean 3 1 ['github-actions'] nobody
0-30999
8 hours ago
0-31115
8 hours ago
0-31106
8 hours
38323 NoahW314
author:NoahW314
feat(RingTheory/MvPolynomial/MonomialOrder): remove unnecessary hypothesis Some results had a nonzero hypothesis which can be eliminated since the result holds trivially when the polynomial is zero. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 13/5 Mathlib/RingTheory/MvPolynomial/MonomialOrder.lean 1 1 ['github-actions'] nobody
0-29261
8 hours ago
0-29334
8 hours ago
0-29325
8 hours
38230 kim-em
author:kim-em
ci: add no-public-api-changes label based on public olean diff This PR adds a CI step that compares the public `.olean` files produced by the PR build against `master`. When they are byte-identical, the label `no-public-api-changes` is applied; otherwise the label is removed. It also introduces a contributor/reviewer-controlled label `expect-no-public-api-changes`; when present, CI fails unless `no-public-api-changes` also applies. Together these are intended to make proof-only golfing PRs (see the [mathlib-maintainers thread](https://leanprover.zulipchat.com/#narrow/channel/180721-mathlib-maintainers/topic/yuanyi-350.20golfing.20PRs)) cheap to review with confidence that nothing downstream of the touched files is affected. ## ⚠️ Open question before merge The current implementation fetches master's cached oleans via a second `lake exe cache get` in the existing `tools-branch` checkout. I'd like feedback on whether the steady-state cost is acceptable before investing further. **Measured cost (sampled from master run [24620430633](https://github.com/leanprover-community/mathlib4/actions/runs/24620430633), 2026-04-19):** | | Per PR push | |---|---| | `cache get` (8,241 files from Azure) | **~8 s wall-clock** (parallel download, pipelined decompress) | | `lake build --no-build Mathlib` (baseline validation) | a few seconds | | `public_olean_diff.sh` (byte-comparison of ~8k files) | a few seconds | | **Extra wall-clock total** | **≈ 15–30 s** | | **Additional runner disk** | **≈ 5.8 GB** (a second full `.lake/build/lib/lean/Mathlib`) | | **Additional Azure egress** | **~1 GB** compressed | So the wall-clock hit is small, but **disk usage on PR runners roughly doubles** (on top of the ~5.8 GB the PR build already materializes). **Three concrete questions for reviewers:** 1. Is this disk overhead acceptable as always-on automation? Are any PR runners at risk of hitting their disk ceiling? 2. If not, do we prefer **weaker automation** (make the check opt-in via `expect-no-public-api-changes`, losing the informational `no-public-api-changes` label on most PRs) or **delaying this PR** until we extend `lake exe cache` to fetch public `*.olean` only (and skip `.olean.private`/`.olean.server`/`.ir.olean`, which would cut egress and disk substantially)? 3. Is there interest in a follow-up that moves the diff out of the build job and into a dedicated post-build job with its own checkout — same cost story but clearer ownership? ## How it works With the module system, a Mathlib build produces three files per module: `Foo.olean` (public/exported), `Foo.olean.server` (server data), and `Foo.olean.private` (full private data). Theorems are exported as axioms in the public `.olean` (see `addDecl` at [`src/Lean/AddDecl.lean:100-104`](https://github.com/leanprover/lean4/blob/master/src/Lean/AddDecl.lean#L100-L104)), so a proof-only change leaves `Foo.olean` byte-identical and only updates `Foo.olean.private`. A byte-level diff of public oleans therefore certifies "nothing exported changed" — signatures, exposed definition bodies, and public environment-extension state all included. New pieces: - `scripts/public_olean_diff.sh` — compares two `.lake/build/lib/lean` trees, ignoring `.olean.private`, `.olean.server`, and `.ir.olean`. Tri-state exit: `0=match`, `1=differs`, `2=error/unavailable`. - New steps in `.github/workflows/build_template.yml`: 1. Fetch master oleans via `lake exe cache get` inside `tools-branch`. 2. Validate the baseline with `lake build --no-build Mathlib` over the full diff scope (not just `Mathlib.Init`, which would only prove a prefix is cached). 3. Run the diff; upload the result as an artifact. 4. Look up the PR number from the (repo-qualified) head branch, and **verify** the PR head still points at this run's SHA (TOCTOU guard against fast successive pushes). 5. Add/remove the `no-public-api-changes` label (only when the diff state is `match` or `differs`; `unavailable` leaves existing labels alone). 6. Fail the job if `expect-no-public-api-changes` is set but the state is `differs`. Gated to same-repo PR-branch pushes on `leanprover-community/mathlib4`, excluding `master`, bors `staging`/`trying`, and any run overriding `tools_branch_ref`. ## Caveats - Only main-repo PRs are covered. `build_fork.yml` needs an analogous change in a follow-up. - Cold master cache or failed baseline validation → the state is `unavailable` and labels are left untouched (no spurious flipping). - Label updates are best-effort; they skip silently if PR lookup, the TOCTOU SHA check, or token operations fail. - The two labels must be created once on the repo (`no-public-api-changes`, `expect-no-public-api-changes`). - Not tested on actual CI yet. 🤖 Prepared with Claude Code CI 256/0 .github/workflows/build_template.yml,scripts/README.md,scripts/public_olean_diff.sh 3 4 ['SnirBroshi', 'bryangingechen', 'github-actions', 'kim-em'] nobody
0-28171
7 hours ago
0-41590
11 hours ago
0-41873
11 hours
38322 NoahW314
author:NoahW314
feat(Algebra/MvPolynomial): add monomial prod lemma --- [![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/MvPolynomial/Basic.lean 1 1 ['github-actions', 'wwylele'] nobody
0-27597
7 hours ago
0-29915
8 hours ago
0-29906
8 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$
16/7 Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean 2 12 ['github-actions', 'leanprover-radar', 'mortarsanjaya', 'themathqueen'] nobody
0-26914
7 hours ago
0-48468
13 hours ago
5-11654
5 days
38324 BryceT233
author:BryceT233
chore(RingTheory/AdicCompletion): make `AdicCompletion.map` linear on linear maps This PR upgrades `AdicCompletion.map` to be an R-linear map on the space of linear maps `M →ₗ[R] N`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 47/24 Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Functoriality.lean 2 1 ['github-actions'] nobody
0-26715
7 hours ago
0-26742
7 hours ago
0-26788
7 hours
38285 b-mehta
author:b-mehta
feat(GroupTheory/GroupAction/FixedPoints): characterise when there are no fixed points by an action Characterise when the set of points fixed by an action of a cancellative monoid action is empty. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-group-theory 8/0 Mathlib/GroupTheory/GroupAction/FixedPoints.lean 1 2 ['github-actions', 'tb65536'] tb65536
assignee:tb65536
0-23835
6 hours ago
1-3534
1 day ago
1-3525
1 day
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 290/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/Map.lean,MathlibTest/CategoryTheory/MapSimp.lean 5 11 ['adamtopaz', 'dagurtomas', 'github-actions', 'joelriou'] adamtopaz
assignee:adamtopaz
0-23660
6 hours ago
0-23718
6 hours ago
26-20903
26 days
38296 mike1729
author:mike1729
feat(MeasureTheory/LpSpace): Isometric embedding L∞ → (L¹)* For a finite measure `μ` and scalar field `𝕜` (any `RCLike`), adds the isometric `𝕜`-linear embedding `Lp 𝕜 ∞ μ →ₗᵢ[𝕜] StrongDual 𝕜 (Lp 𝕜 1 μ)` given by the pairing `g f ↦ ∫ x, g x * f x ∂μ`. Surjectivity (upgrading to the isometric equivalence `Lp 𝕜 ∞ μ ≃ₗᵢ[𝕜] StrongDual 𝕜 (Lp 𝕜 1 μ)`) is addressed in the follow-up PR: https://github.com/leanprover-community/mathlib4/pull/38295. New declarations: - `Mathlib/MeasureTheory/Function/LpSpace/Dual.lean` (new file): `MeasureTheory.Lp.lInftyL1Pairing`, `norm_le_norm_lpPairing_mul_apply`, `lInftyToL1Dualₗᵢ` (and its `_apply_apply` simp lemma). - `Mathlib/MeasureTheory/Function/LpSpace/Basic.lean`: `MeasureTheory.Lp.ae_norm_le_norm`, `MeasureTheory.Lp.measure_norm_gt_pos_of_lt_norm` (general `L∞` helper lemmas). - `Mathlib/MeasureTheory/Function/Holder.lean`: `ContinuousLinearMap.norm_lpPairing_apply_apply_le`, `norm_lpPairing_apply_le` (Hölder-style operator-norm bounds for `lpPairing`). Future PRs: - generalize to Holder conjugates with `p>1`, - generalize to sigma finite measures. --> [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor 176/0 Mathlib.lean,Mathlib/MeasureTheory/Function/Holder.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Dual.lean 4 5 ['github-actions', 'kbuzzard', 'mike1729'] kex-y
assignee:kex-y
0-21775
6 hours ago
0-74506
20 hours ago
0-74497
20 hours
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 19 ['artie2000', 'github-actions', 'justus-springer', 'martinwintermath', 'mathlib-merge-conflicts', 'ooovi'] nobody
0-20807
5 hours ago
3-59018
3 days ago
19-26533
19 days
38316 tannerduve
author:tannerduve
feat(Order/OmegaCompletePartialOrder): least fixed point and Scott induction Add `lfp` for endomorphisms on an ωCPO with a least element and its basic API (`map_lfp`, `isFixedPt_lfp`, `lfp_le_fixed`, `isLeast_lfp`) and the Scott induction theorem `lfp_induction` Also add corresponding induction principles for `Part.fix`: `fix_scott_induction` (ω-Scott continuous functional, admissible predicate) and `fix_scott_induction_pointwise` new-contributor 101/0 Mathlib/Control/LawfulFix.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,docs/references.bib 3 2 ['github-actions'] nobody
0-18360
5 hours ago
0-37276
10 hours ago
0-37793
10 hours
38327 kim-em
author:kim-em
chore(Topology/Connected/LocPathConnected): fix typo in `LocPathConnectedSpace` docstring This PR fixes a small typo in the docstring of `LocPathConnectedSpace`: the sentence was missing the word "if". 🤖 Prepared with Claude Code t-topology 1/1 Mathlib/Topology/Connected/LocPathConnected.lean 1 1 ['github-actions'] nobody
0-17799
4 hours ago
0-17880
4 hours ago
0-17871
4 hours
38325 Jun2M
author:Jun2M
feat(Combinatorics/Graph): EndPoint function This PR introduces `endPoints`: `Set` of incident vertices, given an edge (in the case of non-edge, return empty). This PR also removes the file-wise `@[expose]` tag and move to necessary defs. **Import change**: `Graph/Basic` now imports `Data/Set/Card` to allow reasoning about card of `endPoints`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics large-import 101/23 Mathlib/Combinatorics/Graph/Basic.lean,Mathlib/Combinatorics/Graph/Subgraph.lean,Mathlib/Topology/CWComplex/Classical/Graph.lean 3 2 ['github-actions', 'mathlib-bors'] nobody
0-16369
4 hours ago
0-16369
4 hours ago
0-20947
5 hours
37622 jano-wol
author:jano-wol
feat: a Lie module with trivial trace form is nilpotent over the derived subalgebra This is the key technical lemma required for Cartan's criteria for solvability and semisimplicity. --- 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$
308/2 Mathlib.lean,Mathlib/Algebra/Lie/AdjointAction/JordanChevalley.lean,Mathlib/Algebra/Lie/CartanCriterion.lean,Mathlib/Algebra/Lie/OfAssociative.lean,Mathlib/Algebra/Lie/Solvable.lean,Mathlib/Algebra/Lie/TraceForm.lean,Mathlib/LinearAlgebra/Eigenspace/Minpoly.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/Trace.lean,docs/references.bib 11 21 ['github-actions', 'jano-wol', 'jcommelin', 'ocfnash'] ocfnash
assignee:ocfnash
0-13955
3 hours ago
0-14272
3 hours ago
14-32201
14 days
38277 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/NumberField/Norm` - refactors `NumberField/Norm` by moving `isUnit_norm_of_isGalois` after `dvd_norm` and shortening its proof to a direct application of `dvd_norm` together with `isUnit_of_dvd_unit` Extracted from #38144 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-number-theory LLM-generated 4/15 Mathlib/NumberTheory/NumberField/Norm.lean 1 6 ['acmepjz', 'github-actions', 'leanprover-radar', 'riccardobrasca', 'yuanyi-350'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-13748
3 hours ago
1-7811
1 day ago
1-7802
1 day
36423 kim-em
author:kim-em
perf: decompress already-cached files concurrently with downloads This PR builds on https://github.com/leanprover-community/mathlib4/pull/32987 (pipeline downloads and decompression) and https://github.com/leanprover-community/mathlib4/pull/36367 (fix: decompress already downloaded files). Previously, already-cached `.ltar` files were only decompressed after all downloads completed, in the final `unpackCache` sweep. This PR starts decompressing them concurrently with downloads by spawning `leantar` as a background task before the download phase begins. The two decompression paths operate on disjoint file sets (pre-cached vs newly downloaded), so there is no conflict. In the common case where a user has most files cached but a few hundred to download, this overlaps several seconds of decompression with network I/O. 🤖 Prepared with Claude Code LLM-generated CI t-meta 79/27 Cache/IO.lean,Cache/Requests.lean 2 6 ['github-actions', 'joneugster', 'kim-em'] joneugster
assignee:joneugster
0-13567
3 hours ago
0-39124
10 hours ago
28-29112
28 days
36606 harahu
author:harahu
chore(AlgebraicGeometry): fix markdown list indentation 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. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 4/1 Mathlib/AlgebraicGeometry/Gluing.lean,Mathlib/AlgebraicGeometry/Morphisms/Basic.lean,Mathlib/AlgebraicGeometry/Morphisms/RingHomProperties.lean 3 12 ['chrisflav', 'dagurtomas', 'github-actions', 'grunweg', 'harahu'] alexjbest and dagurtomas
assignee:alexjbest assignee:dagurtomas
0-11017
3 hours ago
0-11017
3 hours ago
19-43671
19 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 154/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
0-10951
3 hours ago
4-80485
4 days ago
16-40890
16 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 maintainer-merge 10/0 Mathlib/RingTheory/MvPolynomial/Homogeneous.lean,Mathlib/RingTheory/MvPolynomial/WeightedHomogeneous.lean 2 3 ['github-actions', 'mathlib-merge-conflicts', 'robin-carlier'] robin-carlier
assignee:robin-carlier
0-10219
2 hours ago
3-37492
3 days ago
9-24081
9 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 193/115 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 8 ['github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mike1729'] nobody
0-9705
2 hours ago
0-9731
2 hours ago
25-50012
25 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 easy 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 3 ['github-actions', 'harahu', 'vihdzp'] Vierkantor
assignee:Vierkantor
0-9656
2 hours ago
16-56753
16 days ago
16-57148
16 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
0-9535
2 hours ago
19-51926
19 days ago
19-51917
19 days
38290 Vierkantor
author:Vierkantor
chore(Tactic): document the `says` tactic combinator This PR rewrites the docstrings for the `says` tactic combinator, to consistently match the [official style guide](https://github.com/leanprover/lean4/blob/master/doc/style.md#tactics), to make sure they are complete while not getting too long. The structure is now: * explain what `says` does, * explain why you would want to use it, * explain how to update/apply a `says`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) documentation t-meta maintainer-merge 7/10 Mathlib/Tactic/Says.lean 1 6 ['JovanGerb', 'Vierkantor', 'github-actions'] JovanGerb
assignee:JovanGerb
0-8789
2 hours ago
0-84357
23 hours ago
0-84348
23 hours
38119 NoahW314
author:NoahW314
feat(Topology/UniformSpace/DiscreteUniformity): finite discrete spaces are `DiscreteUniformity` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 9/0 Mathlib/Topology/UniformSpace/DiscreteUniformity.lean 1 3 ['ADedecker', 'github-actions', 'scholzhannah'] nobody
0-8033
2 hours ago
4-79389
4 days ago
4-79380
4 days
31576 kim-em
author:kim-em
feat: in a semilocally simply connected, locally path-connected space, the quotient of paths by homotopy has the discrete topology This PR proves that in a semilocally simply connected, locally path-connected space, the quotient of paths by homotopy has the discrete topology. This is closely related to, but not quite the same as, the quotient path space with fixed initial point being an even covering under the endpoint map. Depends on - [ ] #31449 - [x] #31525 - [x] #31574 - [x] #31575 - [ ] #34557 - [ ] #34558 This branch is now restacked on top of those dependency PRs rather than carrying overlapping copies of their changes. :robot: Prepared with Claude and OpenAI Codex LLM-generated 1390/0 Mathlib.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SemilocallySimplyConnected.lean,Mathlib/Topology/Connected/PathConnected.lean,Mathlib/Topology/Homotopy/Path.lean,Mathlib/Topology/Path.lean,Mathlib/Topology/UnitInterval.lean 7 6 ['github-actions', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] nobody
0-7573
2 hours ago
0-12194
3 hours ago
1-51869
1 day
35820 smmercuri
author:smmercuri
feat: unit lemmas and embedding for `FiniteAdeleRing` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 42/4 Mathlib/RingTheory/DedekindDomain/FiniteAdeleRing.lean 1 11 ['Multramate', 'Ruben-VandeVelde', 'github-actions', 'smmercuri'] mattrobball
assignee:mattrobball
0-6930
1 hour ago
0-6994
1 hour ago
45-77905
45 days
38308 drocta
author:drocta
feat(Algebra/Colimit/DirectLimit): add star structures (Star, StarRing, etc.) on DirectLimit add `Star`, `InvolutiveStar`, `StarMul`, `StarAddMonoid`, `StarRing`, and `StarModule` instances to `DirectLimit`, following the pattern of existing algebraic structures in `Mathlib.Algebra.Colimit.DirectLimit`. also add the universal property API (`of`, `lift`, `hom_ext`, `of_f`, `lift_of`) for `StarRing`. --- Use of AI: I did make some use of ChatGPT for some advice while writing this code, as well as the auto-complete built into VS Code. However, I can personally vouch for all of the code I am submitting, and that I understand all of it. This is the first part of my project towards supporting direct limits of $C^*$-algebras (as I described [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Early.20feedback.20on.20approach.20towards.20formalizing.20UHF.20algebras.3F) ). This PR adds an import of `Mathlib.Algebra.Star.StarRingHom` to `Mathlib.Algebra.Colimit.DirectLimit`, because it needs it. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
127/6 Mathlib/Algebra/Colimit/DirectLimit.lean 1 10 ['drocta', 'eric-wieser', 'github-actions', 'themathqueen'] nobody
0-5920
1 hour ago
0-66070
18 hours ago
0-66061
18 hours
37435 ADedecker
author:ADedecker
feat: ContinuousLinearMap.pi as a continuous linear equivalence --- - [x] depends on: #37614 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 119/0 Mathlib/Topology/Algebra/Module/Spaces/CompactConvergenceCLM.lean,Mathlib/Topology/Algebra/Module/Spaces/ContinuousLinearMap.lean,Mathlib/Topology/Algebra/Module/Spaces/PointwiseConvergenceCLM.lean,Mathlib/Topology/Algebra/Module/Spaces/UniformConvergenceCLM.lean 4 10 ['ADedecker', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] j-loreaux
assignee:j-loreaux
0-5377
1 hour ago
4-5422
4 days ago
14-50864
14 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 9 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mike1729'] urkud
assignee:urkud
0-5109
1 hour ago
18-51748
18 days ago
18-52023
18 days
38273 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/SpecialFunctions/Gamma/Basic` - rewrites `Gamma_eq_integral` using `Complex.GammaIntegral_ofReal` instead of an inline set-integral congruence Extracted from #37968, migrated from #38076. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated maintainer-merge 2/13 Mathlib/Analysis/SpecialFunctions/Gamma/Basic.lean 1 4 ['github-actions', 'themathqueen', 'yuanyi-350'] nobody
0-4818
1 hour ago
1-16763
1 day ago
1-17196
1 day
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'] nobody
0-4785
1 hour ago
18-32985
18 days ago
29-66050
29 days
38170 maddycrim
author:maddycrim
feat(Algebra/Module/FinitePresentation): Finitely Presented Module Lemma From FLT Project Main Definitions: `Module.FinitePresentation.exists_fin_exact` : A finitely presented module M admits an exact sequence F' -> F -> M -> 0 where F' and F are finite free modules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
14/0 Mathlib/Algebra/Module/FinitePresentation.lean 1 14 ['github-actions', 'maddycrim', 'themathqueen'] nobody
0-4526
1 hour ago
0-32057
8 hours ago
3-54692
3 days
37439 ADedecker
author:ADedecker
feat: UniformConvergenceCLM version of ContinuousLinearEquiv.arrowCongr The absence of `@[simp]` attribute comes from the fact that the generated lemmas would break the API boundary. I think the solution to all of this will eventually be to define generic type aliases `Topology.WithUniform` / `Topology.WithUniformOn` / `Topology.WithPointwise`... which will behave like [WithLp](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/Normed/Lp/WithLp.html#WithLp) (thus disabling the very-abused defeqs around here). --- - [ ] depends on: #37614 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 65/3 Mathlib/Topology/Algebra/Module/Equiv.lean,Mathlib/Topology/Algebra/Module/Spaces/ContinuousLinearMap.lean,Mathlib/Topology/Algebra/Module/Spaces/UniformConvergenceCLM.lean 3 6 ['ADedecker', 'github-actions', 'loefflerd', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] loefflerd
assignee:loefflerd
0-4305
1 hour ago
13-85171
13 days ago
15-23343
15 days
38274 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/Complex/Trigonometric` - rewrites `cos_three_mul` via `cosh_three_mul` and the `cosh_mul_I` conversion - shortens `sin_three_mul` using `sin_add`, double-angle identities, and `grind` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-analysis 3/11 Mathlib/Analysis/Complex/Trigonometric.lean 1 6 ['github-actions', 'leanprover-radar', 'themathqueen', 'yuanyi-350'] nobody
0-3995
1 hour ago
0-31857
8 hours ago
0-71143
19 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$
54/0 Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean 2 7 ['github-actions', 'robin-carlier', 'tb65536'] robin-carlier
assignee:robin-carlier
0-2326
38 minutes ago
0-2326
38 minutes ago
5-55718
5 days
37444 vihdzp
author:vihdzp
feat: typeclass for zero-dimensional spaces --- - [ ] depends on: #37317 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology large-import 151/110 Mathlib/Topology/Algebra/ClopenNhdofOne.lean,Mathlib/Topology/Category/LightProfinite/Basic.lean,Mathlib/Topology/Category/Profinite/Basic.lean,Mathlib/Topology/Category/Profinite/CofilteredLimit.lean,Mathlib/Topology/Category/Stonean/Basic.lean,Mathlib/Topology/ClopenBox.lean,Mathlib/Topology/Order.lean,Mathlib/Topology/Order/WithTop.lean,Mathlib/Topology/Separation/CompletelyRegular.lean,Mathlib/Topology/Separation/DisjointCover.lean,Mathlib/Topology/Separation/Lemmas.lean,Mathlib/Topology/Separation/Profinite.lean,Mathlib/Topology/UniformSpace/Ultra/Basic.lean 13 6 ['FernandoChu', 'github-actions', 'mathlib-dependent-issues', 'vihdzp'] nobody
0-1614
26 minutes ago
0-1616
26 minutes ago
0-1723
28 minutes
38311 homeowmorphism
author:homeowmorphism
feat(FinitelyPresentedGroup): Additivise definitions and add ℤ instance We add `to_additive` annotations to the FinitelyPresentedGroup.lean API and show that it works with the `AddGroup.IsFinitelyPresented ℤ` example. Co-pilot and Gemini 3.1 Pro were used to assist in these changes. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory 26/7 Mathlib/Algebra/Group/Subgroup/Basic.lean,Mathlib/GroupTheory/FinitelyPresentedGroup.lean 2 2 ['github-actions', 'mathlib-bors'] nobody
0-1411
23 minutes ago
0-1331
22 minutes ago
0-1526
25 minutes
38172 joelriou
author:joelriou
feat(AlgebraicTopology/SimplicialSet): Mulstruct.mulOne and oneMul We introduce definitions `SSet.PtSimplex.MulStruct.oneMul/mulOne` which shall later be interpreted as an explanation for the relations satisfied by the neutral element for the multiplication on homotopy groups of Kan complexes. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology maintainer-merge 55/0 Mathlib/AlgebraicTopology/SimplicialSet/KanComplex/MulStruct.lean 1 4 ['github-actions', 'robin-carlier'] robin-carlier
assignee:robin-carlier
0-161
2 minutes ago
3-66149
3 days ago
3-66213
3 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
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
26-75367
26 days ago
31-13955
31 days ago
32-83202
32 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
20-69098
20 days ago
20-71252
20 days ago
21-38257
21 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
20-47189
20 days ago
20-48209
20 days ago
34-29035
34 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
20-36330
20 days ago
29-54571
29 days ago
34-3769
34 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
19-79642
19 days ago
31-72290
31 days ago
31-73110
31 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
19-7934
19 days ago
19-7970
19 days ago
19-36482
19 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
18-32927
18 days ago
18-32985
18 days ago
32-43304
32 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
18-6141
18 days ago
18-6188
18 days ago
75-76046
75 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
17-57957
17 days ago
17-64218
17 days ago
90-33001
90 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
16-70199
16 days ago
16-70254
16 days ago
29-50681
29 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
13-3695
13 days ago
13-6403
13 days ago
32-33295
32 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
11-56525
11 days ago
11-62870
11 days ago
52-67738
52 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
11-44756
11 days ago
11-44828
11 days ago
13-41928
13 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
11-21563
11 days ago
11-21598
11 days ago
156-33435
156 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
11-12489
11 days ago
11-12648
11 days ago
59-39747
59 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
10-76357
10 days ago
10-78634
10 days ago
10-78696
10 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
10-36707
10 days ago
33-7171
33 days ago
33-10280
33 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
10-36695
10 days ago
11-27706
11 days ago
11-30934
11 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
9-54216
9 days ago
9-63683
9 days ago
13-49430
13 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
9-43900
9 days ago
10-2851
10 days ago
10-2842
10 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
8-57204
8 days ago
8-57262
8 days ago
14-24704
14 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
8-56396
8 days ago
8-56447
8 days ago
24-27237
24 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
8-43033
8 days ago
8-60053
8 days ago
8-60044
8 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
7-51125
7 days ago
7-71705
7 days ago
8-47590
8 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
7-36305
7 days ago
32-76330
32 days ago
46-16511
46 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
6-36340
6 days ago
19-72271
19 days ago
20-26257
20 days
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
6-36336
6 days ago
14-39715
14 days ago
14-40199
14 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
6-13479
6 days ago
6-13540
6 days ago
6-14625
6 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
5-75011
5 days ago
5-81807
5 days ago
16-28867
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
5-50060
5 days ago
5-50060
5 days ago
11-28744
11 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
5-36224
5 days ago
6-67898
6 days ago
6-67889
6 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
5-9001
5 days ago
37-21021
37 days ago
37-21012
37 days
32692 WilliamCoram
author:WilliamCoram
feat: define multivariate restricted power series We define multivariate restricted power series over a normed ring R, and show the properties that they form a ring when R has the ultrametric property. This work generalises my previous work in #26089 which will need to be refactored. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-number-theory new-contributor 137/0 Mathlib.lean,Mathlib/Algebra/Order/Antidiag/Prod.lean,Mathlib/RingTheory/MvPowerSeries/Restricted.lean 3 43 ['WilliamCoram', 'erdOne', 'github-actions', 'jcommelin', 'mathlib-merge-conflicts'] alreadydone
assignee:alreadydone
4-78414
4 days ago
4-78474
4 days ago
23-5727
23 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. This PR was assisted by LLMs (Aristotle and Gemini). --- [![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
4-59902
4 days ago
10-3913
10 days ago
10-3904
10 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'] dagurtomas
assignee:dagurtomas
4-36340
4 days ago
14-44317
14 days ago
14-47503
14 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'] dagurtomas
assignee:dagurtomas
4-36338
4 days ago
13-10067
13 days ago
13-11145
13 days
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/Star.lean 2 38 ['8e7', 'IvanRenison', 'JovanGerb', 'SnirBroshi', 'github-actions', 'vihdzp', 'vlad902'] nobody
4-24813
4 days ago
5-28377
5 days ago
7-26633
7 days
35569 goliath-klein
author:goliath-klein
refactor(PiTensorProduct/{InjectiveNorm, ProjectiveNorm}): deprecate `injectiveSeminorm` This PR: * Deprecates `PiTensorProduct.injectiveSeminorm` and supporting lemmas. * Moves the theory of `liftEquiv` from InjectiveSeminorm.lean to ProjectiveSeminorm.lean. No changes are introduced beyond adding deprecation notices, adapting docstrings, and moving material between files. The PR leaves InjectiveSeminorm.lean almost empty. A new implementation of `injectiveSeminorm`, one which reflects the common mathematical definition, is to be done. This is the third in a series of three PRs with the goal to [deprecate `PiTensorProuduct.injectiveSeminorm`](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/injectiveSeminorm/with/568798633). --- - [ ] depends on: #35567 - [ ] depends on: #35568 Deprecations: - injectiveSeminorm - dualSeminorms_bounded - injectiveSeminorm_apply - norm_eval_le_injectiveSeminorm - injectiveSeminorm_le_projectiveSeminorm - injectiveSeminorm_tprod_le Preliminary work toward a reimplementation is at #33969. I've added Davood and myself to the "Authors" field, as we have now significantly refactored this module. Co-authored-by: Davood H. T. Tehrani [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 222/233 Mathlib/Analysis/Normed/Module/PiTensorProduct/InjectiveSeminorm.lean,Mathlib/Analysis/Normed/Module/PiTensorProduct/ProjectiveSeminorm.lean 2 6 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
4-8975
4 days ago
4-8999
4 days ago
20-63706
20 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)$$ - The `SimpContFract` version is still available unchanged, so this should avoid breaking existing users of the old API. - The use of `0` as the default partial numerator in `(g.partNums.get? i).getD 0` allows product formulation that remains valid when the fraction is terminated. t-algebra new-contributor large-import
label:t-algebra$
55/28 Mathlib/Algebra/ContinuedFractions/Computation/Approximations.lean,Mathlib/Algebra/ContinuedFractions/Determinant.lean 2 9 ['emlis42', 'github-actions', 'vihdzp'] nobody
3-73390
3 days ago
7-82151
7 days ago
7-82639
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 t-measure-probability 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
3-65341
3 days ago
16-42300
16 days ago
25-60395
25 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 t-data 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
3-65254
3 days ago
9-79720
9 days ago
17-35676
17 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 t-order 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
3-65079
3 days ago
12-30427
12 days ago
12-34236
12 days
37893 abeldonate
author:abeldonate
feat: Module theory theorems Added three theorems: - annihilator_sup - torsionOf_eq_annihilator_span_singleton - annihilator_eq_iInf_torsionOf new-contributor t-algebra
label:t-algebra$
15/0 Mathlib/Algebra/Module/Torsion/Basic.lean,Mathlib/RingTheory/Ideal/Maps.lean 2 8 ['abeldonate', 'github-actions', 'scholzhannah', 'wwylele'] nobody
3-64800
3 days ago
3-72474
3 days ago
4-85342
4 days
38171 emlis42
author:emlis42
feat(Analysis/Calculus/Deriv): add deriv_const_mul_id' This PR adds a simp lemma for the derivative of multiplication by a constant on the left. In practice, `simp` is already able to simplify `fun x => x * c` and `fun x => x / c`. However, it getting stuck on `fun x => c * x` and `deriv (HMul.hMul c)`. This PR fix this by adding a simp lemma so that `simp` can also handle `fun x => c * x` without requiring an explicit `rw [deriv_const_mul]`. This is useful for examples such as: ```lean4 example {t : ℝ} (ht : t ≠ 0) : deriv (fun x => x ^ 2 / (2 * x)) t = 1 / 2 := by simp (disch := first | fun_prop (disch := grind) | grind); field example {t : ℝ} : deriv (HMul.hMul 2) t = 2 := by simp ``` new-contributor t-analysis 12/11 Mathlib/Analysis/Calculus/Deriv/Mul.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Cotangent.lean,Mathlib/NumberTheory/Harmonic/GammaDeriv.lean,Mathlib/NumberTheory/ModularForms/DedekindEta.lean 4 4 ['emlis42', 'github-actions', 'leanprover-radar'] nobody
3-63407
3 days ago
3-69162
3 days ago
3-69153
3 days
37319 PrParadoxy
author:PrParadoxy
feat(Algebra/Field/Power): weaken assumptions of Odd.neg_zpow The lemmas `Even.neg_zpow` and `Even.neg_one_zpow` are stated assuming `[DivisionMonoid α] [HasDistribNeg α]`. However, `Odd.neg_zpow` and `Odd.neg_one_zpow` currently assume the stronger `[DivisionRing α]`. This PR weakens the assumption of the `Odd` lemmas to match their `Even` counterparts. The lemmas are currently the only content of Mathlib.Algebra.Field.Power. That files exists in order to "define Field with minimal imports". But after this PR, Power.lean does not rely on Mathlib.Algebra.Field.Defs any more. We hence deprecate "Field.Power" and move the two statements to Mathlib.Algebra.Ring.Int.Parity. --- Examples: ``` -- these all work: example (z : ℤ) (h : Even z) : (-1 : ℂ)^z = 1 := Even.neg_one_zpow h example (z : ℤ) (h : Even z) : (-1 : unitary ℂ)^z = 1 := Even.neg_one_zpow h example (z : ℤ) (h : Odd z) : (-1 : ℂ)^z = -1 := Odd.neg_one_zpow h -- but this fails without the PR: example (z : ℤ) (h : Odd z) : (-1 : unitary ℂ)^z = -1 := Odd.neg_one_zpow h ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
24/29 Mathlib/Algebra/Field/Power.lean,Mathlib/Algebra/Ring/Int/Parity.lean,Mathlib/Tactic/FieldSimp/Lemmas.lean 3 8 ['eric-wieser', 'github-actions', 'goliath-klein', 'joelriou'] joelriou
assignee:joelriou
3-61551
3 days ago
3-63101
3 days ago
16-34501
16 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 144/1 Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean 1 4 ['WilliamCoram', 'github-actions'] nobody
3-55467
3 days ago
6-65443
6 days ago
6-65434
6 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 17 ['Maldooor', 'github-actions', 'lua-vr', 'samueloettl'] mcdoll
assignee:mcdoll
3-36621
3 days ago
7-82151
7 days ago
63-75521
63 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 t-algebra
label:t-algebra$
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'] dagurtomas
assignee:dagurtomas
3-36618
3 days ago
24-45592
24 days ago
29-36808
29 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 t-measure-probability 92/0 Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean 1 2 ['github-actions'] RemyDegenne
assignee:RemyDegenne
3-36616
3 days ago
14-73804
14 days ago
14-73795
14 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 30/1 Mathlib/ModelTheory/Topology/Types.lean 1 12 ['NoneMore', 'anishrajeev', 'fpvandoorn', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] fpvandoorn
assignee:fpvandoorn
3-31988
3 days ago
3-32043
3 days ago
17-14073
17 days
38194 ryanncode
author:ryanncode
feat(LinearAlgebra/BilinearForm): add indefinite metrics Add the `IndefiniteMetric` structure to support vector spaces equipped with a non-degenerate, symmetric, indefinite bilinear form. Provide the algebraic foundation for indefinite inner product spaces by formalizing the metric via `LinearMap.BilinForm` and extracting its associated quadratic form without enforcing the `IsPosSemidef` typeclass. Previously, mathlib required strictly positive-definite metrics to instantiate inner product spaces (`InnerProductSpace`), which prevented the formalization of indefinite geometries without causing typeclass inference failures. Bridge this gap by isolating the symmetric bilinear form from topological and positivity constraints, allowing the library to handle generalized indefinite metric spaces safely. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
47/0 Mathlib.lean,Mathlib/LinearAlgebra/BilinearForm/IndefiniteMetric.lean 2 2 ['github-actions'] nobody
3-21360
3 days ago
3-21431
3 days ago
3-21422
3 days
37923 e-271828
author:e-271828
feat(Analysis/Calculus/DSlope): add `eq_smul_dslope_of_zero` and iterated version This PR adds two fundamental algebraic identities connecting a function with its `dslope` when the base point is a root: * `eq_smul_dslope_of_zero`: `f b = (b - a) • dslope f a b` when `f a = 0`. * `eq_pow_smul_iterate_dslope_of_zero`: The iterated version `f b = (b - a) ^ n • (Function.swap dslope a)^[n] f b` when the first `n-1` iterated dslopes vanish at `a`. These lemmas are essential for factoring out removable singularities locally. This PR was assisted by LLMs (Aristotle and Gemini). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis new-contributor 13/0 Mathlib/Analysis/Calculus/DSlope.lean 1 18 ['e-271828', 'github-actions', 'j-loreaux', 'wwylele'] j-loreaux
assignee:j-loreaux
3-19772
3 days ago
3-19772
3 days ago
6-63314
6 days
34435 huaizhangchu
author:huaizhangchu
feat(Probability): convolution of Poisson distributions This PR proves that the convolution of two Poisson distributions is again a Poisson distribution: `Poisson(r₁) ∗ Poisson(r₂) = Poisson(r₁ + r₂)` ## Main results - `poissonMeasureReal_charFun`: characteristic function of Poisson distribution is `exp(r(exp(it) - 1))` - `poissonMeasureReal_conv_poissonMeasureReal`: convolution of Poisson distributions on ℝ - `poissonMeasure_conv_poissonMeasure`: convolution of Poisson distributions on ℕ - `poissonMeasure_add_poissonMeasure_of_indepFun`: sum of independent Poisson random variables ## Proof strategy Uses characteristic functions: `φ(t) = exp(r(eⁱᵗ - 1))`, then pulls back from ℝ to ℕ. --- - [x] depends on: #34521 - [ ] depends on: #36374 t-measure-probability large-import new-contributor 122/17 Mathlib/Probability/Distributions/Poisson/Basic.lean 1 64 ['CoolRmal', 'DavidLedvinka', 'EtienneC30', 'github-actions', 'huaizhangchu', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'pfaffelh', 'vianna04', 'yuanyi-350'] EtienneC30
assignee:EtienneC30
2-75202
2 days ago
3-75740
3 days ago
50-41738
50 days
38020 Deicyde
author:Deicyde
feat(Topology/FiberBundle): `continuousAt_symm_prodMk_left` API lemma for fiber bundle trivializations. Shows that for a given trivialization `e` and fixed `v`, `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 11/2 Mathlib/Topology/FiberBundle/Trivialization.lean,Mathlib/Topology/Homotopy/Lifting.lean 2 17 ['Deicyde', 'github-actions', 'grunweg'] PatrickMassot and grunweg
assignee:grunweg assignee:PatrickMassot
2-61085
2 days ago
2-61085
2 days ago
4-23829
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
2-47117
2 days ago
11-6890
11 days ago
11-6985
11 days
32555 ksenono
author:ksenono
feat(Combinatorics/SimpleGraph/Matching): maximum and maximal matchings for Konig's theorem --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 112/0 Mathlib/Combinatorics/SimpleGraph/DegreeSum.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean 2 39 ['SnirBroshi', 'SproutSeeds', 'github-actions', 'jcommelin', 'ksenono'] b-mehta
assignee:b-mehta
2-36247
2 days ago
3-72936
3 days ago
103-54516
103 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'] kim-em
assignee:kim-em
2-36243
2 days ago
16-24695
16 days ago
17-40174
17 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'] Komyyy
assignee:Komyyy
2-36243
2 days ago
12-38523
12 days ago
14-25276
14 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 t-category-theory 214/4 Mathlib/CategoryTheory/Monoidal/Hopf_.lean,Mathlib/RingTheory/HopfAlgebra/Basic.lean 2 4 ['github-actions', 'robin-carlier', 'sglasman'] kim-em
assignee:kim-em
2-36242
2 days ago
12-51885
12 days ago
12-51876
12 days
37076 ertwro
author:ertwro
feat(Combinatorics/SimpleGraph/Hasse): Hasse diagram is triangle-free Add `SimpleGraph.hasse_cliqueFree_three`: the Hasse diagram of a preorder is triangle-free (`CliqueFree 3`). This is the graph-theoretic formulation of `not_covBy_of_lt_of_lt`: if `a ⋖ b` and `b ⋖ c`, then `¬ a ⋖ c`, so no three elements can be pairwise adjacent in the Hasse diagram. The proof extracts three vertices from a hypothetical 3-clique, case-splits on the covering directions (8 cases), and closes each by `not_covBy_of_lt_of_lt` (6 transitive cases) or `lt_asymm` (2 cyclic cases). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 11/0 Mathlib/Combinatorics/SimpleGraph/Hasse.lean 1 21 ['Rida-Hamadani', 'SnirBroshi', 'ertwro', 'github-actions', 'vlad902'] nobody
2-25294
2 days ago
2-25349
2 days ago
10-35120
10 days
38026 mrdouglasny
author:mrdouglasny
feat(Analysis/Calculus): define absolutely monotone functions ## Summary - Define `AbsolutelyMonotoneOn f s` for functions `f : ℝ → ℝ` that are smooth on `s` with all iterated derivatives within `s` nonneg - Prove closure under `add`, `smul`, `mul` - Show `exp`, `cosh`, constants, and powers are absolutely monotone on appropriate domains This is the first part of a split of #37879. Follow-up PRs will add: - Bernstein backward direction (nonneg coefficients → absolutely monotone) - Bernstein forward direction (absolutely monotone → analytic at 0) - Matrix applications (Schur product theorem for power series, entrywise exp) ## Test plan - [ ] CI passes (build + lint) - [ ] Verify `AbsolutelyMonotoneOn` structure and examples type-check 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.6 (1M context) t-analysis new-contributor LLM-generated 93/0 Mathlib.lean,Mathlib/Analysis/Calculus/AbsolutelyMonotone.lean,docs/references.bib 3 15 ['github-actions', 'j-loreaux', 'mrdouglasny', 'vihdzp', 'wwylele'] nobody
2-20723
2 days ago
2-20723
2 days ago
3-28211
3 days
36621 quantumsnow
author:quantumsnow
feat: add the category of topological pairs This is needed for the Eilenberg-Steenrod axioms for a homology theory. --- - [x] depends on: #37540 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology new-contributor 255/9 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean,Mathlib/Topology/Category/TopCat/Limits/Basic.lean,Mathlib/Topology/Category/TopPair.lean,Mathlib/Topology/Homotopy/TopCat/Basic.lean 5 86 ['chrisflav', 'dagurtomas', 'erdOne', 'github-actions', 'joelriou', 'mathlib-dependent-issues', 'quantumsnow', 'vlad902'] dagurtomas
assignee:dagurtomas
2-1852
2 days ago
2-55666
2 days ago
9-28175
9 days
33714 idontgetoutmuch
author:idontgetoutmuch
feat(Mathlib/Geometry/Manifold): Riemannian metrics exist II Supersedes https://github.com/leanprover-community/mathlib4/pull/33519 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry new-contributor 723/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Geometry/Manifold/ExistsRiemannianMetric.lean,Mathlib/Geometry/Manifold/PartitionOfUnity.lean 4 200 ['Rida-Hamadani', 'github-actions', 'grunweg', 'idontgetoutmuch'] ocfnash
assignee:ocfnash
1-76352
1 day ago
1-76352
1 day ago
46-83796
46 days
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
1-65254
1 day ago
16-34634
16 days ago
41-24490
41 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'] nobody
1-36803
1 day ago
54-62658
54 days ago
57-10535
57 days
37801 eliasjudin
author:eliasjudin
refactor(Algebra/MvPolynomial): generalize pUnitAlgEquiv to Unique ## Summary Generalize `MvPolynomial.pUnitAlgEquiv` to `MvPolynomial.uniqueAlgEquiv` for any `[Unique σ]`: $$ \mathrm{MvPolynomial}\ \sigma\ R \simeq_R R[X]. $$ The equivalence is induced by $$ X_i \mapsto X, $$ and its inverse is induced by $$ X \mapsto X_{\mathrm{default}}. $$ For `d : σ →₀ ℕ` and `r : R`, the monomial lemmas identify $$ \mathrm{monomial}(d,r) \mapsto \mathrm{monomial}(d(\mathrm{default}),r), $$ with the corresponding inverse statement. The evaluation lemmas state that for `φ : R →+* S` and `a : σ → S`, evaluation after `uniqueAlgEquiv` is evaluation at the unique variable value `a default`: $$ \mathrm{eval}_2(\varphi, a(\mathrm{default}))\bigl(\mathrm{uniqueAlgEquiv}_{R,\sigma}(f)\bigr)=\mathrm{eval}_2(\varphi, a)(f), $$ together with the inverse and constant-variable special cases. Keep `pUnitAlgEquiv` as a deprecated compatibility abbreviation and migrate downstream uses to the new API. This PR adds proofs autoformalised by @Aristotle-Harmonic. ## Motivation The old API proves the canonical one-variable equivalence only for `PUnit`: $$ \mathrm{MvPolynomial}\ \mathrm{PUnit}\ R \simeq_R R[X]. $$ The natural hypothesis is `[Unique σ]`, giving the same equivalence for any one-element index type: $$ \mathrm{MvPolynomial}\ \sigma\ R \simeq_R R[X]. $$ This avoids inserting an auxiliary equivalence `σ ≃ PUnit` in one-variable arguments, and removes the need for separate APIs for other singleton index types such as `Fin 1`. Co-authored-by: Aristotle (Harmonic) t-algebraic-geometry new-contributor 107/48 Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/AlgebraicGeometry/AffineSpace.lean,Mathlib/RingTheory/AlgebraicIndependent/TranscendenceBasis.lean,Mathlib/RingTheory/AlgebraicIndependent/Transcendental.lean,Mathlib/RingTheory/FinitePresentation.lean,Mathlib/RingTheory/FreeCommRing.lean,Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/Evaluation.lean,Mathlib/RingTheory/Smooth/Basic.lean 9 16 ['eliasjudin', 'eric-wieser', 'github-actions', 'wwylele'] riccardobrasca
assignee:riccardobrasca
1-36286
1 day ago
3-3358
3 days ago
5-58698
5 days
37527 bryanboehnke
author:bryanboehnke
feat(LocalRing/Etale): Finite étale extensions of local rings are monogenic Formalization of Lemma 3.2 from https://arxiv.org/abs/2503.07846: Given a finite extension of local rings R -> S, if the extension is étale, then there exists β ∈ S such that R[β] = S. Furthermore, if f(z) ∈ R[z] is the minimal polynomial of β, then f′(β) is a unit in S. This file also includes some relevant intermediate results used in the formalization of the proof of Lemma 3.1 from the same paper. Co-authored-by: George Peykanu Co-authored-by: Bianca Viray Co-authored-by: Grant Yang --- - [ ] depends on: #36421 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 148/0 Mathlib.lean,Mathlib/RingTheory/LocalRing/Etale.lean 2 5 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
1-36099
1 day ago
1-36123
1 day ago
1-57091
1 day
37071 ericluap
author:ericluap
feat: Dedekind completion of rationals is isomorphic to EReal t-order new-contributor 143/4 Mathlib.lean,Mathlib/Data/EReal/Basic.lean,Mathlib/Data/EReal/DedekindCut.lean,Mathlib/Order/Completion.lean,Mathlib/Order/Concept.lean 5 49 ['ericluap', 'github-actions', 'vihdzp', 'wwylele'] vihdzp
assignee:vihdzp
1-24233
1 day ago
1-29552
1 day ago
7-17855
7 days
36474 SmwYin
author:SmwYin
feat(NumberTheory/ModularForms/QExpansion): update qExpansion API for more general objects This PR generalises several lemmas from `ModularFormClass` and `ModularForm` to functions on the upper half plane that are periodic, holomorphic, and bounded at infinity. This allows us to study the _q_-expansion of functions such as `q * j`, where `j` denotes the _j_-function. The specialised `ModularFormClass` and `ModularForm` lemmas are retained as wrappers. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory new-contributor 349/235 Mathlib/NumberTheory/ModularForms/Bounds.lean,Mathlib/NumberTheory/ModularForms/EisensteinSeries/QExpansion.lean,Mathlib/NumberTheory/ModularForms/LevelOne.lean,Mathlib/NumberTheory/ModularForms/Petersson.lean,Mathlib/NumberTheory/ModularForms/QExpansion.lean 5 59 ['CBirkbeck', 'MichaelStollBayreuth', 'SmwYin', 'github-actions', 'loefflerd', 'mathlib-bors', 'mathlib-merge-conflicts', 'tb65536'] CBirkbeck and loefflerd
assignee:loefflerd assignee:CBirkbeck
1-3691
1 day ago
1-63550
1 day ago
15-66086
15 days
38275 TTony2019
author:TTony2019
feat: Add `AffineEquiv.image_intrinsicInterior` ## Summary This PR generalizes the existing lemma `AffineIsometry.image_intrinsicInterior` to the setting of affine equivalences, yielding the corresponding result `AffineEquiv.image_intrinsicInterior`. Since affine equivalences are more general than affine isometries, the proof requires an additional finite-dimensionality assumption. The key extra input is that in finite-dimensional spaces, an affine equivalence induces a homeomorphism via `AffineEquiv.toHomeomorphOfFiniteDimensional`, so the assumptions are adjusted accordingly. Apart from these extra assumptions, the argument is essentially the same as for `AffineIsometry.image_intrinsicInterior`. ## Collaboration This PR was developed together with @imathwy. t-analysis new-contributor 28/0 Mathlib/Analysis/Convex/Intrinsic.lean 1 4 ['github-actions', 'themathqueen'] nobody
1-10
1 day ago
1-15613
1 day ago
1-15604
1 day
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 59/0 Mathlib/Data/FinEnum.lean 1 12 ['dtumad', 'github-actions', 'joneugster', 'linesthatinterlace'] joneugster
assignee:joneugster
0-82757
22 hours ago
20-70894
20 days ago
25-20718
25 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-67446
18 hours ago
7-54745
7 days ago
7-55499
7 days
38309 ntapiam
author:ntapiam
feat(Algebra/NonAssoc): dendriform algebras Define dendriform semirings and algebras --- This PR introduces dendriform structures such as dendriform semirings and algebras, and proves basic facts linking them to their pre-Lie counterparts. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
270/0 Mathlib.lean,Mathlib/Algebra/NonAssoc/Dendriform/Defs.lean,docs/references.bib 3 3 ['github-actions'] nobody
0-60627
16 hours ago
0-61965
17 hours ago
0-62054
17 hours
38114 javgomzar
author:javgomzar
feat(FinitelyPresentedGroup): add finite groups instance Add IsFinitelyPresented instance for finite groups. Co-authored-by: Hang Lu Su , Thomas Browning --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory new-contributor large-import 31/3 Mathlib/GroupTheory/FinitelyPresentedGroup.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean 2 31 ['github-actions', 'javgomzar', 'kbuzzard', 'mathlib-merge-conflicts', 'plp127', 'tb65536', 'vihdzp'] nobody
0-59286
16 hours ago
0-59288
16 hours ago
2-49186
2 days
38310 ZRTMRH
author:ZRTMRH
feat(Combinatorics/Quiver/Schreier): word evaluation and reachability Adds word evaluation and reachability results to the Schreier graph API. * `SchreierGraph.evalWord` : evaluates a word `List (S × Bool)` as an element of the ambient group, where `(s, true)` contributes `ι s` and `(s, false)` contributes `(ι s)⁻¹`. * `SchreierGraph.evalWord_eq_lift` : agreement with `FreeGroup.lift`. * `SchreierGraph.evalWord_mem_closure` : every word evaluates into the subgroup generated by `ι`. * `SchreierGraph.pathFromWord` : a Bool-tagged word yields a path in `Symmetrify (SchreierGraph V ι)` from `x` to `evalWord ι w • x`. * `SchreierGraph.reachable_iff` : two vertices are connected by a path in the symmetrification iff some element of the subgroup closure carries one to the other. Follow-up to #36320. This PR was written with AI assistance (Claude). The code has been reviewed by the author. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics large-import 157/0 Mathlib/Combinatorics/Quiver/Schreier.lean 1 2 ['github-actions'] nobody
0-55594
15 hours ago
0-55673
15 hours ago
0-55664
15 hours
38314 pedroscortes
author:pedroscortes
feat(CategoryTheory/Monoidal): tensorμ_braid_swap and tensor-product IsCommComonObj --- ## Summary Two symmetric-monoidal coherence results in a new file `Mathlib/CategoryTheory/Monoidal/Symmetric/TensorBraidSwap.lean`: 1. `MonoidalCategory.tensorμ_braid_swap` — canonical rearrangement `tensorμ A A Y Y` intertwines the braiding on `A ⊗ Y` with the pair of braidings on `A` and `Y`. Sibling of `CategoryTheory.MonObj.mul_braiding` (`Mathlib.CategoryTheory.Monoidal.Mon_`, line 759). 2. Tensor-product instance for `IsCommComonObj`: if `A, B` carry commutative comonoid structures in a symmetric monoidal category, so does `A ⊗ B`. Reduces `comul_comm` for `Δ[A ⊗ B]` via `tensorμ_braid_swap` to the pointwise hypotheses. Fills a gap in `Mathlib/CategoryTheory/Monoidal/CommComon_.lean`, which currently provides only the unit instance (`instCommComonObjUnit`) and the auto-instance for cartesian categories (`instIsCommComonObjOfCartesian`). ## Placement rationale Placed in a new `Symmetric/` subdirectory rather than appended to `Braided/Basic.lean` because the latter's top-level `variable [BraidedCategory C]` creates an instance diamond against any locally-added `[SymmetricCategory C]`. On v4.30.0-rc2 this diamond blocks `rw [SymmetricCategory.symmetry]` motive extraction through `A ◁ _ ▷ Y` — the pattern is literally present in the target, but the two distinct `BraidedCategory C` instances (outer variable vs `SymmetricCategory.toBraidedCategory`) cause the rewrite to fail. A new file with only `[SymmetricCategory C]` as its variable avoids this. ## Downstream consumer The `IsCommComonObj` tensor-product instance is load-bearing for the external library [markovcat](https://github.com/pedroscortes/markovcat) (formalising Fritz–Klingler Markov categories), specifically for symmetry of the conditional-independence predicate on compound objects. ## Checks - `lake build Mathlib.CategoryTheory.Monoidal.Symmetric.TensorBraidSwap` — green. - `lake exe lint-style` — clean (exit 0). - Rebased onto current `master`; single commit; 72 insertions across two files (new file + one-line `Mathlib.lean` registration). Opening as draft to let CI run before requesting review. t-category-theory new-contributor 72/0 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Symmetric/TensorBraidSwap.lean 2 2 ['github-actions'] nobody
0-51791
14 hours ago
0-51791
14 hours ago
0-51782
14 hours
34815 Deep0Thinking
author:Deep0Thinking
feat(Analysis/SpecialFunctions/ImproperIntegrals): Frullani integral - [x] depends on: #34966 --- Add a proof of **Frullani integral**. Main theorems: - `Frullani.integral_Ioi` - `IntegrableOn.tendsto_integral_Ioi` - `exists_integral_div_eq_mul_log` Supporting lemmas: - `Frullani.comp_mul_left_div` - `Frullani.intervalIntegrable_div` - `Frullani.exists_integral_div_eq_mul_log` - `Ioi_diff_Ioc` - `ContinuousOn.comp_mul_left_div`, `ContinuousOn.comp_mul_right_div` - `ContinuousOn.comp_mul_left`, `ContinuousOn.comp_mul_right` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor large-import t-analysis 265/4 Mathlib/Analysis/SpecialFunctions/ImproperIntegrals.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/MeanValue.lean,Mathlib/Topology/Algebra/GroupWithZero.lean,Mathlib/Topology/Algebra/Monoid.lean 4 10 ['CoolRmal', 'Deep0Thinking', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'sgouezel'] urkud
assignee:urkud
0-49738
13 hours ago
0-53152
14 hours ago
7-8114
7 days
36787 hommmmm
author:hommmmm
feat(RingTheory/LocalRing): Krull dimension results for maximal ideal of local ring Adds 1 declaration: * `IsLocalRing.maximalIdeal_sq_lt`: In a Noetherian local ring of positive Krull dimension, the square of the maximal ideal is a proper subset of the maximal ideal. 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 12/0 Mathlib/RingTheory/Ideal/KrullsHeightTheorem.lean 1 18 ['NoahW314', 'chrisflav', 'github-actions', 'hommmmm', 'tb65536', 'wwylele'] chrisflav
assignee:chrisflav
0-48209
13 hours ago
0-48238
13 hours ago
34-1841
34 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 45 ['Vilin97', 'YanYablonovskiy', 'adomani', 'botbaki-review', 'copilot-pull-request-reviewer', 'dagurtomas', 'eric-wieser', 'github-actions', 'grunweg', 'j-loreaux', 'wwylele'] j-loreaux
assignee:j-loreaux
0-45577
12 hours ago
5-49559
5 days ago
31-31199
31 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 8 ['JadAbouHawili', 'artie2000', 'github-actions', 'wwylele'] nobody
0-40632
11 hours ago
9-53577
9 days ago
12-73156
12 days
38319 Zetetic-Dhruv
author:Zetetic-Dhruv
feat(Combinatorics/SetFamily): Assouad's dual VC bound Adds the Finset-level form of Assouad's 1983 dual VC bound: if a family `𝒜 : Finset (Finset α)` has VC dimension at most `d`, then for any ground set `X : Finset α` the dual family `{𝒜.filter (· ∋ x) : x ∈ X}` has VC dimension at most `2 ^ (d + 1) - 1`. New declarations (in `Finset` namespace): - `dualFamily 𝒜 X`: for each `x ∈ X`, the subfamily `{A ∈ 𝒜 | x ∈ A}` - `mem_dualFamily` (`@[simp]`): membership characterisation - `exists_shatters_of_dualFamily_shatters`: Assouad's bitstring-coding lemma - `vcDim_dualFamily_le`: the headline VC bound Proof by Assouad's classical bitstring-coding argument. Sits on top of `Finset.shatterer` / `Finset.vcDim` from `Mathlib.Combinatorics.SetFamily.Shatter`. References: - P. Assouad, Densite et dimension, Ann. Inst. Fourier 33(3) (1983), Thm 2.13 - J. Matousek, Lectures on Discrete Geometry, GTM 212, Springer, 2002, Section 10.3 Lemma 10.3.3 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 187/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/DualVC.lean 2 5 ['Shreyas4991', 'Zetetic-Dhruv', 'github-actions'] nobody
0-37654
10 hours ago
0-41843
11 hours ago
0-41834
11 hours
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'] nobody
0-36804
10 hours ago
44-77942
44 days ago
51-44250
51 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'] mariainesdff
assignee:mariainesdff
0-36319
10 hours ago
32-2471
32 days ago
32-2462
32 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$
16/7 Mathlib/Algebra/Order/BigOperators/Ring/Finset.lean,Mathlib/Algebra/Order/Ring/Unbundled/Basic.lean 2 12 ['github-actions', 'leanprover-radar', 'mortarsanjaya', 'themathqueen'] nobody
0-26914
7 hours ago
0-48468
13 hours ago
5-11654
5 days
38296 mike1729
author:mike1729
feat(MeasureTheory/LpSpace): Isometric embedding L∞ → (L¹)* For a finite measure `μ` and scalar field `𝕜` (any `RCLike`), adds the isometric `𝕜`-linear embedding `Lp 𝕜 ∞ μ →ₗᵢ[𝕜] StrongDual 𝕜 (Lp 𝕜 1 μ)` given by the pairing `g f ↦ ∫ x, g x * f x ∂μ`. Surjectivity (upgrading to the isometric equivalence `Lp 𝕜 ∞ μ ≃ₗᵢ[𝕜] StrongDual 𝕜 (Lp 𝕜 1 μ)`) is addressed in the follow-up PR: https://github.com/leanprover-community/mathlib4/pull/38295. New declarations: - `Mathlib/MeasureTheory/Function/LpSpace/Dual.lean` (new file): `MeasureTheory.Lp.lInftyL1Pairing`, `norm_le_norm_lpPairing_mul_apply`, `lInftyToL1Dualₗᵢ` (and its `_apply_apply` simp lemma). - `Mathlib/MeasureTheory/Function/LpSpace/Basic.lean`: `MeasureTheory.Lp.ae_norm_le_norm`, `MeasureTheory.Lp.measure_norm_gt_pos_of_lt_norm` (general `L∞` helper lemmas). - `Mathlib/MeasureTheory/Function/Holder.lean`: `ContinuousLinearMap.norm_lpPairing_apply_apply_le`, `norm_lpPairing_apply_le` (Hölder-style operator-norm bounds for `lpPairing`). Future PRs: - generalize to Holder conjugates with `p>1`, - generalize to sigma finite measures. --> [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability new-contributor 176/0 Mathlib.lean,Mathlib/MeasureTheory/Function/Holder.lean,Mathlib/MeasureTheory/Function/LpSpace/Basic.lean,Mathlib/MeasureTheory/Function/LpSpace/Dual.lean 4 5 ['github-actions', 'kbuzzard', 'mike1729'] kex-y
assignee:kex-y
0-21775
6 hours ago
0-74506
20 hours ago
0-74497
20 hours
38316 tannerduve
author:tannerduve
feat(Order/OmegaCompletePartialOrder): least fixed point and Scott induction Add `lfp` for endomorphisms on an ωCPO with a least element and its basic API (`map_lfp`, `isFixedPt_lfp`, `lfp_le_fixed`, `isLeast_lfp`) and the Scott induction theorem `lfp_induction` Also add corresponding induction principles for `Part.fix`: `fix_scott_induction` (ω-Scott continuous functional, admissible predicate) and `fix_scott_induction_pointwise` new-contributor 101/0 Mathlib/Control/LawfulFix.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,docs/references.bib 3 2 ['github-actions'] nobody
0-18360
5 hours ago
0-37276
10 hours ago
0-37793
10 hours
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 193/115 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 8 ['github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mike1729'] nobody
0-9705
2 hours ago
0-9731
2 hours ago
25-50012
25 days
38308 drocta
author:drocta
feat(Algebra/Colimit/DirectLimit): add star structures (Star, StarRing, etc.) on DirectLimit add `Star`, `InvolutiveStar`, `StarMul`, `StarAddMonoid`, `StarRing`, and `StarModule` instances to `DirectLimit`, following the pattern of existing algebraic structures in `Mathlib.Algebra.Colimit.DirectLimit`. also add the universal property API (`of`, `lift`, `hom_ext`, `of_f`, `lift_of`) for `StarRing`. --- Use of AI: I did make some use of ChatGPT for some advice while writing this code, as well as the auto-complete built into VS Code. However, I can personally vouch for all of the code I am submitting, and that I understand all of it. This is the first part of my project towards supporting direct limits of $C^*$-algebras (as I described [on Zulip](https://leanprover.zulipchat.com/#narrow/channel/113489-new-members/topic/Early.20feedback.20on.20approach.20towards.20formalizing.20UHF.20algebras.3F) ). This PR adds an import of `Mathlib.Algebra.Star.StarRingHom` to `Mathlib.Algebra.Colimit.DirectLimit`, because it needs it. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
127/6 Mathlib/Algebra/Colimit/DirectLimit.lean 1 10 ['drocta', 'eric-wieser', 'github-actions', 'themathqueen'] nobody
0-5920
1 hour ago
0-66070
18 hours ago
0-66061
18 hours
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'] nobody
0-4785
1 hour ago
18-32985
18 days ago
29-66050
29 days
38170 maddycrim
author:maddycrim
feat(Algebra/Module/FinitePresentation): Finitely Presented Module Lemma From FLT Project Main Definitions: `Module.FinitePresentation.exists_fin_exact` : A finitely presented module M admits an exact sequence F' -> F -> M -> 0 where F' and F are finite free modules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
14/0 Mathlib/Algebra/Module/FinitePresentation.lean 1 14 ['github-actions', 'maddycrim', 'themathqueen'] nobody
0-4526
1 hour ago
0-32057
8 hours ago
3-54692
3 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
20-6133
20 days ago
20-6198
20 days ago
20-6189
20 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
10-76357
10 days ago
10-78634
10 days ago
10-78696
10 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
8-43033
8 days ago
8-60053
8 days ago
8-60044
8 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
7-84480
7 days ago
7-84544
7 days ago
7-85123
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
7-45581
7 days ago
7-45605
7 days ago
10-57933
10 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 maintainer-merge
label:t-algebra$
1/7 Mathlib/Algebra/Order/SuccPred.lean 1 3 ['Komyyy', 'github-actions', 'plp127'] nobody
3-14524
3 days ago
6-4012
6 days ago
6-4061
6 days
38219 wwylele
author:wwylele
feat(AffineSpace): gcongr lemma for AffineSubspace.mk' --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
9/0 Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean 1 2 ['github-actions', 'wwylele'] nobody
2-51444
2 days ago
2-51511
2 days ago
2-51502
2 days
38217 themathqueen
author:themathqueen
chore(Algebra): remove some broken dot notation porting notes --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra tech debt easy
label:t-algebra$
8/17 Mathlib/Algebra/Category/ModuleCat/Kernels.lean,Mathlib/Algebra/Module/Torsion/Basic.lean 2 1 ['artie2000', 'github-actions'] nobody
1-42630
1 day ago
2-51799
2 days ago
2-52461
2 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 4 ['artie2000', 'github-actions', 'vihdzp'] nobody
1-42070
1 day ago
8-37629
8 days ago
8-37808
8 days
38237 vihdzp
author:vihdzp
feat: generalize `IsSuccLimit.bot_lt` to preorders --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order easy maintainer-merge 15/7 Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/SuccPred/Limit.lean 2 4 ['YaelDillies', 'artie2000', 'github-actions', 'vihdzp'] nobody
1-13516
1 day ago
2-9861
2 days ago
2-9852
2 days
38287 b-mehta
author:b-mehta
feat(Data/Set/Function): make mapsTo_univ a simp lemma --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-data 1/1 Mathlib/Data/Set/Function.lean 1 1 ['github-actions'] nobody
1-3172
1 day ago
1-3259
1 day ago
1-3250
1 day
38286 b-mehta
author:b-mehta
feat(Logic/Equiv/Defs): add coe_ofBijective simp lemma We have the applied version of this, but that doesn't fire on the coerced equiv --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-logic 2/0 Mathlib/Logic/Equiv/Defs.lean 1 4 ['b-mehta', 'eric-wieser', 'github-actions', 'plp127'] nobody
0-76095
21 hours ago
1-3479
1 day ago
1-3470
1 day
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 8 ['JadAbouHawili', 'artie2000', 'github-actions', 'wwylele'] nobody
0-40632
11 hours ago
9-53577
9 days ago
12-73156
12 days
38285 b-mehta
author:b-mehta
feat(GroupTheory/GroupAction/FixedPoints): characterise when there are no fixed points by an action Characterise when the set of points fixed by an action of a cancellative monoid action is empty. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-group-theory 8/0 Mathlib/GroupTheory/GroupAction/FixedPoints.lean 1 2 ['github-actions', 'tb65536'] tb65536
assignee:tb65536
0-23835
6 hours ago
1-3534
1 day ago
1-3525
1 day
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 easy 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 3 ['github-actions', 'harahu', 'vihdzp'] Vierkantor
assignee:Vierkantor
0-9656
2 hours ago
16-56753
16 days ago
16-57148
16 days

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
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
8-8287
8 days ago
15-44975
15 days ago
15-45544
15 days
38152 grunweg
author:grunweg
feat: lint against new cases of the backward.inferInstanceAs.wrap.reu… …seSubInstances option This marks new technical debt: it should not happen at all (and if it does, disabling the linter explicitly should be a necessary speed bump): [zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Technical.20Debt.20Counters/near/586058368) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt t-logic t-linter maintainer-merge 8/2 Mathlib/Order/OrderDual.lean,Mathlib/Tactic/Linter/Style.lean 2 6 ['JovanGerb', 'github-actions', 'grunweg'] nobody
4-1257
4 days ago
4-11939
4 days ago
4-12032
4 days
38217 themathqueen
author:themathqueen
chore(Algebra): remove some broken dot notation porting notes --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra tech debt easy
label:t-algebra$
8/17 Mathlib/Algebra/Category/ModuleCat/Kernels.lean,Mathlib/Algebra/Module/Torsion/Basic.lean 2 1 ['artie2000', 'github-actions'] nobody
1-42630
1 day ago
2-51799
2 days ago
2-52461
2 days