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 22, 2026 at 15:17 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
31-80881
1 month ago
33-75462
33 days ago
35-16057
35 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
30-66255
30 days ago
30-65678
30 days ago
30-79002
30 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
28-3594
28 days ago
28-2982
28 days ago
34-8422
34 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
26-37720
26 days ago
28-55882
28 days ago
28-55295
28 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
22-86235
22 days ago
22-85552
22 days ago
23-469
23 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
21-50957
21 days ago
30-69198
30 days ago
35-15685
35 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
21-25731
21 days ago
21-24978
21 days ago
21-30577
21 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
21-20760
21 days ago
21-20180
21 days ago
21-19593
21 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
21-13393
21 days ago
21-12670
21 days ago
27-64212
27 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
21-7869
21 days ago
32-86077
32 days ago
32-85490
32 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
20-61151
20 days ago
20-60419
20 days ago
21-68933
21 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
20-51377
20 days ago
21-7795
21 days ago
21-33458
21 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
20-51361
20 days ago
21-21375
21 days ago
21-20788
21 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
20-22561
20 days ago
20-21373
20 days ago
20-38957
20 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
20-6718
20 days ago
20-4693
20 days ago
20-4106
20 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
19-62614
19 days ago
19-61933
19 days ago
19-61346
19 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
19-61253
19 days ago
19-60570
19 days ago
19-59983
19 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
19-51271
19 days ago
35-2763
35 days ago
35-2176
35 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
19-51263
19 days ago
20-11189
20 days ago
20-10602
20 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
19-47554
19 days ago
19-44518
19 days ago
33-49867
33 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
19-20768
19 days ago
19-20126
19 days ago
77-696
77 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
19-5758
19 days ago
26-52055
26 days ago
26-51468
26 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
19-4608
19 days ago
19-3943
19 days ago
20-34145
20 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
18-77525
18 days ago
18-76716
18 days ago
61-52276
61 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
18-77227
18 days ago
18-76546
18 days ago
19-56574
19 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
18-72585
18 days ago
18-71925
18 days ago
22-41638
22 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
18-72584
18 days ago
18-76472
18 days ago
91-36226
91 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
18-57455
18 days ago
18-56717
18 days ago
18-56130
18 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
18-53875
18 days ago
19-73169
19 days ago
19-72582
19 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
18-51402
18 days ago
26-50784
26 days ago
26-50197
26 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
18-51396
18 days ago
20-10030
20 days ago
20-9443
20 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
17-84826
17 days ago
17-83664
17 days ago
30-60258
30 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
17-79553
17 days ago
17-78807
17 days ago
17-78220
17 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
17-40821
17 days ago
17-57058
17 days ago
17-56471
17 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
16-85775
16 days ago
16-86246
16 days ago
39-74205
39 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
16-67038
16 days ago
16-65439
16 days ago
16-64852
16 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
16-63968
16 days ago
16-61423
16 days ago
16-60836
16 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
16-51162
16 days ago
25-10346
25 days ago
25-9759
25 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
16-51160
16 days ago
21-84696
21 days ago
21-84109
21 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
15-79271
15 days ago
15-78127
15 days ago
22-41477
22 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
15-70918
15 days ago
15-70196
15 days ago
42-33598
42 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
15-64658
15 days ago
15-63873
15 days ago
15-73280
15 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
15-25720
15 days ago
15-25091
15 days ago
16-20921
16 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
15-18548
15 days ago
15-17891
15 days ago
19-84640
19 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
15-3118
15 days ago
15-937
15 days ago
15-350
15 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
14-82110
14 days ago
14-78587
14 days ago
14-78000
14 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
14-81612
14 days ago
14-85087
14 days ago
14-84500
14 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
14-81523
14 days ago
14-85834
14 days ago
14-85247
14 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
14-79303
14 days ago
14-79303
14 days ago
14-78716
14 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
14-76079
14 days ago
14-75375
14 days ago
17-3584
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
14-47020
14 days ago
14-44298
14 days ago
14-43711
14 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
14-37965
14 days ago
14-37374
14 days ago
21-64884
21 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
14-18322
14 days ago
14-20351
14 days ago
33-41545
33 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
14-7714
14 days ago
14-5871
14 days ago
36-82246
36 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
14-2869
14 days ago
13-84477
13 days ago
15-2153
15 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
13-84582
13 days ago
13-81110
13 days ago
27-85367
27 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
13-67423
13 days ago
13-65859
13 days ago
29-73913
29 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
13-60996
13 days ago
13-61145
13 days ago
13-60558
13 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
13-60512
13 days ago
13-58800
13 days ago
48-79416
48 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
13-56171
13 days ago
20-8698
20 days ago
35-62272
35 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
13-51421
13 days ago
34-27161
34 days ago
37-14528
37 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
13-51418
13 days ago
17-3374
17 days ago
28-47641
28 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
13-51412
13 days ago
16-80801
16 days ago
18-10457
18 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
13-25542
13 days ago
13-23782
13 days ago
23-57027
23 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
13-5455
13 days ago
13-5455
13 days ago
30-18424
30 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
13-176
13 days ago
12-85875
12 days ago
12-85288
12 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
12-80078
12 days ago
12-78214
12 days ago
27-48781
27 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
12-64638
12 days ago
12-63762
12 days ago
37-77978
37 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
12-64247
12 days ago
12-63603
12 days ago
15-85906
15 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
12-59383
12 days ago
12-57796
12 days ago
14-51849
14 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
12-57803
12 days ago
12-57235
12 days ago
22-61960
22 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
12-51217
12 days ago
40-16367
40 days ago
40-16902
40 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
12-51206
12 days ago
13-26573
13 days ago
13-25986
13 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
12-51205
12 days ago
13-23070
13 days ago
13-22483
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
12-36190
12 days ago
12-34848
12 days ago
148-32044
148 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
12-35625
12 days ago
14-7356
14 days ago
14-7475
14 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
12-27116
12 days ago
12-27275
12 days ago
60-48741
60 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
12-20847
12 days ago
13-1162
13 days ago
13-575
13 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
12-17329
12 days ago
13-5295
13 days ago
13-4708
13 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
12-16937
12 days ago
12-16274
12 days ago
20-75081
20 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
12-3410
12 days ago
12-3410
12 days ago
12-2823
12 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
11-78097
11 days ago
11-78097
11 days ago
11-77510
11 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
11-51334
11 days ago
34-21798
34 days ago
34-21211
34 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
11-51322
11 days ago
12-38822
12 days ago
12-38235
12 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
11-49163
11 days ago
12-10672
12 days ago
12-10085
12 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
11-28538
11 days ago
11-25243
11 days ago
35-76708
35 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
11-26178
11 days ago
11-23016
11 days ago
29-16509
29 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
11-26142
11 days ago
11-24358
11 days ago
37-65381
37 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
11-8861
11 days ago
11-8235
11 days ago
11-7648
11 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
10-71491
10 days ago
10-70793
10 days ago
15-81027
15 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
10-68843
10 days ago
10-74612
10 days ago
14-52955
14 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
10-58527
10 days ago
10-57860
10 days ago
11-15422
11 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
10-51014
10 days ago
20-74255
20 days ago
20-73668
20 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
10-51012
10 days ago
20-62570
20 days ago
20-61983
20 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
10-51011
10 days ago
11-47050
11 days ago
11-46463
11 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
10-35700
10 days ago
10-33636
10 days ago
22-15528
22 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
10-32403
10 days ago
10-31731
10 days ago
12-760
12 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
10-18065
10 days ago
10-17408
10 days ago
45-58568
45 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
10-2297
10 days ago
10-1749
10 days ago
10-1162
10 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
9-85710
9 days ago
9-84143
9 days ago
9-83556
9 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
9-71831
9 days ago
9-68971
9 days ago
15-30610
15 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
9-71023
9 days ago
9-70328
9 days ago
25-35001
25 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
9-50929
9 days ago
31-68378
31 days ago
52-16667
52 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
9-50927
9 days ago
45-67307
45 days ago
45-66720
45 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
9-38201
9 days ago
9-37977
9 days ago
9-37390
9 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
9-14384
9 days ago
9-15884
9 days ago
22-55710
22 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
9-12707
9 days ago
9-12127
9 days ago
9-11540
9 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
9-10461
9 days ago
9-9512
9 days ago
47-15219
47 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
9-3106
9 days ago
9-1815
9 days ago
60-56389
60 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
9-3070
9 days ago
8-84584
8 days ago
10-20207
10 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
9-2008
9 days ago
8-84866
8 days ago
13-11445
13 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
8-80612
8 days ago
8-79696
8 days ago
8-79109
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
8-65752
8 days ago
8-65069
8 days ago
9-54830
9 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
8-60717
8 days ago
8-58869
8 days ago
8-58282
8 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
8-56376
8 days ago
8-84118
8 days ago
12-27199
12 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
8-51432
8 days ago
27-72163
27 days ago
38-4950
38 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
8-51431
8 days ago
79-79866
79 days ago
98-56180
98 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
8-51430
8 days ago
82-72356
82 days ago
94-17869
94 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
8-51423
8 days ago
31-37775
31 days ago
31-37188
31 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
8-50932
8 days ago
34-3895
34 days ago
47-27900
47 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
8-50930
8 days ago
35-49037
35 days ago
35-48450
35 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
8-50929
8 days ago
20-58945
20 days ago
22-22573
22 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
8-50921
8 days ago
11-18736
11 days ago
11-18149
11 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
8-20294
8 days ago
8-18676
8 days ago
12-26338
12 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
8-12979
8 days ago
8-12307
8 days ago
8-12101
8 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
8-10842
8 days ago
8-17277
8 days ago
13-12149
13 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
8-8185
8 days ago
8-7154
8 days ago
25-77908
25 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
8-6424
8 days ago
8-5456
8 days ago
27-40654
27 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
7-79315
7 days ago
9-58258
9 days ago
20-57917
20 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
7-66792
7 days ago
7-64881
7 days ago
8-58941
8 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
7-61672
7 days ago
7-60714
7 days ago
21-71637
21 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
7-51432
7 days ago
31-46632
31 days ago
34-44709
34 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
7-50971
7 days ago
46-29912
46 days ago
46-29325
46 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
7-50969
7 days ago
39-49005
39 days ago
39-48418
39 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
7-50969
7 days ago
18-63872
18 days ago
37-82119
37 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
7-50967
7 days ago
20-86098
20 days ago
21-36329
21 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
7-50964
7 days ago
20-16182
20 days ago
20-15595
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
7-50963
7 days ago
15-53620
15 days ago
15-53033
15 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
7-39748
7 days ago
7-38654
7 days ago
7-38067
7 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
7-32619
7 days ago
7-31298
7 days ago
39-77403
39 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
7-28106
7 days ago
7-27400
7 days ago
7-26813
7 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
7-17841
7 days ago
7-17204
7 days ago
39-33550
39 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
7-12242
7 days ago
12-55528
12 days ago
41-77636
41 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
7-7731
7 days ago
7-5464
7 days ago
8-23433
8 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
7-3238
7 days ago
7-9280
7 days ago
17-25181
17 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
6-85181
6 days ago
12-23749
12 days ago
12-23162
12 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
6-83516
6 days ago
8-1980
8 days ago
8-9764
8 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
6-79506
6 days ago
6-77002
6 days ago
10-79483
10 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
6-74704
6 days ago
8-63228
8 days ago
9-2186
9 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
6-73628
6 days ago
6-73628
6 days ago
16-4899
16 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
6-72308
6 days ago
6-72339
6 days ago
6-71752
6 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
6-69307
6 days ago
6-68328
6 days ago
6-85677
6 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
6-67121
6 days ago
6-81199
6 days ago
12-59603
12 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
6-50863
6 days ago
13-65436
13 days ago
78-43262
78 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
6-50861
6 days ago
30-78533
30 days ago
30-77946
30 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
6-50858
6 days ago
8-47617
8 days ago
19-72322
19 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
6-50856
6 days ago
6-84077
6 days ago
7-69449
7 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
6-50854
6 days ago
7-70473
7 days ago
7-69886
7 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
6-50851
6 days ago
7-80945
7 days ago
7-80358
7 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
6-46208
6 days ago
6-48624
6 days ago
6-48037
6 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
6-45692
6 days ago
20-5739
20 days ago
22-43252
22 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
6-36309
6 days ago
6-38225
6 days ago
6-37638
6 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
6-28781
6 days ago
6-28781
6 days ago
63-33951
63 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
6-23628
6 days ago
6-22964
6 days ago
38-32872
38 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
6-20325
6 days ago
6-19646
6 days ago
6-19926
6 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
6-13520
6 days ago
6-12790
6 days ago
9-24306
9 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
6-12476
6 days ago
6-11724
6 days ago
21-30756
21 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
6-10703
6 days ago
6-10040
6 days ago
25-8628
25 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
6-6641
6 days ago
6-5949
6 days ago
24-9489
24 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
6-3557
6 days ago
6-3774
6 days ago
6-3187
6 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
6-3223
6 days ago
6-1992
6 days ago
71-66599
71 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
6-2421
6 days ago
6-1566
6 days ago
6-979
6 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
6-1130
6 days ago
20-60457
20 days ago
25-32025
25 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
5-74529
5 days ago
10-81674
10 days ago
11-15357
11 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
5-71819
5 days ago
5-77205
5 days ago
22-14079
22 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
5-71158
5 days ago
12-68357
12 days ago
35-79397
35 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
5-71147
5 days ago
12-68494
12 days ago
35-74754
35 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
5-67200
5 days ago
5-67200
5 days ago
7-18800
7 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
5-64703
5 days ago
5-68072
5 days ago
17-8615
17 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
5-60149
5 days ago
5-60149
5 days ago
20-59276
20 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
5-52891
5 days ago
5-52891
5 days ago
69-68948
69 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
5-51431
5 days ago
32-51091
32 days ago
34-68305
34 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
5-50969
5 days ago
32-13233
32 days ago
32-12646
32 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
5-50968
5 days ago
18-80035
18 days ago
19-84553
19 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
5-50967
5 days ago
15-70026
15 days ago
15-69439
15 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
5-50965
5 days ago
13-48158
13 days ago
14-21680
14 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
5-50953
5 days ago
5-70850
5 days ago
5-70263
5 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
5-50383
5 days ago
6-31490
6 days ago
6-34530
6 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
5-48256
5 days ago
5-47639
5 days ago
5-47052
5 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
5-44142
5 days ago
5-43434
5 days ago
6-23711
6 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
5-42908
5 days ago
5-44174
5 days ago
5-43587
5 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
5-39440
5 days ago
5-38820
5 days ago
8-33700
8 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
5-28909
5 days ago
5-28254
5 days ago
25-78022
25 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
5-28658
5 days ago
5-27866
5 days ago
5-27624
5 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
5-23602
5 days ago
5-22990
5 days ago
21-75079
21 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
5-20237
5 days ago
20-4354
20 days ago
20-6368
20 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
5-15809
5 days ago
5-18433
5 days ago
10-21636
10 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
5-8702
5 days ago
5-5092
5 days ago
7-75870
7 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
5-8569
5 days ago
10-1208
10 days ago
10-621
10 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
5-4283
5 days ago
5-3417
5 days ago
30-11168
30 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
5-2482
5 days ago
5-2482
5 days ago
12-22812
12 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
5-1617
5 days ago
5-1014
5 days ago
9-2280
9 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
5-1412
5 days ago
5-782
5 days ago
9-24436
9 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
5-1384
5 days ago
5-1384
5 days ago
29-44227
29 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
5-420
5 days ago
5-583
4 days ago
152-61525
152 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
4-81136
4 days ago
4-80374
4 days ago
4-85489
4 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
4-81013
4 days ago
4-81742
4 days ago
21-29705
21 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
4-80392
4 days ago
8-24207
8 days ago
29-85410
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
4-79968
4 days ago
17-56927
17 days ago
26-70318
26 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
4-79898
4 days ago
4-79208
4 days ago
20-6674
20 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
4-79881
4 days ago
11-4569
11 days ago
18-36528
18 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
4-79706
4 days ago
13-41983
13 days ago
13-41396
13 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
4-79427
4 days ago
5-701
5 days ago
6-8707
6 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
4-78034
4 days ago
4-81456
4 days ago
4-81286
4 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
4-76178
4 days ago
4-77728
4 days ago
17-44077
17 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
4-75441
4 days ago
4-74529
4 days ago
4-73942
4 days
37982 chrisflav
author:chrisflav
feat(RingTheory/Etale): descent along faithfully flat maps From Pi1. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 123/1 Mathlib.lean,Mathlib/RingTheory/Etale/Basic.lean,Mathlib/RingTheory/Etale/Descent.lean 3 5 ['chrisflav', 'github-actions', 'robin-carlier'] mattrobball
assignee:mattrobball
4-74407
4 days ago
4-74407
4 days ago
9-9069
9 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
4-71131
4 days ago
4-72444
4 days ago
5-33594
5 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
4-70367
4 days ago
4-66915
4 days ago
14-52545
14 days
38049 WilliamCoram
author:WilliamCoram
feat: lemmas towards showing gaussNorm on MvPowerSeries is an absolute value We prove lemmas: ``gaussNorm_mul_le`` and ``gaussNorm_le_mul`` which will allow us to show it is an absolute value on Mv restricted power series. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 144/1 Mathlib/RingTheory/MvPowerSeries/GaussNorm.lean 1 4 ['WilliamCoram', 'github-actions'] nobody
4-70094
4 days ago
4-69432
4 days ago
7-78012
7 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
4-65970
4 days ago
4-65533
4 days ago
15-32999
15 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
4-65642
4 days ago
4-63322
4 days ago
4-62735
4 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
4-65237
4 days ago
4-65237
4 days ago
4-64650
4 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
4-64483
4 days ago
4-64483
4 days ago
4-63896
4 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
4-61351
4 days ago
4-61351
4 days ago
4-60764
4 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
4-58611
4 days ago
4-59183
4 days ago
4-64754
4 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
4-57750
4 days ago
4-52539
4 days ago
11-26394
11 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
4-51432
4 days ago
8-54174
8 days ago
33-20193
33 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
4-51249
4 days ago
20-83356
20 days ago
28-78266
28 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
4-51248
4 days ago
5-19778
5 days ago
64-84960
64 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
4-51248
4 days ago
59-12103
59 days ago
59-20631
59 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
4-51247
4 days ago
40-73597
40 days ago
59-3589
59 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
4-51246
4 days ago
16-33146
16 days ago
22-65191
22 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
4-51245
4 days ago
25-59470
25 days ago
30-34167
30 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
4-51244
4 days ago
5-3518
5 days ago
23-74462
23 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
4-51243
4 days ago
13-12721
13 days ago
14-78273
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
4-51241
4 days ago
12-46186
12 days ago
12-45599
12 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
4-51240
4 days ago
9-78712
9 days ago
9-78125
9 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
4-51239
4 days ago
5-74056
5 days ago
5-73469
5 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
4-51234
4 days ago
4-73129
4 days ago
4-72542
4 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
4-46615
4 days ago
4-45954
4 days ago
14-27291
14 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
4-35987
4 days ago
4-35343
4 days ago
4-34756
4 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
4-35214
4 days ago
4-32915
4 days ago
29-84226
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
4-34399
4 days ago
4-34399
4 days ago
7-75629
7 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
4-33048
4 days ago
4-32439
4 days ago
19-34224
19 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
4-27631
4 days ago
4-26858
4 days ago
12-16977
12 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
4-26634
4 days ago
4-24766
4 days ago
9-6420
9 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
4-22286
4 days ago
4-21643
4 days ago
4-21704
4 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
4-19349
4 days ago
4-18549
4 days ago
12-4728
12 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
4-19122
4 days ago
4-55279
4 days ago
4-54692
4 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
4-18847
4 days ago
4-21211
4 days ago
4-20624
4 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
4-18460
4 days ago
4-18460
4 days ago
5-32422
5 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
4-16719
4 days ago
4-15368
4 days ago
4-14781
4 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
4-12813
4 days ago
4-10269
4 days ago
21-86029
21 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
4-4282
4 days ago
4-82081
4 days ago
4-81494
4 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
4-716
4 days ago
3-86394
3 days ago
7-57974
7 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
3-83555
3 days ago
3-82838
3 days ago
6-62736
6 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
3-79324
3 days ago
3-76562
3 days ago
10-25882
10 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
3-75712
3 days ago
3-75321
3 days ago
5-34768
5 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
3-65935
3 days ago
3-62680
3 days ago
17-45140
17 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
3-64955
3 days ago
3-64312
3 days ago
3-63725
3 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
3-61744
3 days ago
3-61094
3 days ago
12-18797
12 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
3-57845
3 days ago
4-23746
4 days ago
4-23159
4 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
3-53440
3 days ago
3-52804
3 days ago
3-52217
3 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
3-51432
3 days ago
25-75372
25 days ago
25-74785
25 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
3-51431
3 days ago
25-75386
25 days ago
25-74799
25 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
3-50874
3 days ago
7-31688
7 days ago
20-21830
20 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
3-50874
3 days ago
5-469
4 days ago
104-63065
104 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
3-50873
3 days ago
20-62065
20 days ago
57-51415
57 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
3-50872
3 days ago
28-20315
28 days ago
47-8784
47 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
3-50871
3 days ago
28-2072
28 days ago
32-34533
32 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
3-50870
3 days ago
14-46125
14 days ago
18-38493
18 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
3-50870
3 days ago
13-50439
13 days ago
15-33983
15 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
3-50869
3 days ago
13-65752
13 days ago
13-65165
13 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
3-50868
3 days ago
8-85557
8 days ago
8-84970
8 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
3-45014
3 days ago
3-62838
3 days ago
3-62251
3 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
3-39921
3 days ago
3-39251
3 days ago
11-45510
11 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
3-36191
3 days ago
3-39227
3 days ago
4-3004
4 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
3-36036
3 days ago
3-35429
3 days ago
3-34842
3 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
3-15679
3 days ago
3-14750
3 days ago
3-30967
3 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
2-83428
2 days ago
3-10381
3 days ago
3-10721
3 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
2-79881
2 days ago
2-79247
2 days ago
42-23883
42 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
2-57350
2 days ago
2-55112
2 days ago
3-18081
3 days
37967 vihdzp
author:vihdzp
chore: add `simp` to `aleph0_lt_univ`, etc Used in the CGT repo. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory easy 5/1 Mathlib/SetTheory/Ordinal/Univ.lean 1 4 ['artie2000', 'github-actions', 'vihdzp'] nobody
2-56697
2 days ago
9-50611
9 days ago
9-50024
9 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
2-51432
2 days ago
24-9651
24 days ago
42-68294
42 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
2-51431
2 days ago
25-75383
25 days ago
25-74796
25 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
2-51431
2 days ago
29-18021
29 days ago
29-17434
29 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
2-51430
2 days ago
55-69945
55 days ago
58-18353
58 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
2-50916
2 days ago
18-80093
18 days ago
18-79506
18 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
2-50915
2 days ago
4-3922
4 days ago
19-13774
19 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
2-50914
2 days ago
19-47038
19 days ago
19-59365
19 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
2-50726
2 days ago
2-50085
2 days ago
2-68564
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
2-41321
2 days ago
19-20096
19 days ago
32-86252
32 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
2-38860
2 days ago
2-44179
2 days ago
8-27940
8 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
2-35361
2 days ago
2-34693
2 days ago
30-23805
30 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
2-26282
2 days ago
2-23213
2 days ago
2-22626
2 days
28685 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): prove the minimal-degree version of the Erdős-Stone theorem Proves the minimal degree-version of the Erdős-Stone theorem: If `G` has a minimal degree of at least `(1 - 1 / r + o(1)) * card V`, then `G` contains a copy of a `completeEquipartiteGraph` in `r + 1` parts each of size `t`. The double-counting construction from the proof is available in `namespace ErdosStone`. --- - [x] depends on: #25843 - [x] depends on: #27597 - [x] depends on: #27599 - [x] depends on: #28443 - [x] depends on: #28445 - [x] depends on: #28446 - [x] depends on: #28447 This is the first of several pull requests towards the full Erdős-Stone(-Simonovits) theorem, hence the name of the file. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 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
2-25888
2 days ago
2-31871
2 days ago
51-28446
51 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
2-20772
2 days ago
2-20241
2 days ago
2-19654
2 days
37816 marcelolynch
author:marcelolynch
fix: Fail lake exe cache on unexpected arguments, add --help Currently, `lake exe cache` just ignores unexpected arguments. This leads to unexpected situations like `lake exe cache get --help` being equivalent to `lake exe cache get`. Let's be louder and complain if anything is unexpected. CI 24/3 Cache/Main.lean 1 7 ['adomani', 'github-actions', 'joneugster', 'marcelolynch'] joneugster
assignee:joneugster
2-20318
2 days ago
8-44475
8 days ago
8-50178
8 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
2-19877
2 days ago
2-17116
2 days ago
3-59425
3 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
2-18318
2 days ago
2-78177
2 days ago
16-79380
16 days
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
2-17408
2 days ago
2-17900
2 days ago
2-17313
2 days
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
2-16310
2 days ago
2-15304
2 days ago
5-50491
5 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
2-16094
2 days ago
2-15977
2 days ago
2-18947
2 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
2-15500
2 days ago
11-85334
11 days ago
11-85486
11 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
2-14637
2 days ago
2-13961
2 days ago
2-26747
2 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
2-9595
2 days ago
2-84443
2 days ago
2-83856
2 days
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
2-8774
2 days ago
2-8257
2 days ago
2-7670
2 days
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
2-8647
2 days ago
2-56345
2 days ago
2-55758
2 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
1-85655
1 day ago
1-83677
1 day ago
1-83090
1 day
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
1-82806
1 day ago
1-82162
1 day ago
11-67992
11 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
1-80399
1 day ago
1-78339
1 day ago
5-64249
5 days
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
1-77819
1 day ago
1-77819
1 day ago
12-1532
12 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
1-77610
1 day ago
1-76972
1 day ago
36-592
36 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
1-76887
1 day ago
1-75982
1 day ago
2-26286
2 days
37171 SnirBroshi
author:SnirBroshi
chore(Data/Int/Init): generalize `le_induction` from `Prop` to `Sort*` + def lemmas --- [Zulip 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Add.20note.20to.20help.20search.20similar.20thms/near/535331432) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data large-import 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
1-76567
1 day ago
21-37033
21 days ago
22-32680
22 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
1-76160
1 day ago
1-76303
1 day ago
1-75716
1 day
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
1-75254
1 day ago
1-75877
1 day ago
1-75290
1 day
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
1-72904
1 day ago
1-85982
1 day ago
2-72492
2 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
1-70453
1 day ago
1-69693
1 day ago
20-62195
20 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
1-70221
1 day ago
1-69592
1 day ago
1-69005
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
1-66418
1 day ago
1-66418
1 day ago
1-65831
1 day
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
1-62836
1 day ago
1-62363
1 day ago
35-13445
35 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
1-62687
1 day ago
2-49300
2 days ago
2-48713
2 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
1-60166
1 day ago
1-59539
1 day ago
1-58952
1 day
38228 kim-em
author:kim-em
ci: block merging PRs that increase technical debt unless reviewed This PR adds a merge gate for technical debt increases. When the existing technical debt metrics script reports an increase, the `build` job adds an `increases-technical-debt` label. A `check-technical-debt` job then adds `blocked-by-increases-technical-debt`, which blocks bors. A reviewer can add `allow-increases-technical-debt` to unblock after confirming the increase is acceptable. ### Fail-closed detection The detection greps for the *safe* patterns (`Decrease in tech debt:` / `No changes to technical debt.`) rather than for `Increase`. If `mathlib-ci` changes the script's output wording, the label is added (fail closed) rather than silently skipped (fail open). ### Labels (three-label pattern, same as #38225) | Label | Managed by | Purpose | |---|---|---| | `increases-technical-debt` | `build` job (tech debt script) | Factual: this PR increases debt | | `blocked-by-increases-technical-debt` | `check-technical-debt` job | Operational: blocks bors | | `allow-increases-technical-debt` | Reviewer | Override: reviewer approves the increase | Bors's `block_labels` has no conditional logic, so we need the derived `blocked-by-increases-technical-debt` label to express the conjunction "increases-technical-debt AND NOT allow-increases-technical-debt". False positives can be reported on the [mathlib4 Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/increases-technical-debt.20label). 🤖 Prepared with Claude Code CI 76/2 .github/workflows/PR_summary.yml,bors.toml 2 2 ['github-actions', 'jcommelin'] nobody
1-56135
1 day ago
1-55564
1 day ago
1-54977
1 day
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
1-50947
1 day ago
24-32196
24 days ago
54-16856
54 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
1-50946
1 day ago
18-24106
18 days ago
33-13701
33 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
1-50944
1 day ago
15-45529
15 days ago
15-44942
15 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
1-50938
1 day ago
1-72811
1 day ago
1-72224
1 day
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
1-50938
1 day ago
2-51429
2 days ago
2-50842
2 days
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
1-50933
1 day ago
2-890
2 days ago
2-303
2 days
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
1-50932
1 day ago
2-273
1 day ago
1-86086
1 day
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
1-50419
1 day ago
1-49980
1 day ago
1-49393
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
1-49969
1 day ago
1-49203
1 day ago
1-48616
1 day
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
1-49804
1 day ago
1-49125
1 day ago
2-76541
2 days
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
1-43888
1 day ago
1-43180
1 day ago
1-42593
1 day
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
1-42224
1 day ago
1-42950
1 day ago
1-42363
1 day
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
1-41342
1 day ago
1-40497
1 day ago
1-39910
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
1-38287
1 day ago
1-37624
1 day ago
27-27287
27 days
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
1-32426
1 day ago
1-31766
1 day ago
1-31179
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
1-28194
1 day ago
1-27598
1 day ago
29-40647
29 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
1-25578
1 day ago
1-24912
1 day ago
17-46692
17 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
1-24846
1 day ago
4-51371
4 days ago
10-36568
10 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
1-24332
1 day ago
1-23414
1 day ago
26-58402
26 days
37521 jessealama
author:jessealama
feat(Data/Part): add Part.bind_eq_some_iff Add `Part.bind_eq_some_iff`, the `Part` analogue of `Option.bind_eq_some_iff`. Noticed this small gap while working on some equivalence proofs with partial functions. t-data 6/0 Mathlib/Data/Part.lean 1 3 ['github-actions', 'jessealama', 'vihdzp'] TwoFX
assignee:TwoFX
1-24162
1 day ago
1-21457
1 day ago
20-49761
20 days
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
1-22660
1 day ago
4-85973
4 days ago
6-3597
6 days
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
1-21557
1 day ago
1-20912
1 day ago
46-86016
46 days
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
1-20004
1 day ago
5-18694
5 days ago
15-57683
15 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 15 ['github-actions', 'maddycrim', 'themathqueen'] nobody
1-12930
1 day ago
1-40452
1 day ago
4-63196
4 days
38332 tb65536
author:tb65536
feat(RingTheory/Frobenius): Frobenius elements lie in the decomposition group This PR proves that Frobenius elements lie in the decomposition group. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-ring-theory t-number-theory
label:t-algebra$
9/0 Mathlib/RingTheory/Frobenius.lean 1 1 ['github-actions'] nobody
1-11045
1 day ago
1-11045
1 day ago
1-10458
1 day
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 53/0 Mathlib/AlgebraicTopology/SimplicialSet/KanComplex/MulStruct.lean 1 6 ['github-actions', 'joelriou', 'robin-carlier'] robin-carlier
assignee:robin-carlier
1-10371
1 day ago
1-10546
1 day ago
4-78453
4 days
38335 riccardobrasca
author:riccardobrasca
feat: add Monoid.End.ext --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
5/0 Mathlib/Algebra/Group/Hom/Defs.lean 1 1 ['github-actions'] nobody
1-9623
1 day ago
1-6522
1 day ago
1-5935
1 day
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
1-9351
1 day ago
1-8208
1 day ago
8-44691
8 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 9 ['EtienneC30', 'gasparattila', 'github-actions'] EtienneC30
assignee:EtienneC30
1-6499
1 day ago
3-64625
3 days ago
3-64038
3 days
38315 sgouezel
author:sgouezel
chore: make RingHom.comp implicit_reducible --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
3/1 Mathlib/Algebra/Ring/Hom/Defs.lean 1 5 ['github-actions', 'leanprover-radar', 'mathlib-bors', 'sgouezel'] nobody
1-5923
1 day ago
1-5923
1 day ago
1-5336
1 day
32250 ADedecker
author:ADedecker
feat: integration against a locally integrable function as a CLM on test functions Aka viewing a locally integrable function as a distribution. This adds a bunch of measure theoretic imports, but these are to be expected for distribution theory. Co-authored-by: @luigi-massacci --- - [x] depends on: #36445 - [x] depends on: #36460 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis large-import 240/0 Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/Distribution/TestFunction.lean 2 16 ['ADedecker', 'github-actions', 'j-loreaux', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] j-loreaux
assignee:j-loreaux
1-5750
1 day ago
1-5073
1 day ago
8-71737
8 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 12 ['JovanGerb', 'Vierkantor', 'github-actions', 'hrmacbeth', 'j-loreaux', 'joneugster', 'leanprover-radar'] joneugster
assignee:joneugster
1-4910
1 day ago
1-4910
1 day ago
29-68513
29 days
38036 JovanGerb
author:JovanGerb
feat: `NSMul`/`NPow` type class This PR is adds `NSMul`, `NPow`, `ZSMul` and `ZPow` classes for the `nsmul`, `npow`, `zsmul`, `zpow` data fields. This has a few advantages: - If you first declare a `SMul` instance, then you don't need to manually write `nsmul := (· • ·)` and `zsmul := (· • ·)` . For `Pow`, the extra benefit is that inferring the instance is preferred over the default field `npowRecAuto`. So this helps avoid accidental diamonds. - If you first declare a `SMul` instance on a type synonym, then `inferInstanceAs` will infer the `nsmul` field from the `SMul` instance. This makes it easier to avoid diamonds on type synonyms like `Matrix` and `MonoidAlgebra`. - The not-yet-merged instance diamond linter will be able to detect cases where the `NSMul` and `SMul` classes do not agree. In the process of making this PR, I have identified two existing `NPow` diamonds: - In `Mathlib.Algebra.Order.Positive.Field`, there were two conflicting `NPow` instances. - For `Fin`, there are two conflicting `NPow` instances. I have overwritten the one in core lean with the one from mathlib that is more computationally efficient. TODO: the same for `QSMul` and `NNQSMul`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 276/273 Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/FreeAlgebra.lean,Mathlib/Algebra/Group/Action/Opposite.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Ext.lean,Mathlib/Algebra/Group/Int/Defs.lean,Mathlib/Algebra/Group/Opposite.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Submonoid/Membership.lean,Mathlib/Algebra/Group/TypeTags/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Action/Opposite.lean,Mathlib/Algebra/Module/NatInt.lean,Mathlib/Algebra/MonoidAlgebra/Defs.lean,Mathlib/Algebra/Order/Monoid/Unbundled/WithTop.lean,Mathlib/Algebra/Order/Positive/Field.lean,Mathlib/Algebra/Order/Ring/Archimedean.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Algebra/Ring/MinimalAxioms.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/CategoryTheory/Triangulated/Basic.lean,Mathlib/Data/BitVec.lean,Mathlib/Data/Complex/Basic.lean,Mathlib/Data/Rat/Defs.lean,Mathlib/Data/ZMod/Defs.lean,Mathlib/Data/ZMod/IntUnitsPower.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/LinearAlgebra/Matrix/Defs.lean,Mathlib/LinearAlgebra/Matrix/ZPow.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Defs.lean,Mathlib/NumberTheory/ArithmeticFunction/Defs.lean,Mathlib/RingTheory/PolynomialLaw/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/Tactic/Abel.lean,Mathlib/Tactic/Translate/ToAdditive.lean,Mathlib/Topology/Algebra/GroupCompletion.lean,Mathlib/Topology/Algebra/Module/LinearMap.lean,MathlibTest/instance_diamonds.lean 41 16 ['JovanGerb', 'eric-wieser', 'github-actions', 'jcommelin', 'leanprover-radar', 'vihdzp'] nobody
1-4634
1 day ago
1-5526
1 day ago
1-4939
1 day
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'] nobody
1-4160
1 day ago
3-3920
3 days ago
48-6393
48 days
38257 joelriou
author:joelriou
feat(CategoryTheory): MorphismProperty.single --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory maintainer-merge 63/1 Mathlib/CategoryTheory/MorphismProperty/Basic.lean,Mathlib/CategoryTheory/MorphismProperty/IsSmall.lean,Mathlib/CategoryTheory/ObjectProperty/Local.lean 3 6 ['github-actions', 'joelriou', 'robin-carlier'] nobody
1-4096
1 day ago
1-4320
1 day ago
2-72198
2 days
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 maintainer-merge
label:t-algebra$
55/0 Mathlib/RingTheory/DiscreteValuationRing/Basic.lean,Mathlib/RingTheory/PrincipalIdealDomain.lean 2 9 ['github-actions', 'robin-carlier', 'tb65536'] robin-carlier
assignee:robin-carlier
1-3034
1 day ago
1-2213
1 day ago
6-68885
6 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 10 ['JadAbouHawili', 'artie2000', 'github-actions', 'wwylele'] nobody
0-85505
23 hours ago
8-73866
8 days ago
13-60453
13 days
37464 martinwintermath
author:martinwintermath
feat(Geometry/Convex/Cone): Minor additions to pointed cones Minor additions to pointed cones: * `PointedCone.ofSubmodule_le_ofSubmodule` and `PointedCone.ofSubmodule_lt_ofSubmodule` * `PointedCone.hull_le_span` as a short form of `Submodule.span_le_restrictScalars R≥0 R s` In preparation for #36605. Co-authored by: Artie Khovanov --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry 20/12 Mathlib/Geometry/Convex/Cone/Pointed.lean 1 20 ['artie2000', 'github-actions', 'justus-springer', 'martinwintermath', 'mathlib-merge-conflicts', 'ooovi'] nobody
0-85209
23 hours ago
1-34765
1 day ago
20-35020
20 days
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 easy maintainer-merge 1/1 Mathlib/Topology/Algebra/Module/Spaces/CompactConvergenceCLM.lean 1 3 ['github-actions', 'themathqueen'] j-loreaux
assignee:j-loreaux
0-84371
23 hours ago
5-5083
5 days ago
5-4496
5 days
37355 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): refactor `smulShortComplex` Use `LinearMap.lsmul` for the `f` of `ModuleCat.smulShortComplex`, also providing new APIs for it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 20/21 Mathlib/RingTheory/Regular/Category.lean 1 19 ['Thmoas-Guan', 'chrisflav', 'github-actions', 'robin-carlier'] chrisflav
assignee:chrisflav
0-83762
23 hours ago
0-83216
22 hours ago
21-82044
21 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 3 ['github-actions', 'leanprover-radar', 'themathqueen'] j-loreaux
assignee:j-loreaux
0-82559
22 hours ago
4-85833
4 days ago
4-85246
4 days
28684 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory): definition of regular ring In this PR, we define regular ring as every localization is regular local ring, and proved polynomial over regular ring is regular. --- - [x] depends on: #28682 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 63/2 Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/RegularLocalRing/Defs.lean 2 52 ['Thmoas-Guan', 'artie2000', 'chrisflav', 'erdOne', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot'] chrisflav
assignee:chrisflav
0-81329
22 hours ago
0-81329
22 hours ago
19-3453
19 days
35243 ScottCarnahan
author:ScottCarnahan
refactor(Algebra/MonoidAlgebra/PointwiseSMul): switch action from Finsupp to (Add)MonoidAlgebra and multiplicativize This PR moves the API for convolution action on functions from `Finsupp` to `MonoidAlgebra`, adding a `Semiring` hypothesis. We do this move, because the convolution action of finsupps on formal functions is more naturally expressed as an action by the monoid algebra with its convolutional multiplication. This PR also multiplicativizes, preserving the original material with `to_additive`. --- The large import is on a module that will be deprecated - I had to add the imports to make the deprecated flags work, but ultimately they will be irrelevant. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-algebra
label:t-algebra$
167/118 Mathlib.lean,Mathlib/Algebra/MonoidAlgebra/PointwiseSMul.lean,Mathlib/Data/Finset/SMulAntidiagonal.lean,Mathlib/Data/Finsupp/PointwiseSMul.lean,Mathlib/Data/Set/SMulAntidiagonal.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean,Mathlib/RingTheory/HahnSeries/Summable.lean 7 6 ['ScottCarnahan', 'github-actions', 'mathlib-merge-conflicts', 'ocfnash'] ocfnash
assignee:ocfnash
0-80862
22 hours ago
0-79955
22 hours ago
44-49548
44 days
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 195/37 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 37 ['CBirkbeck', 'MichaelStollBayreuth', 'github-actions', 'loefflerd', 'tb65536'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-76745
21 hours ago
0-76116
20 hours ago
7-74214
7 days
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. --- [![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-75676
21 hours ago
2-19106
2 days ago
3-2553
3 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 48 ['JovanGerb', 'Vierkantor', 'github-actions', 'thorimur'] alexjbest and thorimur
assignee:alexjbest assignee:thorimur
0-75530
20 hours ago
1-4763
1 day ago
22-75760
22 days
38342 chrisflav
author:chrisflav
chore(CategoryTheory/Monoidal): rename `Mod_` to `Mod` We also rename `IsMod_Hom` to `IsModHom`. This is analogous to the previous renames for `Mon` and `Grp`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 87/48 Mathlib/CategoryTheory/Monoidal/Cartesian/Mod_.lean,Mathlib/CategoryTheory/Monoidal/Mod_.lean 2 1 ['github-actions'] nobody
0-74337
20 hours ago
0-73688
20 hours ago
0-73101
20 hours
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 15 ['dagurtomas', 'github-actions', 'robin-carlier'] robin-carlier
assignee:robin-carlier
0-70893
19 hours ago
0-70260
19 hours ago
6-47299
6 days
37717 adomasbaliuka
author:adomasbaliuka
feat(Analysis/SpecialFunctions/Log): Extends log_mul_self_StrictMonoOn - Extends `log_mul_self_monotoneOn` (which had a TODO indicating that it should be extended) to `mul_log_self_StrictMonoOn` - Adds inequalities [suggested by](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Naming.2FSpelling.3A.20.60mul_log.60.20or.20.60log_mul_self.60.3F/near/583874012) @SnirBroshi like `x - 1 ≤ x * log x` - Consistently uses intervals in `Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean` - `NegMulLog.lean`: module docstring explains that (many) lemmas `*_mul_log_*` are also in this file (Re)naming of lemmas also discussed on Zulip [#mathlib4 > Naming/Spelling: `mul_log` or `log_mul_self`?](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Naming.2FSpelling.3A.20.60mul_log.60.20or.20.60log_mul_self.60.3F/with/583877549). Deprecations: - `log_mul_self_monotoneOn` (superseded by `mul_log_StrictMonoOn`) --- Naming may need discussion. We could furthermore rename the last three lemmas in `Monotone.lean`: [Real.abs_log_mul_self_lt](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/SpecialFunctions/Log/Basic.html#Real.abs_log_mul_self_lt), [Real.abs_log_mul_self_rpow_lt](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/SpecialFunctions/Pow/Real.html#Real.abs_log_mul_self_rpow_lt), [tendsto_log_mul_self_nhdsLT_zero](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Analysis/SpecialFunctions/Pow/Asymptotics.html#tendsto_log_mul_self_nhdsLT_zero) from `log_mul_self` to `mul_log` for consistency. But maybe the burden of renaming them is worse than the slightly inconsistant naming? [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis large-import 60/27 Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean,Mathlib/Analysis/SpecialFunctions/Log/NegMulLog.lean 2 21 ['SnirBroshi', 'adomasbaliuka', 'github-actions'] urkud
assignee:urkud
0-66358
18 hours ago
13-5561
13 days ago
15-7038
15 days
37781 vihdzp
author:vihdzp
chore(Topology/Order/SuccPred): use `to_dual` --- - [ ] depends on: #37780 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 10/24 Mathlib/Topology/Order/SuccPred.lean 1 4 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-65166
18 hours ago
0-64508
17 hours ago
0-63921
17 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 6 ['Vierkantor', 'artie2000', 'github-actions'] nobody
0-64889
18 hours ago
1-54752
1 day ago
4-53358
4 days
38090 chrisflav
author:chrisflav
feat(AlgebraicGeometry): rank of finite flat morphism From Pi1. --- - [x] depends on: #38084 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 461/2 Mathlib.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicGeometry/Morphisms/Affine.lean,Mathlib/AlgebraicGeometry/Morphisms/Finite.lean,Mathlib/AlgebraicGeometry/Morphisms/FinitePresentation.lean,Mathlib/AlgebraicGeometry/Morphisms/Flat.lean,Mathlib/AlgebraicGeometry/Morphisms/FlatRank.lean,Mathlib/RingTheory/Flat/Rank.lean,Mathlib/RingTheory/Localization/BaseChange.lean 10 2 ['github-actions', 'mathlib-dependent-issues'] nobody
0-64750
17 hours ago
0-64750
17 hours ago
0-78727
21 hours
38337 Jun2M
author:Jun2M
feat(Combinatorics/Graph): supremum This PR introduces the union of `Graph`, as `sup`. Due to compatibility issue, in general, `sup` is not very well-behaved: `SemilatticeSup` is not true. In the case of incompatible edge, unlike `inf` which simply removed such edge, we include it following its incidence in the left graph. This has the benefit of associativity being true in general at the cost of commutativity. Assuming compatibility or existence of mutual supergraph, which are shown to be equivalent in this PR, everything behaves nicely. Co-authored-by: Peter Nelson --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 86/1 Mathlib/Combinatorics/Graph/Lattice.lean 1 2 ['github-actions', 'vihdzp'] nobody
0-63782
17 hours ago
1-1428
1 day ago
1-841
1 day
38184 tb65536
author:tb65536
chore(Algebra/Algebra/Tower): make `Algebra.algHom` an alias of `IsScalarTower.toAlgHom` `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 maintainer-merge
label:t-algebra$
27/26 Mathlib/Algebra/Algebra/Hom.lean,Mathlib/Algebra/Algebra/Tower.lean 2 14 ['acmepjz', 'github-actions', 'tb65536', 'themathqueen'] nobody
0-63266
17 hours ago
0-62478
17 hours ago
4-55005
4 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$
28/5 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 7 ['artie2000', 'github-actions', 'vihdzp'] nobody
0-62822
17 hours ago
0-61065
16 hours ago
9-75367
9 days
38244 vihdzp
author:vihdzp
feat: interactions between `IsSuccLimit` and `WithTop` --- - [x] depends on: #38240 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 60/2 Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/Order/Cover.lean,Mathlib/Order/SuccPred/Limit.lean 3 5 ['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-62231
17 hours ago
0-61918
17 hours ago
0-70355
19 hours
38347 artie2000
author:artie2000
doc(LinearAlgebra/FreeModule/StrongRankCondition): clarify context of `commRing_strongRankCondition` * Replace mathematical documentation in `Mathlib.LinearAlgebra.FreeModule.StrongRankCondition`, with explanation that the file comprises a shortcut instance `commRing_strongRankCondition` * Signpost `commRing_strongRankCondition` at both its parent instances * Increase priority of shortcut instance `commRing_strongRankCondition` above that of its parent instances --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 28/41 Mathlib/LinearAlgebra/FreeModule/StrongRankCondition.lean,Mathlib/LinearAlgebra/InvariantBasisNumber.lean,Mathlib/RingTheory/FiniteType.lean 3 1 ['github-actions'] nobody
0-61734
17 hours ago
0-60362
16 hours ago
0-59775
16 hours
38343 mortarsanjaya
author:mortarsanjaya
chore(Data/Nat/Cast/Order/Ring): move two Nat lemmas to Data/Nat/Basic These two lemmas have no correlation with `Nat.cast`, and the proof can be golfed to fit `Data/Nat/Basic`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 22/27 Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/Cast/Order/Ring.lean 2 2 ['github-actions'] nobody
0-59247
16 hours ago
0-70717
19 hours ago
0-70130
19 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-59211
16 hours ago
1-40652
1 day ago
6-14787
6 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/Coloring/Constructions.lean 2 3 ['Ruben-VandeVelde', 'github-actions', 'mathlib-merge-conflicts'] nobody
0-57499
15 hours ago
0-56837
15 hours ago
25-53505
25 days
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
0-56958
15 hours ago
0-56286
15 hours ago
3-57986
3 days
34906 seewoo5
author:seewoo5
feat(NumberTheory/Bernoulli): von Staudt-Clausen theorem --- Rado's proof ("A New Proof of a Theorem of v. Staudt", JLMS 1935) of [von Staudt-Clausen theorem](https://en.wikipedia.org/wiki/Von_Staudt%E2%80%93Clausen_theorem). Initially written by AxiomProver (see commit 97a308e) with further golfs with Claude and Codex. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-number-theory large-import LLM-generated 351/4 Mathlib/NumberTheory/Bernoulli.lean,docs/references.bib 2 36 ['MichaelStollBayreuth', 'github-actions', 'kckennylau', 'mathlib-bors', 'seewoo5'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-56884
15 hours ago
0-56884
15 hours ago
19-41044
19 days
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 32/3 Mathlib/GroupTheory/FinitelyPresentedGroup.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean 2 32 ['github-actions', 'javgomzar', 'kbuzzard', 'mathlib-merge-conflicts', 'plp127', 'tb65536', 'vihdzp'] nobody
0-56833
15 hours ago
0-54712
15 hours ago
3-56252
3 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
0-56329
15 hours ago
0-55626
15 hours ago
15-5687
15 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 98/0 Mathlib.lean,Mathlib/CategoryTheory/MarkovCategory/Positive.lean,docs/references.bib 3 8 ['gaetanserre', 'github-actions', 'robin-carlier'] nobody
0-55323
15 hours ago
0-54698
15 hours ago
3-78266
3 days
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 3 ['SnirBroshi', 'github-actions', 'mathlib-bors'] nobody
0-54687
15 hours ago
0-54009
14 hours ago
1-32244
1 day
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$
140/6 Mathlib/Algebra/Colimit/DirectLimit.lean 1 20 ['drocta', 'eric-wieser', 'github-actions', 'themathqueen'] nobody
0-54595
15 hours ago
0-55222
15 hours ago
1-72225
1 day
38349 SnirBroshi
author:SnirBroshi
chore(Combinatorics/SimpleGraph/Coloring/VertexColoring): rename to `Vertex.lean` After #37525 moved `Coloring.lean` to `Coloring/VertexColoring.lean`, a [Zulip](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Coloring.20module.20names/with/583281500) poll decided to avoid duplicating the word "Coloring", so this renames `Coloring/VertexColoring.lean` to `Coloring/Vertex.lean`. --- I planned to make this move in #33313 but it isn't moving along, so I think it's best to split the renaming. #37546 adds module deprecation [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-combinatorics 6/6 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Bipartite.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Constructions.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Vertex.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Partition.lean,Mathlib/Combinatorics/SimpleGraph/Sum.lean 7 1 ['github-actions'] nobody
0-54517
15 hours ago
0-53858
14 hours ago
0-53271
14 hours
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
0-53950
14 hours ago
0-52135
14 hours ago
15-57817
15 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$
37/0 Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean 1 3 ['github-actions', 'mathlib-bors', 'wwylele'] nobody
0-53926
14 hours ago
0-52515
14 hours ago
3-47531
3 days
33313 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Coloring/Edge): create a basic edge-coloring API Also moves `Coloring/VertexColoring.lean` to `Coloring/Vertex.lean`, see [Zulip](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Coloring.20module.20names/with/583281500) --- Future work (which I'm working on): - Relating degrees to edge-colorability (`G.maxDegree ≤ G.chromaticIndex`) - [Vizing's theorem](https://en.wikipedia.org/wiki/Vizing%27s_theorem) (`G.chromaticIndex ≤ G.maxDegree + 1`) - `chromaticIndex ⊤ = (if Even #V then #V - 1 else #V)` - `[Infinite α] → chromaticIndex ⊤ = ⊤` Module name decided on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Coloring.20module.20names/with/583281500). - [x] depends on: #33292 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 285/0 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Coloring/Edge.lean 2 18 ['SnirBroshi', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'ooovi'] nobody
0-53165
14 hours ago
0-52511
14 hours ago
30-13471
30 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 110/0 Mathlib/Control/LawfulFix.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,docs/references.bib 3 2 ['github-actions'] nobody
0-51706
14 hours ago
0-49213
13 hours ago
1-45570
1 day
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'] nobody
0-51432
14 hours ago
24-42124
24 days ago
24-41537
24 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'] nobody
0-51432
14 hours ago
7-37128
7 days ago
36-64153
36 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'] nobody
0-51431
14 hours ago
21-62069
21 days ago
35-40750
35 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'] nobody
0-51430
14 hours ago
27-70985
27 days ago
27-70398
27 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'] nobody
0-51430
14 hours ago
21-83020
21 days ago
22-48992
22 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'] nobody
0-51429
14 hours ago
22-1553
22 days ago
43-81165
43 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'] nobody
0-51428
14 hours ago
22-1303
22 days ago
22-716
22 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.** - [ ] #38350 --- [![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-51405
14 hours ago
2-33254
2 days ago
2-38306
2 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'] ADedecker
assignee:ADedecker
0-51143
14 hours ago
21-82909
21 days ago
52-42337
52 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'] joneugster
assignee:joneugster
0-51141
14 hours ago
5-84057
5 days ago
75-8596
75 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'] ocfnash
assignee:ocfnash
0-51140
14 hours ago
33-67381
33 days ago
33-77306
33 days
36951 mbkybky
author:mbkybky
feat(Algebra/Module): define stably free modules We define stably free modules: a module `M` over a commutative ring `R` is called stably free if there exists a finite free module `N` over `R` such that `M ⊕ N` is free. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
79/0 Mathlib.lean,Mathlib/Algebra/Module/StablyFree/Basic.lean 2 6 ['dagurtomas', 'github-actions', 'mbkybky'] ocfnash
assignee:ocfnash
0-51139
14 hours ago
4-6302
4 days ago
30-65488
30 days
37198 mckoen
author:mckoen
feat(CategoryTheory/Monoidal/PushoutProduct): 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 281/1 Mathlib.lean,Mathlib/AlgebraicTopology/SimplicialSet/PushoutProduct.lean,Mathlib/CategoryTheory/LiftingProperties/PushoutProduct.lean,Mathlib/CategoryTheory/Monoidal/PushoutProduct.lean,docs/references.bib 5 6 ['github-actions', 'mathlib-dependent-issues', 'mckoen', 'robin-carlier'] jcommelin
assignee:jcommelin
0-51139
14 hours ago
0-51973
14 hours ago
2-35180
2 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'] j-loreaux
assignee:j-loreaux
0-51138
14 hours ago
7-15016
7 days ago
7-18694
7 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'] bryangingechen
assignee:bryangingechen
0-51137
14 hours ago
14-55577
14 days ago
15-3945
15 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'] JovanGerb
assignee:JovanGerb
0-51136
14 hours ago
1-79417
1 day ago
1-78830
1 day
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'] ocfnash
assignee:ocfnash
0-51135
14 hours ago
6-64687
6 days ago
12-37357
12 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'] ocfnash
assignee:ocfnash
0-51134
14 hours ago
12-4709
12 days ago
12-4122
12 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 2 ['ADedecker', 'github-actions'] urkud
assignee:urkud
0-51134
14 hours ago
1-5705
1 day ago
7-18795
7 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'] ADedecker
assignee:ADedecker
0-51133
14 hours ago
3-35350
3 days ago
4-40826
4 days
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 63/5 Mathlib/CategoryTheory/Sites/Continuous.lean,Mathlib/CategoryTheory/Sites/Hypercover/Zero.lean,Mathlib/CategoryTheory/Sites/Over.lean,Mathlib/CategoryTheory/Sites/Sieves.lean 4 6 ['chrisflav', 'github-actions', 'joelriou', 'robin-carlier'] riccardobrasca
assignee:riccardobrasca
0-51132
14 hours ago
1-3425
1 day ago
4-60529
4 days
38225 kim-em
author:kim-em
ci: block merging PRs with large import increases unless reviewed This PR makes the existing `large-import` label into a merge gate. PRs that significantly increase transitive imports (>2% for any modified file) are now blocked from merging until a reviewer adds the `allow-large-import` label. ### Why three labels? Bors's `block_labels` has no conditional logic — if a label is in the list, merge is blocked unconditionally. We need "blocked unless a reviewer has approved", i.e. `large-import ∧ ¬allow-large-import`. Since bors can't express that, we use a derived label: | Label | Managed by | Purpose | |---|---|---| | `large-import` | `build` job (import analysis) | Factual: this PR increases imports | | `blocked-by-large-import` | `check-large-import` job | Operational: blocks bors | | `allow-large-import` | Reviewer | Override: reviewer approves the increase | Each label is managed by exactly one actor, so there is no label-fighting. ### How it works 1. The existing `build` job adds/removes `large-import` based on import analysis (unchanged). 2. A new `check-large-import` job (in the same workflow) waits for `build` to finish, then: - If `large-import` is present and `allow-large-import` is absent → adds `blocked-by-large-import` - Otherwise → removes `blocked-by-large-import` 3. `blocked-by-large-import` is added to `block_labels` in `bors.toml`. When a reviewer adds `allow-large-import`, the `labeled` event re-triggers the workflow. The heavy `build` job is skipped (guarded by `github.event.action != 'labeled'`), but the lightweight `check-large-import` job runs, sees both labels, and removes `blocked-by-large-import`. Bors can now merge. ### Reviewer workflow The CI failure message tells the reviewer to consider whether the PR could be improved by splitting files, rearranging material, or creating new intermediate files. If the import increase is reasonable, they add `allow-large-import`. False positives can be reported on the [mathlib4 Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/large-import.20label). 🤖 Prepared with Claude Code CI 78/2 .github/workflows/PR_summary.yml,bors.toml 2 3 ['SnirBroshi', 'github-actions', 'jcommelin'] jcommelin
assignee:jcommelin
0-51131
14 hours ago
1-55532
1 day ago
1-54945
1 day
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'] jcommelin
assignee:jcommelin
0-51130
14 hours ago
1-55583
1 day ago
1-54996
1 day
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'] jcommelin
assignee:jcommelin
0-51130
14 hours ago
1-62881
1 day ago
1-62725
1 day
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
0-51076
14 hours ago
3-81806
3 days ago
65-67813
65 days
38350 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Function/AEEqOfIntegral` - refactors `MeasureTheory/Function/AEEqOfIntegral` by reusing the `AEFinStronglyMeasurable` zero-integral criterion for the integrable case - rewrites the integrable set-integral equality lemmas to delegate to the `AEFinStronglyMeasurable` versions instead of rebuilding the `Lp` and subtraction arguments inline Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability 6/17 Mathlib/MeasureTheory/Function/AEEqOfIntegral.lean 1 4 ['github-actions', 'leanprover-radar', 'yuanyi-350'] nobody
0-50951
14 hours ago
0-51354
14 hours ago
0-50767
14 hours
38351 yuanyi-350
author:yuanyi-350
refactor(NumberTheory): golf `Mathlib/NumberTheory/ADEInequality` - golfs `ADEInequality` by replacing repeated `inv_le_inv₀` proof blocks with direct applications of `inv_anti₀` - shortens `lt_three`, `lt_four`, and `lt_six` by removing the now-unneeded fixed-denominator positivity witnesses 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/27 Mathlib/NumberTheory/ADEInequality.lean 1 4 ['github-actions', 'leanprover-radar', 'yuanyi-350'] nobody
0-50199
13 hours ago
0-51141
14 hours ago
0-50554
14 hours
38353 yuanyi-350
author:yuanyi-350
refactor(MeasureTheory): golf `Mathlib/MeasureTheory/Constructions/Pi` - refactors `MeasureTheory/Constructions/Pi` by moving `pi_map_piCongrLeft` next to `measurePreserving_piCongrLeft` and deriving it directly from `.map_eq` Extracted from #38104 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex LLM-generated t-measure-probability 7/18 Mathlib/MeasureTheory/Constructions/Pi.lean,Mathlib/Probability/ProductMeasure.lean 2 1 ['github-actions'] nobody
0-50139
13 hours ago
0-49456
13 hours ago
0-48869
13 hours
38354 SnirBroshi
author:SnirBroshi
feat(Data/Set): `singleton_iff_unique_mem` and `Finite.encard_lt_card` `Set.singleton_iff_unique_mem` matches the existing `Finset.singleton_iff_unique_mem`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 6/0 Mathlib/Data/Set/Card.lean,Mathlib/Data/Set/Insert.lean 2 1 ['github-actions'] nobody
0-49217
13 hours ago
0-45692
12 hours ago
0-45105
12 hours
38356 SnirBroshi
author:SnirBroshi
feat(Order/ConditionallyCompleteLattice/Finset): `sSup s ≠ ⊤` in a `CompleteLinearOrder` for a finite set without `⊤` --- btw `to_dual` here is blocked on #35213 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 20/0 Mathlib/Order/ConditionallyCompleteLattice/Finset.lean 1 1 ['github-actions'] nobody
0-48500
13 hours ago
0-45872
12 hours ago
0-45285
12 hours
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 69 ['CoolRmal', 'DavidLedvinka', 'EtienneC30', 'github-actions', 'huaizhangchu', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'pfaffelh', 'vianna04', 'yuanyi-350'] EtienneC30
assignee:EtienneC30
0-45455
12 hours ago
0-45455
12 hours ago
51-3047
51 days
38344 robo7179
author:robo7179
feat(SimpleGraph/Coloring/VertexColoring): Matching is 2 colorable --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 51/0 Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean 1 4 ['SnirBroshi', 'github-actions'] nobody
0-39804
11 hours ago
0-68287
18 hours ago
0-67700
18 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-36693
10 hours ago
0-36020
9 hours ago
8-8706
8 days
38358 yuanyi-350
author:yuanyi-350
doc(1000.yaml): Update `1000.yaml` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 24/3 Mathlib/Topology/Order/IntermediateValue.lean,docs/1000.yaml 2 2 ['github-actions'] nobody
0-29966
8 hours ago
0-28500
7 hours ago
0-32706
9 hours
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 maintainer-merge 48/16 Mathlib/Topology/Connected/LocPathConnected.lean,Mathlib/Topology/Connected/PathConnected.lean 2 5 ['SnirBroshi', 'github-actions', 'joelriou', 'robin-carlier'] nobody
0-29377
8 hours ago
0-29735
8 hours ago
3-52801
3 days
38361 mcdoll
author:mcdoll
chore(Tactic/Zify): remove lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 2/4 Mathlib/Tactic/Zify.lean 1 1 ['github-actions'] nobody
0-28145
7 hours ago
0-25934
7 hours ago
0-25347
7 hours
38340 xroblot
author:xroblot
refactor(Data/ZMod): move `coe_int_isUnit_iff_isCoprime` to `ZMod.Units` Move `ZMod.coe_int_isUnit_iff_isCoprime` from `Mathlib.Data.ZMod.Coprime` to `Mathlib.Data.ZMod.Units`, where it more naturally belongs as a statement about units in `ZMod`. The proof is rewritten to only use tools available in `Mathlib.Data.ZMod.Units`, avoiding the dependency on `Mathlib.Algebra.EuclideanDomain.Int`. This is motivated by the desire to use `coe_int_isUnit_iff_isCoprime` without the overhead of importing `Mathlib.Data.ZMod.Coprime` (see #38339 for a use case). 🤖 Co-Authored with [Claude Code](https://claude.com/claude-code) t-data 10/7 Mathlib/Data/ZMod/Coprime.lean,Mathlib/Data/ZMod/Units.lean 2 1 ['github-actions'] nobody
0-25542
7 hours ago
0-69589
19 hours ago
0-69031
19 hours
37267 xroblot
author:xroblot
feat(NumberTheory/NumberField/Cyclotomic): cardinality of the subgroup of characters associated to an intermediate field equals its degree New main result : `card_intermediateFieldEquivSubgroupChar`: the cardinality of the subgroup of Dirichlet characters of level `n` associated to an intermediate field `F` of `ℚ(ζₙ)/ℚ` equals the degree `[F : ℚ]`. --- - [x] depends on: #34571 - [x] depends on: #37108 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 42/1 Mathlib/Algebra/Group/Subgroup/Finite.lean,Mathlib/GroupTheory/FiniteAbelian/Duality.lean,Mathlib/NumberTheory/MulChar/Duality.lean,Mathlib/NumberTheory/NumberField/Cyclotomic/Galois.lean 4 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] riccardobrasca
assignee:riccardobrasca
0-25182
6 hours ago
0-23252
6 hours ago
0-22665
6 hours
38211 gaetanserre
author:gaetanserre
feat(Probability/Kernel): define `IsDeterministic` Defines the `IsDeterministic` 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 348/10 Mathlib.lean,Mathlib/Probability/Kernel/Composition/KernelLemmas.lean,Mathlib/Probability/Kernel/Deterministic.lean,Mathlib/Probability/Kernel/Posterior.lean,docs/references.bib 5 1 ['github-actions'] RemyDegenne
assignee:RemyDegenne
0-24338
6 hours ago
0-21142
5 hours ago
3-79530
3 days
38363 vihdzp
author:vihdzp
chore: split `SetTheory.Cardinal.Cofinality` We split this file into a `Basic` file with only the basic results on `Order.cof`, and an `Ordinal` file for the interactions with ordinals. This avoids an import cycle in a subsequent PR. The module docstrings were rewritten, but no theorems were changed. --- This is necessary for #38362, as otherwise I'd get the cycle `Cardinal.Cofinality` → `Ordinal.Enum` → `Cardinal.Aleph` → `Cardinal.Arithmetic` → `Cardinal.Cofinality`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed 219/198 Mathlib.lean,Mathlib/CategoryTheory/Presentable/IsCardinalFiltered.lean,Mathlib/LinearAlgebra/Dimension/Finite.lean,Mathlib/Order/Filter/Cocardinal.lean,Mathlib/SetTheory/Cardinal/Cofinality/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality/Ordinal.lean,Mathlib/SetTheory/Cardinal/Regular.lean,Mathlib/SetTheory/Ordinal/FundamentalSequence.lean 8 1 ['github-actions'] nobody
0-23572
6 hours ago
0-22804
6 hours ago
0-23572
6 hours
38365 vihdzp
author:vihdzp
feat: `#Ordinal = univ` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory easy 6/1 Mathlib/SetTheory/Ordinal/Univ.lean 1 1 ['github-actions'] nobody
0-22462
6 hours ago
0-20850
5 hours ago
0-20263
5 hours
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 LLM-generated 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-21547
5 hours ago
2-1641
2 days ago
2-1054
2 days
38364 openendings
author:openendings
feat: create Order/DirectedCompletePartialOrder/Defs.lean Define DirectedCompletePartialOrder and its interaction with iSup and sSup. --- A DirectedCompletePartialOrder is equivalently: - a partial order with LUBs of nonempty directed sets; - what happens when you remove ⊥ from a CompletePartialOrder; or - a ConditionallyCompletePartialOrder in which every directed set is BddAbove. Like CPOs, DCPOs are commonly studied in denotational semantics. Potential applications: - [#Is there code for X? > Summing `ENat`s without topology](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Summing.20.60ENat.60s.20without.20topology/with/590070848) -- defining infinite sums in an DCPO-enriched `AddCommMonoidWithTop` such as `ENat` or `ENNReal`. - [#Is there code for X? > Scott Induction](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Scott.20Induction/with/590112858) -- fixpoint theorems similar to `OmegaCompletePartialOrder`, generalised to arbitrary cardinalities. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 108/0 Mathlib.lean,Mathlib/Order/DirectedCompletePartialOrder/Defs.lean,docs/references.bib 3 2 ['github-actions'] nobody
0-20049
5 hours ago
0-19485
5 hours ago
0-18898
5 hours
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 220/5 Mathlib.lean,Mathlib/MeasureTheory/VectorMeasure/Integral.lean,Mathlib/MeasureTheory/VectorMeasure/Variation/Basic.lean 3 83 ['EtienneC30', 'github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'mathlib4-merge-conflict-bot', 'yoh-tanimoto'] EtienneC30
assignee:EtienneC30
0-19795
5 hours ago
0-19340
5 hours ago
5-71562
5 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 213/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/DualVC.lean,docs/references.bib 3 17 ['Shreyas4991', 'Zetetic-Dhruv', 'github-actions'] nobody
0-19457
5 hours ago
0-25028
6 hours ago
1-53295
1 day
38360 joelriou
author:joelriou
feat(AlagebraicTopology/SimplexCategory): iterations of `δ 0` and `σ 0` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology 274/0 Mathlib.lean,Mathlib/AlgebraicTopology/SimplexCategory/DeltaZeroIter.lean 2 2 ['github-actions'] nobody
0-17995
4 hours ago
0-17026
4 hours ago
0-25447
7 hours
38352 yuanyi-350
author:yuanyi-350
refactor(Analysis): golf `Mathlib/Analysis/SpecialFunctions/Log/Monotone` - refactors `Log/Monotone` by extracting the repeated `exp (1 / a) ≤ z` to `exp 1 ≤ z ^ a` bound into a shared local helper - reuses that helper in `log_div_self_rpow_antitoneOn` to shorten the final call to `log_div_self_antitoneOn` Extracted from #37968 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) codex t-analysis LLM-generated 6/14 Mathlib/Analysis/SpecialFunctions/Log/Monotone.lean 1 9 ['github-actions', 'leanprover-radar', 'themathqueen', 'yuanyi-350'] nobody
0-17134
4 hours ago
0-16477
4 hours ago
0-48280
13 hours
37631 linesthatinterlace
author:linesthatinterlace
feat: add `Function.{prod,diag,fstComp,sndComp,prodMap}` Adds `Mathlib/Logic/Function/Init.lean`, centralising a cluster of general-purpose function operations in the `Function` namespace: - `Function.dcomp` (notation `∘'`) — dependent composition, moved here from `Mathlib/Logic/Function/Defs.lean`. - `Function.prod` (notation `▽`) — pointwise pair of two (possibly dependent) functions, `(f ▽ g) i = (f i, g i)`. - `Function.fstComp` / `Function.sndComp` — the two components of a function valued in a product; inverse to `Function.prod`. - `Function.diag` (notation `⟋`) — the diagonal `a ↦ (a, a)`. - `Function.prodMap` — dot-notation alias for `Prod.map`; collapses to `Prod.map` under `simp` so existing API applies unchanged. `Pi.prod` is removed in favour of `Function.prod` (which is itself the dependent version); a deprecated alias is provided. The file depends only on `Mathlib.Init` (and `Batteries.Tactic.Alias` for the deprecated alias) so it can be upstreamed to Batteries / core without pulling mathlib dependencies. t-logic large-import 322/82 Archive/Sensitivity.lean,Mathlib.lean,Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Algebra/Prod.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Exact.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Lie/Prod.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/Notation/Pi/Defs.lean,Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/Combinatorics/Nullstellensatz.lean,Mathlib/Data/Fin/Tuple/Curry.lean,Mathlib/LinearAlgebra/AffineSpace/AffineMap.lean,Mathlib/LinearAlgebra/Dimension/DivisionRing.lean,Mathlib/LinearAlgebra/Goursat.lean,Mathlib/LinearAlgebra/Prod.lean,Mathlib/LinearAlgebra/QuadraticForm/Dual.lean,Mathlib/Logic/Function/Defs.lean,Mathlib/Logic/Function/Init.lean,Mathlib/MeasureTheory/Integral/Prod.lean,Mathlib/MeasureTheory/Measure/Prod.lean,Mathlib/NumberTheory/Height/Basic.lean,Mathlib/SetTheory/Cardinal/Finite.lean,Mathlib/Topology/Algebra/ContinuousAffineMap.lean,Mathlib/Topology/Algebra/InfiniteSum/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/Constructions.lean,Mathlib/Topology/Inseparable.lean,Mathlib/Topology/UniformSpace/LocallyUniformConvergence.lean 30 14 ['SnirBroshi', 'eric-wieser', 'github-actions', 'linesthatinterlace'] nobody
0-12143
3 hours ago
0-9007
2 hours ago
12-31766
12 days
38341 justus-springer
author:justus-springer
refactor(Algebra/Category/ModuleCat/Sheaf/Free): generalize `SheafOfModules.mapFree` - Generalize `mapFree` to take in a hom `η : unit S ⟶ F.obj (unit R)` instead of an iso `η : F.obj (unit R) ≅ unit S`. Note that this direction does not require `F` to preserve coproducts, only the inverse does. - Rename what used to be `mapFree` to `mapIsoFree` - Simplify the proofs of `ιFree_mapFree_inv` and `map_ιFree_mapFree_hom`, rename them, and create deprecated aliases for the old versions. **Motivation for this change**: I want to apply `mapFree` to the existing morphism `unitToPushforwardObjUnit : unit S ⟶ (pushforward.{u} φ).obj (unit R)`, which exactly fits the new type of `η`. Specializing to `φ = 𝟙 (R.over X)`, this will yield the iso `(free I).over X ≅ free (R := R.over X) I` in a later PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry t-algebra
label:t-algebra$
38/26 Mathlib/Algebra/Category/ModuleCat/Sheaf/Free.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Quasicoherent.lean 2 1 ['github-actions'] nobody
0-12094
3 hours ago
0-11841
3 hours ago
0-15887
4 hours
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 21 ['EtienneC30', 'github-actions', 'jvanwinden', 'urkud'] EtienneC30
assignee:EtienneC30
0-11558
3 hours ago
0-71317
19 hours ago
53-48509
53 days
38355 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Copy): `maxDegree` is monotonic, and `minDegree` is monotonic over a surjective `Copy` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 14/0 Mathlib/Combinatorics/SimpleGraph/Copy.lean 1 2 ['b-mehta', 'github-actions'] nobody
0-11384
3 hours ago
0-48173
13 hours ago
0-47586
13 hours
38366 joelriou
author:joelriou
feat(CategoryTheory/Monoidal): definition of ring objects This PR defines ring objects in cartesian monoidal categories. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 249/0 Mathlib.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Mon_.lean,Mathlib/CategoryTheory/Monoidal/Ring.lean 3 1 ['github-actions'] nobody
0-11036
3 hours ago
0-10058
2 hours ago
0-15450
4 hours
38288 b-mehta
author:b-mehta
feat(Algebra/Group/Submonoid/Defs): add OneMemClass.coe_nonempty The main value of this is to make `simp` stronger --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-algebra
label:t-algebra$
14/4 Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/Data/ZMod/QuotientGroup.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/NumberTheory/LocalField/Basic.lean 5 3 ['github-actions', 'leanprover-radar', 'plp127'] nobody
0-10961
3 hours ago
0-8535
2 hours ago
0-7948
2 hours
38028 Thmoas-Guan
author:Thmoas-Guan
chore(RingTheory/Regular): rename `RingTheory.Regular.Depth` Rename `RingTheory.Regular.Depth` into `RingTheory.Regular.LinearMap` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 113/102 Mathlib.lean,Mathlib/RingTheory/Regular/Depth.lean,Mathlib/RingTheory/Regular/LinearMap.lean 3 8 ['Thmoas-Guan', 'chrisflav', 'github-actions', 'mathlib-merge-conflicts'] nobody
0-10693
2 hours ago
7-3997
7 days ago
8-13571
8 days
38348 mirajcs
author:mirajcs
feat(Geometry/Curve): add Frenet–Serret framework --- This PR introduces a basic formalization of smooth parametrized curves in `ℝ³` (`EuclideanSpace ℝ (Fin 3)`) together with the Frenet frame and partial proofs of the Frenet–Serret formulas. Main contributions: * Define `ParametrizedDifferentiableCurve` as a smooth map on an open interval. * Define arc length and arc-length parametrization. * Define geometric quantities: - curvature `κ(t) = ‖α''(t)‖` - tangent, normal, and binormal vector fields - torsion via `‖B'(t)‖` * Introduce the `FrenetFrame` structure. * Prove key Frenet–Serret formulas: - `T' = κ • N` - `B' = -τ • N` - `N' = -κ • T + τ • B` The implementation relies on existing analysis and inner product space infrastructure, as well as properties of the cross product in `ℝ³`. Some intermediate lemmas about orthogonality and cross-product identities are included. At present, some results assume nonvanishing curvature/torsion and include auxiliary hypotheses about derivatives. These can be streamlined in future work. This development is intended as a foundation for further formalization of classical differential geometry (curves and surfaces). --- new-contributor t-differential-geometry 430/0 Mathlib.lean,Mathlib/Geometry/Curves/Basic.lean 2 7 ['github-actions', 'mirajcs', 'vihdzp'] nobody
0-10458
2 hours ago
0-49044
13 hours ago
0-48457
13 hours
37677 vihdzp
author:vihdzp
feat: club sets In set theory, a club set is a subset of an ordinal of uncountable cofinality, which is closed in the order topology, and unbounded within the ordinal. We generalize this notion to that of a club set in a well-order `α`: this is a set which is cofinal and closed under suprema. We recover the more standard notion by setting `α = Iio o`, whenever `ℵ₀ < o.cof`. We prove that club sets are closed under intersections of size less than the cofinality of `α`, and that the fixed points of a normal function are a club set. --- The idea is to eventually rework [`Ordinal.deriv`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/SetTheory/Ordinal/FixedPoint.html#Ordinal.deriv). This is simply the enumerator function for the fixed points of `f`, and enumerator functions for club sets are always normal. - [x] depends on: #37670 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory t-order 153/0 Mathlib.lean,Mathlib/Order/IsNormal.lean,Mathlib/SetTheory/Cardinal/Club.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean 4 3 ['github-actions', 'mathlib-dependent-issues', 'mathlib-merge-conflicts'] nobody
0-9912
2 hours ago
0-7941
2 hours ago
0-36626
10 hours
37437 mariainesdff
author:mariainesdff
feat(Algebra/SkewPolynomial/Basic): add API We add API for `SkewPolynomial`, including `monomial`, `coeff`, `C` and `X`. Co-authored by: @xgenereux. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
314/19 Mathlib/Algebra/SkewPolynomial/Basic.lean 1 2 ['github-actions', 'mathlib-merge-conflicts'] ocfnash
assignee:ocfnash
0-9339
2 hours ago
0-8674
2 hours ago
10-41264
10 days
38367 joelriou
author:joelriou
feat(AlgebraicTopology/SimplicialSet): morphisms from horns In this PR, we show that a morphism from a horn can be constructed by gluing morphisms defined on the faces. (Note: there was prior work at #9935, and #20448 for the case of the boundary.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology 167/3 Mathlib/AlgebraicTopology/SimplicialSet/HornColimits.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean 2 1 ['github-actions'] nobody
0-8678
2 hours ago
0-8025
2 hours ago
0-13899
3 hours
38371 MaltyBlanket
author:MaltyBlanket
feat(Order): add eq_of_sdiff_right_eq, rename eq_of_sdiff_eq_sdiff Rename `eq_of_sdiff_eq_sdiff` (`GeneralizedBooleanAlgebra`) to `eq_of_sdiff_left_eq`, reflecting that the common fixed element is the left operand of `\`. A `@[deprecated]` alias preserves the old name. Add the companion `eq_of_sdiff_right_eq` in `GeneralizedCoheytingAlgebra` (`Mathlib/Order/Heyting/Basic.lean`), where the fixed element is the right operand of `\`. The proof is a 1-line consequence of `sdiff_sup_cancel`. Since `GCA ⊂ GBA`, this applies everywhere `eq_of_sdiff_left_eq` does and strictly more. The `_left`/`_right` convention matches `add_left_cancel`/`add_right_cancel`: the suffix names the position of the common/fixed element. Moves: - `eq_of_sdiff_eq_sdiff` → `eq_of_sdiff_left_eq` Co-authored-by: Christoph Spiegel --- These came up while formalizing Goodman's formula on triangle densities in graphs as part of an ongoing flag algebras project in Lean, and seemed worth upstreaming given that the rename clarifies an existing asymmetry in the library. **Disclosure.** *This PR was developed with assistance from LLM code tools, used for Mathlib style alignment and proof compactness. The mathematical content and proof strategy originate from formalization work by Malte Jackisch (co-author) and myself; the final code has been reviewed and vouched for by both of us.* t-order new-contributor 7/1 Mathlib/Order/BooleanAlgebra/Basic.lean,Mathlib/Order/Heyting/Basic.lean 2 2 ['github-actions'] nobody
0-8497
2 hours ago
0-4991
1 hour ago
0-4404
1 hour
38368 chrisflav
author:chrisflav
chore(CategoryTheory/Limits): make `Pi.mapIso` a `def` Currently, `simp` unfolds `Pi.mapIso` which makes the general (co)limit API leak through. We also fix `Sigma.mapIso`, `Pi.map` and `Sigma.map`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 50/56 Mathlib/CategoryTheory/Limits/Constructions/Filtered.lean,Mathlib/CategoryTheory/Limits/FormalCoproducts/Cech.lean,Mathlib/CategoryTheory/Limits/Shapes/Biproducts.lean,Mathlib/CategoryTheory/Limits/Shapes/Products.lean,Mathlib/CategoryTheory/Limits/Shapes/SequentialProduct.lean,Mathlib/CategoryTheory/SmallObject/Construction.lean,Mathlib/CategoryTheory/Triangulated/Basic.lean,Mathlib/Topology/Sheaves/SheafCondition/EqualizerProducts.lean 8 2 ['b-mehta', 'github-actions'] nobody
0-6998
1 hour ago
0-6998
1 hour ago
0-6411
1 hour
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 8 ['b-mehta', 'github-actions', 'tb65536'] tb65536
assignee:tb65536
0-6394
1 hour ago
2-17211
2 days ago
2-16624
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 29 ['MichaelStollBayreuth', 'github-actions', 'jcommelin', 'tb65536'] tb65536
assignee:tb65536
0-5941
1 hour ago
3-66318
3 days ago
4-48257
4 days
38373 Nicola9Falciola
author:Nicola9Falciola
feat (Algebra/FreeAbelianGroup /Finsupp) : The support of non zero element in a freeabeliangroup is non empty Add the lemma that for a nonzero a : FreeAbelianGroup X the support of it is non empty. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
4/0 Mathlib/Algebra/FreeAbelianGroup/Finsupp.lean 1 3 ['github-actions'] nobody
0-5883
1 hour ago
0-3884
54 minutes ago
0-3297
54 minutes
38370 FordUniver
author:FordUniver
feat(Data.Finset.Powerset): add card_powersetCard_filter Add `Finset.card_powersetCard_filter`: the number of `k`-element subsets of `t` containing `s` equals `Nat.choose (t.card - s.card) (k - s.card)`. The proof constructs a bijection between `(t.powersetCard k).filter (s ⊆ ·)` and `(t \ s).powersetCard (k - s.card)` via `· \ s` / `· ∪ s`, using `Finset.card_nbij'`. The hypothesis `s.card ≤ k` is necessary since natural subtraction would otherwise silently give the wrong result (`X.choose 0 = 1 ≠ 0`). Co-authored-by: Malte Jackisch --- We ran into this while formalizing Goodman's formula on triangle densities in graphs as part of an ongoing flag algebras project in Lean, and it seemed worth upstreaming. **Disclosure.** *This PR was developed with assistance from LLM code tools, used for Mathlib style alignment and proof compactness. The mathematical content and proof strategy originate from formalization work by Malte Jackisch (co-author) and myself; the final code has been reviewed and vouched for by both of us.* t-data new-contributor 20/0 Mathlib/Data/Finset/Powerset.lean 1 8 ['FordUniver', 'github-actions', 'mathlib-bors', 'wwylele'] nobody
0-4102
1 hour ago
0-6374
1 hour ago
0-5787
1 hour
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 32 ['cduenasnavarro', 'github-actions', 'linesthatinterlace', 'rkirov', 'vihdzp', 'wwylele'] RemyDegenne
assignee:RemyDegenne
0-2759
45 minutes ago
1-81432
1 day ago
8-65927
8 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 maintainer-merge 4/15 Mathlib/NumberTheory/NumberField/Norm.lean 1 7 ['acmepjz', 'github-actions', 'leanprover-radar', 'riccardobrasca', 'tb65536', 'yuanyi-350'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
0-1415
23 minutes ago
1-26369
1 day ago
2-18360
2 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
28-3594
28 days ago
28-2982
28 days ago
34-8422
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
21-50957
21 days ago
30-69198
30 days ago
35-15685
35 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
21-7869
21 days ago
32-86077
32 days ago
32-85490
32 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
20-22561
20 days ago
20-21373
20 days ago
20-38957
20 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
19-47554
19 days ago
19-44518
19 days ago
33-49867
33 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
19-20768
19 days ago
19-20126
19 days ago
77-696
77 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
18-72584
18 days ago
18-76472
18 days ago
91-36226
91 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
17-84826
17 days ago
17-83664
17 days ago
30-60258
30 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
14-18322
14 days ago
14-20351
14 days ago
33-41545
33 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
12-59383
12 days ago
12-57796
12 days ago
14-51849
14 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
12-36190
12 days ago
12-34848
12 days ago
148-32044
148 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
12-27116
12 days ago
12-27275
12 days ago
60-48741
60 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
11-51334
11 days ago
34-21798
34 days ago
34-21211
34 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
11-51322
11 days ago
12-38822
12 days ago
12-38235
12 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
10-68843
10 days ago
10-74612
10 days ago
14-52955
14 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
10-58527
10 days ago
10-57860
10 days ago
11-15422
11 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
9-71831
9 days ago
9-68971
9 days ago
15-30610
15 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
9-71023
9 days ago
9-70328
9 days ago
25-35001
25 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
8-65752
8 days ago
8-65069
8 days ago
9-54830
9 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
8-50932
8 days ago
34-3895
34 days ago
47-27900
47 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
7-50967
7 days ago
20-86098
20 days ago
21-36329
21 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
7-50963
7 days ago
15-53620
15 days ago
15-53033
15 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
7-28106
7 days ago
7-27400
7 days ago
7-26813
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
7-3238
7 days ago
7-9280
7 days ago
17-25181
17 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
6-50851
6 days ago
7-80945
7 days ago
7-80358
7 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
6-23628
6 days ago
6-22964
6 days ago
38-32872
38 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
6-6641
6 days ago
6-5949
6 days ago
24-9489
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
5-74529
5 days ago
10-81674
10 days ago
11-15357
11 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
5-50965
5 days ago
13-48158
13 days ago
14-21680
14 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
5-39440
5 days ago
5-38820
5 days ago
8-33700
8 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
5-23602
5 days ago
5-22990
5 days ago
21-75079
21 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
5-1617
5 days ago
5-1014
5 days ago
9-2280
9 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
4-79968
4 days ago
17-56927
17 days ago
26-70318
26 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
4-79881
4 days ago
11-4569
11 days ago
18-36528
18 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
4-79706
4 days ago
13-41983
13 days ago
13-41396
13 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
4-79427
4 days ago
5-701
5 days ago
6-8707
6 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
4-78034
4 days ago
4-81456
4 days ago
4-81286
4 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
4-76178
4 days ago
4-77728
4 days ago
17-44077
17 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
4-70094
4 days ago
4-69432
4 days ago
7-78012
7 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
4-51248
4 days ago
5-19778
5 days ago
64-84960
64 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
4-51245
4 days ago
25-59470
25 days ago
30-34167
30 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
4-51243
4 days ago
13-12721
13 days ago
14-78273
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
4-46615
4 days ago
4-45954
4 days ago
14-27291
14 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
4-35987
4 days ago
4-35343
4 days ago
4-34756
4 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
4-34399
4 days ago
4-34399
4 days ago
7-75629
7 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
3-75712
3 days ago
3-75321
3 days ago
5-34768
5 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
3-61744
3 days ago
3-61094
3 days ago
12-18797
12 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
3-50874
3 days ago
5-469
4 days ago
104-63065
104 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
3-50870
3 days ago
14-46125
14 days ago
18-38493
18 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
3-50870
3 days ago
13-50439
13 days ago
15-33983
15 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
3-50869
3 days ago
13-65752
13 days ago
13-65165
13 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
3-39921
3 days ago
3-39251
3 days ago
11-45510
11 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
2-79881
2 days ago
2-79247
2 days ago
42-23883
42 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
2-51430
2 days ago
55-69945
55 days ago
58-18353
58 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
2-50726
2 days ago
2-50085
2 days ago
2-68564
2 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
2-38860
2 days ago
2-44179
2 days ago
8-27940
8 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
2-18318
2 days ago
2-78177
2 days ago
16-79380
16 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
2-14637
2 days ago
2-13961
2 days ago
2-26747
2 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
1-75254
1 day ago
1-75877
1 day ago
1-75290
1 day
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
1-70221
1 day ago
1-69592
1 day ago
1-69005
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
1-66418
1 day ago
1-66418
1 day ago
1-65831
1 day
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
1-62836
1 day ago
1-62363
1 day ago
35-13445
35 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
1-50946
1 day ago
18-24106
18 days ago
33-13701
33 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
1-24332
1 day ago
1-23414
1 day ago
26-58402
26 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 15 ['github-actions', 'maddycrim', 'themathqueen'] nobody
1-12930
1 day ago
1-40452
1 day ago
4-63196
4 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'] nobody
1-4160
1 day ago
3-3920
3 days ago
48-6393
48 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 10 ['JadAbouHawili', 'artie2000', 'github-actions', 'wwylele'] nobody
0-85505
23 hours ago
8-73866
8 days ago
13-60453
13 days
38343 mortarsanjaya
author:mortarsanjaya
chore(Data/Nat/Cast/Order/Ring): move two Nat lemmas to Data/Nat/Basic These two lemmas have no correlation with `Nat.cast`, and the proof can be golfed to fit `Data/Nat/Basic`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 22/27 Mathlib/Data/Nat/Basic.lean,Mathlib/Data/Nat/Cast/Order/Ring.lean 2 2 ['github-actions'] nobody
0-59247
16 hours ago
0-70717
19 hours ago
0-70130
19 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-59211
16 hours ago
1-40652
1 day ago
6-14787
6 days
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 32/3 Mathlib/GroupTheory/FinitelyPresentedGroup.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean 2 32 ['github-actions', 'javgomzar', 'kbuzzard', 'mathlib-merge-conflicts', 'plp127', 'tb65536', 'vihdzp'] nobody
0-56833
15 hours ago
0-54712
15 hours ago
3-56252
3 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$
140/6 Mathlib/Algebra/Colimit/DirectLimit.lean 1 20 ['drocta', 'eric-wieser', 'github-actions', 'themathqueen'] nobody
0-54595
15 hours ago
0-55222
15 hours ago
1-72225
1 day
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
0-53950
14 hours ago
0-52135
14 hours ago
15-57817
15 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 110/0 Mathlib/Control/LawfulFix.lean,Mathlib/Order/OmegaCompletePartialOrder.lean,docs/references.bib 3 2 ['github-actions'] nobody
0-51706
14 hours ago
0-49213
13 hours ago
1-45570
1 day
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'] nobody
0-51431
14 hours ago
21-62069
21 days ago
35-40750
35 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'] nobody
0-51430
14 hours ago
21-83020
21 days ago
22-48992
22 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'] ADedecker
assignee:ADedecker
0-51143
14 hours ago
21-82909
21 days ago
52-42337
52 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'] ocfnash
assignee:ocfnash
0-51135
14 hours ago
6-64687
6 days ago
12-37357
12 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'] ocfnash
assignee:ocfnash
0-51134
14 hours ago
12-4709
12 days ago
12-4122
12 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'] ADedecker
assignee:ADedecker
0-51133
14 hours ago
3-35350
3 days ago
4-40826
4 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 69 ['CoolRmal', 'DavidLedvinka', 'EtienneC30', 'github-actions', 'huaizhangchu', 'mathlib-dependent-issues', 'mathlib-merge-conflicts', 'pfaffelh', 'vianna04', 'yuanyi-350'] EtienneC30
assignee:EtienneC30
0-45455
12 hours ago
0-45455
12 hours ago
51-3047
51 days
38344 robo7179
author:robo7179
feat(SimpleGraph/Coloring/VertexColoring): Matching is 2 colorable --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 51/0 Mathlib/Combinatorics/SimpleGraph/Coloring/VertexColoring.lean 1 4 ['SnirBroshi', 'github-actions'] nobody
0-39804
11 hours ago
0-68287
18 hours ago
0-67700
18 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-36693
10 hours ago
0-36020
9 hours ago
8-8706
8 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 LLM-generated 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-21547
5 hours ago
2-1641
2 days ago
2-1054
2 days
38364 openendings
author:openendings
feat: create Order/DirectedCompletePartialOrder/Defs.lean Define DirectedCompletePartialOrder and its interaction with iSup and sSup. --- A DirectedCompletePartialOrder is equivalently: - a partial order with LUBs of nonempty directed sets; - what happens when you remove ⊥ from a CompletePartialOrder; or - a ConditionallyCompletePartialOrder in which every directed set is BddAbove. Like CPOs, DCPOs are commonly studied in denotational semantics. Potential applications: - [#Is there code for X? > Summing `ENat`s without topology](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Summing.20.60ENat.60s.20without.20topology/with/590070848) -- defining infinite sums in an DCPO-enriched `AddCommMonoidWithTop` such as `ENat` or `ENNReal`. - [#Is there code for X? > Scott Induction](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Scott.20Induction/with/590112858) -- fixpoint theorems similar to `OmegaCompletePartialOrder`, generalised to arbitrary cardinalities. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order new-contributor 108/0 Mathlib.lean,Mathlib/Order/DirectedCompletePartialOrder/Defs.lean,docs/references.bib 3 2 ['github-actions'] nobody
0-20049
5 hours ago
0-19485
5 hours ago
0-18898
5 hours
38319 Zetetic-Dhruv
author:Zetetic-Dhruv
feat(Combinatorics/SetFamily): Assouad's dual VC bound Adds the Finset-level form of Assouad's 1983 dual VC bound: if a family `𝒜 : Finset (Finset α)` has VC dimension at most `d`, then for any ground set `X : Finset α` the dual family `{𝒜.filter (· ∋ x) : x ∈ X}` has VC dimension at most `2 ^ (d + 1) - 1`. New declarations (in `Finset` namespace): - `dualFamily 𝒜 X`: for each `x ∈ X`, the subfamily `{A ∈ 𝒜 | x ∈ A}` - `mem_dualFamily` (`@[simp]`): membership characterisation - `exists_shatters_of_dualFamily_shatters`: Assouad's bitstring-coding lemma - `vcDim_dualFamily_le`: the headline VC bound Proof by Assouad's classical bitstring-coding argument. Sits on top of `Finset.shatterer` / `Finset.vcDim` from `Mathlib.Combinatorics.SetFamily.Shatter`. References: - P. Assouad, Densite et dimension, Ann. Inst. Fourier 33(3) (1983), Thm 2.13 - J. Matousek, Lectures on Discrete Geometry, GTM 212, Springer, 2002, Section 10.3 Lemma 10.3.3 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics new-contributor 213/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/DualVC.lean,docs/references.bib 3 17 ['Shreyas4991', 'Zetetic-Dhruv', 'github-actions'] nobody
0-19457
5 hours ago
0-25028
6 hours ago
1-53295
1 day
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 21 ['EtienneC30', 'github-actions', 'jvanwinden', 'urkud'] EtienneC30
assignee:EtienneC30
0-11558
3 hours ago
0-71317
19 hours ago
53-48509
53 days
38348 mirajcs
author:mirajcs
feat(Geometry/Curve): add Frenet–Serret framework --- This PR introduces a basic formalization of smooth parametrized curves in `ℝ³` (`EuclideanSpace ℝ (Fin 3)`) together with the Frenet frame and partial proofs of the Frenet–Serret formulas. Main contributions: * Define `ParametrizedDifferentiableCurve` as a smooth map on an open interval. * Define arc length and arc-length parametrization. * Define geometric quantities: - curvature `κ(t) = ‖α''(t)‖` - tangent, normal, and binormal vector fields - torsion via `‖B'(t)‖` * Introduce the `FrenetFrame` structure. * Prove key Frenet–Serret formulas: - `T' = κ • N` - `B' = -τ • N` - `N' = -κ • T + τ • B` The implementation relies on existing analysis and inner product space infrastructure, as well as properties of the cross product in `ℝ³`. Some intermediate lemmas about orthogonality and cross-product identities are included. At present, some results assume nonvanishing curvature/torsion and include auxiliary hypotheses about derivatives. These can be streamlined in future work. This development is intended as a foundation for further formalization of classical differential geometry (curves and surfaces). --- new-contributor t-differential-geometry 430/0 Mathlib.lean,Mathlib/Geometry/Curves/Basic.lean 2 7 ['github-actions', 'mirajcs', 'vihdzp'] nobody
0-10458
2 hours ago
0-49044
13 hours ago
0-48457
13 hours
38371 MaltyBlanket
author:MaltyBlanket
feat(Order): add eq_of_sdiff_right_eq, rename eq_of_sdiff_eq_sdiff Rename `eq_of_sdiff_eq_sdiff` (`GeneralizedBooleanAlgebra`) to `eq_of_sdiff_left_eq`, reflecting that the common fixed element is the left operand of `\`. A `@[deprecated]` alias preserves the old name. Add the companion `eq_of_sdiff_right_eq` in `GeneralizedCoheytingAlgebra` (`Mathlib/Order/Heyting/Basic.lean`), where the fixed element is the right operand of `\`. The proof is a 1-line consequence of `sdiff_sup_cancel`. Since `GCA ⊂ GBA`, this applies everywhere `eq_of_sdiff_left_eq` does and strictly more. The `_left`/`_right` convention matches `add_left_cancel`/`add_right_cancel`: the suffix names the position of the common/fixed element. Moves: - `eq_of_sdiff_eq_sdiff` → `eq_of_sdiff_left_eq` Co-authored-by: Christoph Spiegel --- These came up while formalizing Goodman's formula on triangle densities in graphs as part of an ongoing flag algebras project in Lean, and seemed worth upstreaming given that the rename clarifies an existing asymmetry in the library. **Disclosure.** *This PR was developed with assistance from LLM code tools, used for Mathlib style alignment and proof compactness. The mathematical content and proof strategy originate from formalization work by Malte Jackisch (co-author) and myself; the final code has been reviewed and vouched for by both of us.* t-order new-contributor 7/1 Mathlib/Order/BooleanAlgebra/Basic.lean,Mathlib/Order/Heyting/Basic.lean 2 2 ['github-actions'] nobody
0-8497
2 hours ago
0-4991
1 hour ago
0-4404
1 hour
38373 Nicola9Falciola
author:Nicola9Falciola
feat (Algebra/FreeAbelianGroup /Finsupp) : The support of non zero element in a freeabeliangroup is non empty Add the lemma that for a nonzero a : FreeAbelianGroup X the support of it is non empty. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra new-contributor
label:t-algebra$
4/0 Mathlib/Algebra/FreeAbelianGroup/Finsupp.lean 1 3 ['github-actions'] nobody
0-5883
1 hour ago
0-3884
54 minutes ago
0-3297
54 minutes
38370 FordUniver
author:FordUniver
feat(Data.Finset.Powerset): add card_powersetCard_filter Add `Finset.card_powersetCard_filter`: the number of `k`-element subsets of `t` containing `s` equals `Nat.choose (t.card - s.card) (k - s.card)`. The proof constructs a bijection between `(t.powersetCard k).filter (s ⊆ ·)` and `(t \ s).powersetCard (k - s.card)` via `· \ s` / `· ∪ s`, using `Finset.card_nbij'`. The hypothesis `s.card ≤ k` is necessary since natural subtraction would otherwise silently give the wrong result (`X.choose 0 = 1 ≠ 0`). Co-authored-by: Malte Jackisch --- We ran into this while formalizing Goodman's formula on triangle densities in graphs as part of an ongoing flag algebras project in Lean, and it seemed worth upstreaming. **Disclosure.** *This PR was developed with assistance from LLM code tools, used for Mathlib style alignment and proof compactness. The mathematical content and proof strategy originate from formalization work by Malte Jackisch (co-author) and myself; the final code has been reviewed and vouched for by both of us.* t-data new-contributor 20/0 Mathlib/Data/Finset/Powerset.lean 1 8 ['FordUniver', 'github-actions', 'mathlib-bors', 'wwylele'] nobody
0-4102
1 hour ago
0-6374
1 hour ago
0-5787
1 hour
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 32 ['cduenasnavarro', 'github-actions', 'linesthatinterlace', 'rkirov', 'vihdzp', 'wwylele'] RemyDegenne
assignee:RemyDegenne
0-2759
45 minutes ago
1-81432
1 day ago
8-65927
8 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
21-20760
21 days ago
21-20180
21 days ago
21-19593
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
9-12707
9 days ago
9-12127
9 days ago
9-11540
9 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
2-56697
2 days ago
9-50611
9 days ago
9-50024
9 days
38335 riccardobrasca
author:riccardobrasca
feat: add Monoid.End.ext --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
5/0 Mathlib/Algebra/Group/Hom/Defs.lean 1 1 ['github-actions'] nobody
1-9623
1 day ago
1-6522
1 day ago
1-5935
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 10 ['JadAbouHawili', 'artie2000', 'github-actions', 'wwylele'] nobody
0-85505
23 hours ago
8-73866
8 days ago
13-60453
13 days
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 easy maintainer-merge 1/1 Mathlib/Topology/Algebra/Module/Spaces/CompactConvergenceCLM.lean 1 3 ['github-actions', 'themathqueen'] j-loreaux
assignee:j-loreaux
0-84371
23 hours ago
5-5083
5 days ago
5-4496
5 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'] ocfnash
assignee:ocfnash
0-51134
14 hours ago
12-4709
12 days ago
12-4122
12 days
38365 vihdzp
author:vihdzp
feat: `#Ordinal = univ` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory easy 6/1 Mathlib/SetTheory/Ordinal/Univ.lean 1 1 ['github-actions'] nobody
0-22462
6 hours ago
0-20850
5 hours ago
0-20263
5 hours
38288 b-mehta
author:b-mehta
feat(Algebra/Group/Submonoid/Defs): add OneMemClass.coe_nonempty The main value of this is to make `simp` stronger --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy t-algebra
label:t-algebra$
14/4 Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/Group/Submonoid/Defs.lean,Mathlib/Data/ZMod/QuotientGroup.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/NumberTheory/LocalField/Basic.lean 5 3 ['github-actions', 'leanprover-radar', 'plp127'] nobody
0-10961
3 hours ago
0-8535
2 hours ago
0-7948
2 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 8 ['b-mehta', 'github-actions', 'tb65536'] tb65536
assignee:tb65536
0-6394
1 hour ago
2-17211
2 days ago
2-16624
2 days

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

There are currently no PRs on the review queue which are labelled 'tech debt' or 'longest-pole. Congratulations!