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 contains tables of

This dashboard was last updated on: October 21, 2025 at 21:19 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
26054 FMLJohn
author:FMLJohn
feat(RingTheory/GradedAlgebra/Homogeneous/Subsemiring): homogeneous subsemirings of a graded semiring --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) In this pull request, we have defined homogeneous subsemirings of `GradedRing 𝒜` where `𝒜 : ι → σ`, `SetLike σ A` and `AddSubmonoidClass σ A`. ## Main definitions For any `R : Subsemiring A`: * `Subsemiring.IsHomogeneous 𝒜 R`: The property that a subsemiring is closed under `GradedRing.proj`. * `HomogeneousSubsemiring 𝒜`: The structure extending subsemirings which satisfy `Subsemiring.IsHomogeneous`. t-ring-theory 120/0 Mathlib.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Subsemiring.lean 2 1 ['github-actions'] kim-em
assignee:kim-em
77-42054
2 months ago
77-42054
2 months ago
126-10765
126 days
24730 YaelDillies
author:YaelDillies
feat(RingTheory): group-like elements Define group-like elements in a bialgebra, ie elements such that `η a = 1` and `Δ a = a ⊗ₜ a`. We prove that group-like elements of a coalgebra over a domain are linearly independent, group-like elements of a bialgebra form a monoid, group-like elements of a Hopf algebra form a group. From Toric Co-authored-by: Michał Mrugała --- - [x] depends on: #24747 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory toric 309/0 Mathlib.lean,Mathlib/RingTheory/Bialgebra/GroupLike.lean,Mathlib/RingTheory/Coalgebra/GroupLike.lean,Mathlib/RingTheory/HopfAlgebra/GroupLike.lean 4 42 ['Julian-Kuelshammer', 'Parcly-Taxel', 'Whysoserioushah', 'YaelDillies', 'erdOne', 'eric-wieser', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot', 'smorel394'] eric-wieser
assignee:eric-wieser
77-41948
2 months ago
77-41948
2 months ago
163-85397
163 days
26770 Jun2M
author:Jun2M
feat(Combinatorics/Graph) : subgraph relations and operations on `Graph` This PR creates a new file `Combinatorics/Graph/Subgraph.lean`. In it, the PR introduces a partial order on graphs by subgraph relation, defines relations `IsInducedSubgraph`, `IsSpanningSubgraph` and `IsClosedSubgraph`. Further, it introduce operations `EdgeRestrict`, `EdgeDelete`, `induce` and `VertexDelete`. Co-authored-by: Peter Nelson --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 703/0 Mathlib.lean,Mathlib/Combinatorics/Graph/Subgraph.lean 2 1 ['github-actions'] awainverse
assignee:awainverse
75-73122
2 months ago
108-84600
3 months ago
108-84635
108 days
26765 KiringYJ
author:KiringYJ
feat(MeasureTheory/PiSystem): add π-λ theorem and SetLike instance Add two small features to `MeasureTheory/PiSystem`: 1. SetLike instance `instance : SetLike (DynkinSystem α) (Set α)` This lets us write `s ⊆ d` and `t ∈ d` for a DynkinSystem `d`, matching usual mathlib style. 2. `DynkinSystem.pi_lambda` lemma Classical π‑λ theorem: if a π‑system `s` is contained in a Dynkin system `d`, every set measurable for `σ(s)` is also in `d`. Currently, mathlib exposes this result only indirectly (e.g. via `generateFrom_eq`). Although logically equivalent, it is not obvious at first glance that those lemmas are the π‑λ theorem. The new lemma states the result in its familiar textbook form, so users can recognise and cite it immediately. Both pieces are under 10 lines, term‑mode only, and do not modify existing APIs. No breaking changes. No dependencies. new-contributor t-measure-probability 13/0 Mathlib/MeasureTheory/PiSystem.lean 1 13 ['EtienneC30', 'KiringYJ', 'github-actions', 'ocfnash'] RemyDegenne
assignee:RemyDegenne
74-73121
2 months ago
82-22770
2 months ago
109-10605
109 days
27534 PierreQuinton
author:PierreQuinton
feat: a typeclass for `sSup`/`sInf` to be lawful Adds lawful infima and suprema type classes. A preorder with lawful suprema: whenever a set has a least upper bound, `sSup` returns a least upper bound for that set. A preorder with lawful infima: whenever a set has a greatest lower bound, `sInf` returns a greastest lower bound for that set. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 121/8 Mathlib.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/LawfulSupInf.lean 3 25 ['PierreQuinton', 'YaelDillies', 'github-actions', 'plp127', 'vihdzp'] YaelDillies
assignee:YaelDillies
74-36898
2 months ago
86-20195
2 months ago
86-20221
86 days
24850 pechersky
author:pechersky
feat(Topology/UniformSpace/Ultra): uniform spaces induced by pseudometrics are ultra if system is ultra Any uniform space has a natural system of pseudometrics definable on it, comprised of those pseudometrics constructed from a descending chain of equivalence relation entourages. In a nonarchimedean uniformity, this pseudometric system induces the uniformity. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #23111 t-topology 509/1 Mathlib.lean,Mathlib/Topology/MetricSpace/BundledFun.lean,Mathlib/Topology/UniformSpace/Ultra/Pseudometrizable.lean 3 8 ['ADedecker', 'fpvandoorn', 'github-actions', 'mathlib4-dependent-issues-bot', 'pechersky'] urkud
assignee:urkud
70-73138
2 months ago
133-60448
4 months ago
149-5974
149 days
27000 gasparattila
author:gasparattila
feat(Analysis/Normed/Group/Quotient): isometric versions of isomorphisms This PR adds an isometric version of the third isomorphism theorem for groups and modules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import new-contributor t-analysis 49/2 Mathlib/Analysis/Normed/Group/Quotient.lean 1 1 ['github-actions'] urkud
assignee:urkud
70-73133
2 months ago
102-25860
3 months ago
102-25903
102 days
28198 Sebi-Kumar
author:Sebi-Kumar
feat(Analysis/InnerProductSpace/PiL2): Add instances for EuclideanSpace rank and EuclideanSpace being infinite Add an instance for `Fact (Module.finrank 𝕜 (EuclideanSpace 𝕜 (Fin n)) = n)` which is needed to apply [stereographic'](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Geometry/Manifold/Instances/Sphere.html#stereographic') to EuclideanSpace. Also add an instance for `Infinite (EuclideanSpace 𝕜 ι)` where `ι` is a nonempty fintype. I wasn't sure if these should go in separate pull requests, but they seemed similar enough to me. Thank you to Kenny Lau for the suggestions at [#mathlib4 > Instances for EuclideanSpace](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Instances.20for.20EuclideanSpace). --- To provide additional context, I am new to contributing to Mathlib, and I am doing so as a part of the Fields Undergraduate Summer Research Program at the University of Western Ontario under the supervision of Chris Kapulkin and Daniel Carranza. My goal is to contribute that the `n`-sphere is simply connected for `n > 1`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 6/0 Mathlib/Analysis/InnerProductSpace/PiL2.lean 1 1 ['github-actions'] urkud
assignee:urkud
64-73113
2 months ago
71-86349
2 months ago
71-86386
71 days
28072 kckennylau
author:kckennylau
feat(RingTheory/Valuation): make tactic rw_val_equiv Co-authored by Aaron Liu and Bhavik Mehta. A tactic to rewrite relations such as `max (v₁ x) (v₁ y) * v₁ z < 1` into `max (v₂ x) (v₂ y) * v₂ z < 1` , given `h : v₁.IsEquiv v₂`. Allowed relations are `≤`, `<`, `=`, `≠`. Allowed operations are: `0`, `1`, `v₁ r`, `⁻¹`, `^` (both `ℕ` and `ℤ`), `*`, `/`, `min`, `max`. Examples: ```lean example {R Γ₁ Γ₂ : Type} [Ring R] [LinearOrderedCommMonoidWithZero Γ₁] [LinearOrderedCommMonoidWithZero Γ₂] {v₁ : Valuation R Γ₁} {v₂ : Valuation R Γ₂} (h : v₁.IsEquiv v₂) {y z : R} : {x | v₁ x ^ 2 * min (v₁ y) (v₁ z) ≤ 1} = {x | v₂ x ^ 2 * min (v₂ y) (v₂ z) ≤ 1} := by rw_val_equiv h ``` It is also possible to use `←` to rewrite in the opposite direction, and to use `at h1 h3 ⊢` to specify which hypotheses (and/or goal) to rewrite, similar to the syntax of `rw`. There is also `rwa_val_equiv` to work like `rwa`. --- Zulip: [#Is there code for X? > Tactics for comparing equivalent valuations](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Tactics.20for.20comparing.20equivalent.20valuations) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 455/13 Mathlib/RingTheory/Valuation/Basic.lean,MathlibTest/Simproc/ValEquiv.lean 2 34 ['b-mehta', 'eric-wieser', 'github-actions', 'kckennylau', 'pechersky', 'plp127'] erdOne
assignee:erdOne
63-73128
2 months ago
74-8420
2 months ago
74-69316
74 days
28125 nonisomorphiclinearmap
author:nonisomorphiclinearmap
feat(Combinatorics): basic definition of simplicial complexes This PR introduces the basic definition of a finite (abstract) simplicial complex, located in Mathlib/Combinatorics/SimplicialComplex/Basic.lean. --- This is our first contribution to mathlib. This work was done as part of the Fields Institute Summer Undergraduate Program on formalization in topological combinatorics. Eventually, we aim to formalize Lovasz's proof of the Kneser Conjecture and this is a small stepping stone in that direction. Some other commits will shortly depend on this one. We would like to acknowledge the Fields Institute for Research in Mathematical Sciences for their sponsorship. We would also like to thank our supervisors, Professor Chris Kapulkin and Mr. Daniel Carranza, for their guidance and support throughout this project. We would also like to thank our group members Tom Lindquist and Quang Minh Nguyen for our fruitful discussions. new-contributor t-combinatorics 374/0 Mathlib.lean,Mathlib/Combinatorics/SimplicialComplex/Basic.lean,Mathlib/Combinatorics/SimplicialComplex/Category.lean,Mathlib/Combinatorics/SimplicialComplex/FacePoset.lean,Mathlib/Combinatorics/SimplicialComplex/Hom.lean 5 1 ['github-actions'] awainverse
assignee:awainverse
62-73136
2 months ago
74-5205
2 months ago
74-5241
74 days
28186 Sebi-Kumar
author:Sebi-Kumar
feat(Topology/Homotopy/Path): Add IsEquiv instance for Path.Homotopic Add `instance : IsEquiv (Path x₀ x₁) Homotopic` to the library. Allow use of lemmas like `of_eq` when proving two paths are homotopic. --- To provide additional context, I am relatively new to contributing to Mathlib, and I am doing so as a part of the Fields Undergraduate Summer Research Program hosted at the University of Western Ontario and supervised by Chris Kapulkin and Daniel Carranza. My goal is to prove that the `n`-sphere is simply connected for `n > 1`. Also, I am not super familiar with `IsEquiv` and when it should/shouldn't be used. I just wanted to use a lemma like `Path.Homotopic.of_eq` at one point while working on my code, and thought this was the best way to add such a result to the library. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology 5/0 Mathlib/Topology/Homotopy/Path.lean 1 4 ['Sebi-Kumar', 'github-actions', 'kckennylau'] PatrickMassot
assignee:PatrickMassot
62-73133
2 months ago
72-18063
2 months ago
72-18102
72 days
28399 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: ring-theoretic fractions in Rat --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 47/0 Mathlib.lean,Mathlib/RingTheory/Localization/Rat.lean 2 1 ['github-actions'] robertylewis
assignee:robertylewis
59-73142
1 month ago
68-46078
2 months ago
68-46116
68 days
27245 rirarika
author:rirarika
feat: multivariate polynomial ring properties about irreducibility --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
88/0 Mathlib.lean,Mathlib/Algebra/MvPolynomial/Irreducible.lean 2 5 ['alreadydone', 'github-actions', 'mbkybky'] alreadydone
assignee:alreadydone
59-19530
1 month ago
95-47976
3 months ago
95-48010
95 days
28531 Ruben-VandeVelde
author:Ruben-VandeVelde
chore: remove Cardinal imports from Topology.Algebra.InfiniteSum.Group --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 51/15 Mathlib.lean,Mathlib/Analysis/BoxIntegral/UnitPartition.lean,Mathlib/Analysis/Normed/Group/Pointwise.lean,Mathlib/Analysis/Normed/Module/Convex.lean,Mathlib/Analysis/SpecificLimits/Basic.lean,Mathlib/Topology/Algebra/InfiniteSum/Const.lean,Mathlib/Topology/Algebra/InfiniteSum/Group.lean,Mathlib/Topology/Algebra/InfiniteSum/NatInt.lean,Mathlib/Topology/Algebra/InfiniteSum/Order.lean,Mathlib/Topology/Algebra/InfiniteSum/Real.lean,Mathlib/Topology/Category/Stonean/Basic.lean,Mathlib/Topology/Instances/ENNReal/Lemmas.lean,Mathlib/Topology/Instances/NNReal/Lemmas.lean,Mathlib/Topology/MetricSpace/HausdorffDistance.lean,Mathlib/Topology/MetricSpace/Thickening.lean,Mathlib/Topology/PartitionOfUnity.lean 16 4 ['Ruben-VandeVelde', 'YaelDillies', 'github-actions'] TwoFX
assignee:TwoFX
58-73108
1 month ago
65-83960
2 months ago
65-83935
65 days
28132 dupuisf
author:dupuisf
feat: preliminary `grind` tags for `IsUnit` This PR adds preliminary `grind` tags for the `IsUnit` predicate. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
61/17 Mathlib/Algebra/Group/Action/Units.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Units/Basic.lean,Mathlib/Algebra/Ring/Units.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/SpecialFunctions/ContinuousFunctionalCalculus/Rpow/Basic.lean 6 2 ['github-actions', 'mathlib4-merge-conflict-bot'] kim-em
assignee:kim-em
57-73113
1 month ago
66-69461
2 months ago
66-69436
66 days
28325 pechersky
author:pechersky
feat(WithZeroTopology): `locallyCompactSpace_iff_locallyFiniteOrder_units` On the way to golf/generalize the proof that locally compact valued fields have locally finite valuation groups as embodied in `Valued.integer.locallyFiniteOrder_units_mrange_of_isCompact_integer` ] --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-order t-topology 160/2 Mathlib/Topology/Algebra/GroupWithZero.lean,Mathlib/Topology/Algebra/WithZeroTopology.lean,Mathlib/Topology/Compactness/Compact.lean 3 1 ['github-actions'] PatrickMassot
assignee:PatrickMassot
57-73110
1 month ago
69-55326
2 months ago
69-58027
69 days
27824 ChrisHughes24
author:ChrisHughes24
feat(Calculus): exists_gt_of_deriv_pos and variants --- I created a new file for this as I anticipate there will be many lemmas relating derivatives and monotonicity in future. Some lemmas relating deriviatives to monotonicity are already in mathlib and should maybe moved to the file (e.g. docs#HasDerivWithinAt.nonneg_of_monotoneOn). I stated them in as much generality as I could, copying the generality of `HasDerivWithinAt.nonneg_of_monotoneOn`. - [x] depends on: #28039 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 85/0 Mathlib.lean,Mathlib/Analysis/Calculus/Deriv/Order.lean 2 29 ['ChrisHughes24', 'EtienneC30', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] hrmacbeth
assignee:hrmacbeth
56-73139
1 month ago
67-16939
2 months ago
71-34628
71 days
25225 xcloudyunx
author:xcloudyunx
feat(Combinatorics/SimpleGraph): Eulerian walk in connected graph contains all vertices --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 16/0 Mathlib/Combinatorics/SimpleGraph/Trails.lean 1 6 ['IvanRenison', 'github-actions', 'vlad902'] kmill
assignee:kmill
55-35377
1 month ago
147-78903
4 months ago
147-78947
147 days
26914 quangvdao
author:quangvdao
feat(Data/PFunctor/Univariate): more definitions for univariate `PFunctor` This PR defines several basic definitions of `PFunctor`, including zero, one, constants, monomials, coproduct (sum), product, sigma, pi, tensor product, universe lifting, and equivalence. We also add: (1) simple lemmas connecting the basic definitions, (2) an automatically derived ext lemma for `PFunctor` via `@[ext]` attribute Some things I'm not clear on: - I define `HAdd` and `HMul` instances for coproduct and product of poly functors having different universe levels. Should I also define `Add` and `Mul` instances for poly functors having the same universe level? - Is it ok to define notation for tensor product, i.e. `@[inherit_doc] scoped infixr:80 " ⊗ " => tensor`? I'm worried it might clash with other notation. - Need a double-check on the priority of notation. Some future definitions to add: - Various equivalences arising from arithmetic identities, e.g., `P + 0 ≃ₚ P`. - Definitions of Lenses and Charts (each of them will be a file or even a folder) - Exponential objects (corresponding to both `prod` and `tensor`) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 144/5 Mathlib/Data/PFunctor/Univariate/Basic.lean 1 19 ['alexkeizer', 'eric-wieser', 'github-actions', 'quangvdao'] eric-wieser
assignee:eric-wieser
55-20093
1 month ago
104-74200
3 months ago
104-74236
104 days
23238 YaelDillies
author:YaelDillies
feat: extended floor and ceil My motivation for this is to prove `ENat.toENNReal (⨆ i, f i) = ⨆ i, ENat.toENNReal (f i)` and `ENat.toENNReal (⨅ i, f i) = ⨅ i, ENat.toENNReal (f i)`. Kalle Kytölä independently needs this for his formalisation of statistical physics. From MiscYD --- - [x] depends on: #24781 - [x] depends on: #24782 See #15269 for a past attempt. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
235/0 Mathlib.lean,Mathlib/Algebra/Order/Floor/Extended.lean 2 25 ['YaelDillies', 'b-mehta', 'eric-wieser', 'github-actions', 'grunweg', 'kkytola', 'mathlib4-dependent-issues-bot', 'urkud'] alreadydone
assignee:alreadydone
55-14369
1 month ago
163-11734
5 months ago
210-63942
210 days
22662 plp127
author:plp127
feat: Localization.Away.lift (computably) This PR adds `Localization.Away.lift'` and `Localization.Away.lift`, computable alternatives to `Localization.awayLift`. --- - [x] depends on: #24791 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
74/0 Mathlib/RingTheory/Localization/Away/Basic.lean 1 17 ['eric-wieser', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'plp127', 'vihdzp'] mariainesdff
assignee:mariainesdff
54-72899
1 month ago
162-77514
5 months ago
228-77486
228 days
26484 peabrainiac
author:peabrainiac
feat(Geometry/Diffeology): basics of diffeological spaces Introduces diffeological spaces, smooth maps between them, the D-topology and the standard diffeology on finite-dimensional normed spaces. --- This PR continues the work from #21969. t-differential-geometry 471/0 Mathlib.lean,Mathlib/Geometry/Diffeology/Basic.lean,docs/references.bib 3 10 ['JovanGerb', 'github-actions', 'grunweg', 'lecopivo', 'peabrainiac'] grunweg
assignee:grunweg
53-44761
1 month ago
115-65977
3 months ago
115-70719
115 days
26240 grunweg
author:grunweg
perf(CommandLinterLinter): use Substring more Probably, these changes make little difference, but let's find out. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-linter RFC 14/15 Mathlib/Tactic/Linter/CommandStart.lean 1 5 ['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] joneugster
assignee:joneugster
53-44517
1 month ago
122-82080
4 months ago
123-282
123 days
25856 MichaelStollBayreuth
author:MichaelStollBayreuth
perf(Data.Real.Sqrt): make Real.sqrt irreducible We try to see what happens if we make Real.sqrt irreducible. There are cases where this makes unification very significantly faster, compare [#mathlib4 > Coercion triggers timeout @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Coercion.20triggers.20timeout/near/517177117). (Migrated manually from #24752) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) migrated-from-branch t-data 7/5 Mathlib/Data/Real/Sqrt.lean 1 5 ['MichaelStollBayreuth', 'github-actions', 'j-loreaux', 'leanprover-bot'] ericrbg
assignee:ericrbg
51-872
1 month ago
51-5588
1 month ago
120-32178
120 days
25920 BoltonBailey
author:BoltonBailey
feat(Data/Finsupp/Basic): `Finsupp.optionElim'` Similar to how Finsupp.cons constructs a map Fin (n + 1) →₀ M from a map Fin n →₀ M, we define Finsupp.optionElim' to construct a map Option α →₀ M from a map α →₀ M, given an additional value for none. We base this on the new optionEquiv definition. As a function, it behaves as Option.elim', hence the name. We prove a variety of API lemmas, based on those for Finsupp.cons, to bring the definitions more in line with the contents of Data/Finsupp/Fin. We also refactor to a new file to help avoid a too-long file and make this more analogous to Finsupp.cons Original PR: https://github.com/leanprover-community/mathlib4/pull/13861 - [x] depends on: #26309 migrated-from-branch t-data 114/23 Mathlib/Algebra/Category/MonCat/Adjunctions.lean,Mathlib/Data/Finsupp/Option.lean 2 15 ['BoltonBailey', 'eric-wieser', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] eric-wieser
assignee:eric-wieser
50-52760
1 month ago
50-57806
1 month ago
115-28285
115 days
27308 xyzw12345
author:xyzw12345
feat(LinearAlgebra/SymmetricAlgebra): IsSymmetricAlgebra This PR continues the work from #24602. Original PR: https://github.com/leanprover-community/mathlib4/pull/24602 t-algebra
label:t-algebra$
78/0 Mathlib/LinearAlgebra/SymmetricAlgebra/Basic.lean,Mathlib/LinearAlgebra/SymmetricAlgebra/Basis.lean 2 3 ['github-actions', 'mattrobball', 'xyzw12345'] mattrobball
assignee:mattrobball
48-47242
1 month ago
93-24066
3 months ago
93-24109
93 days
28831 qawbecrdtey
author:qawbecrdtey
feat(Logic/Equiv/List): add `decodeList_encodeList_eq_self` and removed unnecessary linter options --- This is useful when we call `encode` and `decode` of a list to define a new `Encoder` involving `List`s. ```lean theorem decodeList_encodeList_eq_self (l : List α) : decodeList (encodeList l) = some l ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 7/6 Mathlib/Logic/Equiv/List.lean 1 1 ['github-actions'] awainverse
assignee:awainverse
47-73140
1 month ago
58-67184
1 month ago
58-67217
58 days
26277 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(RingTheory/Congruence/Hom): prove basic isomorphisms theorems for ring congruences This file contains elementary definitions involving congruence relations and morphisms for semirings, rings, and algebras. * `RingCon.ker`: the kernel of a monoid homomorphism as a congruence relation * `RingCon.lift`, `RingCon.liftₐ`: the homomorphism / the algebra morphism on the quotient given that the congruence is in the kernel * `RingCon.map`, `RingCon.mapₐ`: homomorphism / algebra morphism from a smaller to a larger quotient * `RingCon.quotientKerEquivRangeS`, `RingCon.quotientKerEquivRange`, `RingCon.quotientKerEquivRangeₐ` : the first isomorphism theorem for semirings (using `RingHom.rangeS`), rings (using `RingHom.range`) and algebras (using `AlgHom.range`). * `RingCon.comapQuotientEquivRangeS`, `RingCon.comapQuotientEquivRange`, `RingCon.comapQuotientEquivRangeₐ` : the second isomorphism theorem for semirings (using `RingHom.rangeS`), rings (using `RingHom.range`) and algebras (using `AlgHom.range`). * `RingCon.quotientQuotientEquivQuotient`, `RingCon.quotientQuotientEquivQuotientₐ` : the third isomorphism theorem for semirings (or rings) and algebras It is an adaptation of what existed for multiplicative congruences (docs#Con) and is only useful for semirings which are not rings. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 554/2 Mathlib.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/RingTheory/Congruence/Defs.lean,Mathlib/RingTheory/Congruence/Hom.lean 5 4 ['AntoineChambert-Loir', 'eric-wieser', 'github-actions'] joneugster
assignee:joneugster
46-49790
1 month ago
77-42176
2 months ago
120-84789
120 days
28613 espottesmith
author:espottesmith
feat(Combinatorics): define undirected hypergraphs This PR defines undirected hypergraphs: ``` @[ext] structure Hypergraph (α : Type*) where /-- The vertex set -/ vertexSet : Set α /-- The hyperedge set -/ hyperedgeSet : Set (Set α) /-- All hyperedges must be subsets of the vertex set -/ hyperedge_isSubset_vertexSet : ∀ ⦃e⦄, e ∈ hyperedgeSet → e ⊆ vertexSet ``` In addition to the main definition, some additional definitions and related lemmas are provided: - vertex adjacency - hyperedge adjacency - vertex "stars" - special cases (loops, empty hypergraphs, trivial hypergraphs, complete hypergraphs, simple hypergraphs, k-uniform hypergraphs, and d-regular hypergraphs) - (some) hypergraph cardinality - subhypergraphs, induced subhypergraphs, and partial hypergraphs This implementation is certainly bare-bones. I'm submitting this PR at this point, rather than when my developments are more fleshed out, because there has been some interest in others contributing to hypergraph formalization in mathlib. In the near future, goals include: - defining incidence matrices (i.e., conversion from `Hypergraph α` to `Matrix α (Set α) β` - coersion/generalization of graph as 2-uniform hypergraph - conversion of a hypergraph into its associated clique graph/two-section graph - constructing the dual of a hypergraph (note: on first blush, this appears somewhat challenging, given that we define hyperedges as `Set α` rather than some other type `β`) - rank and co-rank - walks, paths, cycles, etc. on hypergraphs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 375/0 Mathlib.lean,Mathlib/Combinatorics/Hypergraph/Basic.lean 2 52 ['b-mehta', 'espottesmith', 'github-actions', 'jt496', 'lauramonk', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
46-39186
1 month ago
46-39186
1 month ago
52-25368
52 days
29028 themathqueen
author:themathqueen
feat(Algebra/Star): define `unitary R →* StarAlgEquiv S R R` Every unitary defines a star-algebra automorphism (this is an extension of a special version of `MulSemiringAction.toRingEquiv` for unitaries). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
64/0 Mathlib.lean,Mathlib/Algebra/Star/UnitaryStarAlgAut.lean 2 14 ['eric-wieser', 'github-actions', 'themathqueen'] eric-wieser
assignee:eric-wieser
46-17782
1 month ago
53-41671
1 month ago
55-12275
55 days
19046 j-loreaux
author:j-loreaux
feat: define class `SemigroupAction` --- If I can get this building with minimal performance impact, I would like to change the names to: `MulAction → MonoidAction` `SemigroupAction → MulAction` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
48/26 Mathlib/Algebra/Azumaya/Matrix.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/Group/Action/Defs.lean,Mathlib/Algebra/Group/Action/Hom.lean,Mathlib/Algebra/Group/Action/Prod.lean,Mathlib/Algebra/Group/Action/TypeTags.lean,Mathlib/Algebra/Polynomial/Laurent.lean,Mathlib/GroupTheory/CoprodI.lean,Mathlib/LinearAlgebra/Eigenspace/Matrix.lean,Mathlib/LinearAlgebra/FreeModule/Finite/Quotient.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean,Mathlib/NumberTheory/ModularForms/CongruenceSubgroups.lean,Mathlib/RingTheory/Trace/Basic.lean 13 10 ['alreadydone', 'github-actions', 'j-loreaux', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'urkud'] jcommelin
assignee:jcommelin
45-73142
1 month ago
54-2972
1 month ago
60-30255
60 days
29040 PMKielstra
author:PMKielstra
feat: trapezoidal rule for integration This PR defines the trapezoidal rule and proves the standard error bound on it in terms of bounds on the second derivative. I have vague plans of using this plus interval arithmetic to develop a tactic that can automatically close goals of the form `\integral x in a..b, f x < y` or similar. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 273/0 Mathlib.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/TrapezoidalRule.lean 3 40 ['PMKielstra', 'github-actions', 'tb65536'] kex-y
assignee:kex-y
45-73136
1 month ago
54-80029
1 month ago
54-80465
54 days
29082 grunweg
author:grunweg
RFC: tag `IsInducing` and `Is{Open,Closed,}Embedding` with `fun_prop` I have not tested if this is usable in practice; perhaps it is not. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 37/5 Mathlib/Topology/Constructions.lean,Mathlib/Topology/Defs/Induced.lean,Mathlib/Topology/Maps/Basic.lean 3 1 ['github-actions'] jcommelin
assignee:jcommelin
45-73133
1 month ago
54-5385
1 month ago
54-5415
54 days
28511 YaelDillies
author:YaelDillies
feat(Finsupp): `congr!`-compatible version of `prod_congr` `congr!` doesn't like the `g1 x (f x)` appearing in the hypothesis of `Finsupp.prod_congr`: `f x` isn't a free variable. Note: A few proofs broke due to `simp` using `congr` lemmas internally. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
17/11 Mathlib/Algebra/BigOperators/Finsupp/Basic.lean,Mathlib/Algebra/Category/MonCat/Adjunctions.lean,Mathlib/Data/Finsupp/Multiset.lean,Mathlib/Data/Nat/Choose/Multinomial.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/LowDegree.lean 5 12 ['JovanGerb', 'YaelDillies', 'eric-wieser', 'github-actions', 'kmill'] kmill
assignee:kmill
44-37820
1 month ago
66-44275
2 months ago
66-44307
66 days
24184 YaelDillies
author:YaelDillies
feat: `[G : H]` notation for the index of `H : Subgroup G` This is a cute notation which I wrote for FLT. Not sure whether we want it in mathlib nor how to include `relindex` in the picture. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra RFC
label:t-algebra$
5/0 Mathlib/GroupTheory/Index.lean 1 8 ['YaelDillies', 'erdOne', 'github-actions', 'j-loreaux', 'kbuzzard', 'mathlib4-merge-conflict-bot'] eric-wieser
assignee:eric-wieser
38-8032
1 month ago
38-8057
1 month ago
185-82170
185 days
27936 alreadydone
author:alreadydone
feat(Algebra): additivize Dvd and Prime `Prime` can't be directly additivized, so we introduce `Preprime`, which drops the `≠ 0` condition, and additivize it to `AddPrime`. To show that `Preprime` is a reasonable definition, we show its connection to `Irreducible` under `IsPrimal` and `IsRegular` conditions. We also show that an element in a product monoid is preprime iff one component is a unit and the other is preprime, and the same with `Preprime` replaced by `Irreducible`. Also additivize `IsPrimal`, `IsRelPrime` and `DecompositionMonoid`. The motivation is that the primality of `single g 1` in `AddMonoidAlgebra k G` is connected to the primality of `g` in `G`. --- I've checked [all 29 files](https://github.com/search?q=repo%3Aleanprover-community%2Fmathlib4%20%E2%88%A3%20to_additive&type=code) containing the `∣` symbol and the `to_additive` attribute and fixed the wrongly translated (`dvd` to `addDvd`) names. TODO: connect (Add)Dvd to [ExistsMul/AddOfLE](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Algebra/Order/Monoid/Unbundled/ExistsOfLE.html#ExistsMulOfLE) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
400/191 Mathlib.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/BigOperators/Group/Finset/Defs.lean,Mathlib/Algebra/BigOperators/Group/Finset/Piecewise.lean,Mathlib/Algebra/BigOperators/Group/List/Lemmas.lean,Mathlib/Algebra/BigOperators/Group/Multiset/Basic.lean,Mathlib/Algebra/Divisibility/Basic.lean,Mathlib/Algebra/Divisibility/Finite.lean,Mathlib/Algebra/Divisibility/Hom.lean,Mathlib/Algebra/Divisibility/Prod.lean,Mathlib/Algebra/Divisibility/Units.lean,Mathlib/Algebra/Group/Action/Pointwise/Finset.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/Notation/Defs.lean,Mathlib/Algebra/Prime/Defs.lean,Mathlib/Algebra/Prime/Lemmas.lean,Mathlib/Algebra/Prime/Prod.lean,Mathlib/Data/Nat/Prime/Defs.lean,Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/GroupTheory/Coset/Card.lean,Mathlib/GroupTheory/Exponent.lean,Mathlib/GroupTheory/GroupAction/Blocks.lean,Mathlib/GroupTheory/GroupAction/Period.lean,Mathlib/GroupTheory/Index.lean,Mathlib/GroupTheory/OrderOfElement.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/GroupTheory/Schreier.lean,Mathlib/GroupTheory/SpecificGroups/Cyclic.lean,Mathlib/Tactic/ToAdditive/GuessName.lean 30 11 ['JovanGerb', 'adomani', 'alreadydone', 'bryangingechen', 'github-actions', 'mathlib4-merge-conflict-bot'] bryangingechen
assignee:bryangingechen
38-299
1 month ago
38-7446
1 month ago
76-56727
76 days
27252 Parcly-Taxel
author:Parcly-Taxel
feat: sharp bounds for `‖exp (I * x) - 1‖` when `x` is real From Carleson carleson t-analysis 44/0 Mathlib/Analysis/Complex/Trigonometric.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Bounds.lean 2 13 ['Parcly-Taxel', 'eric-wieser', 'github-actions', 'grunweg', 'mathlib4-merge-conflict-bot'] hrmacbeth
assignee:hrmacbeth
37-73121
1 month ago
45-39146
1 month ago
46-45601
46 days
29055 vihdzp
author:vihdzp
feat: `Ordinal.toENat` We essentially copy the Cardinal/ENat file but make it for ordinals instead. See [Zulip](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2317758.20Ordinal.2EtoENat/near/479768508) for some prior discussion on this PR (particularly, the duplication and how there's no easy way to resolve it.) --- Moved from #17758. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 292/0 Mathlib.lean,Mathlib/Data/ENat/Basic.lean,Mathlib/SetTheory/Cardinal/ENat.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/ENat.lean 6 1 ['github-actions'] alreadydone
assignee:alreadydone
37-73119
1 month ago
54-39351
1 month ago
54-39367
54 days
22039 YaelDillies
author:YaelDillies
feat: simproc for computing `Finset.Ixx` of natural numbers --- - [x] depends on: #22290 - [x] depends on: #22559 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-meta 315/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Simproc/FinsetInterval.lean,Mathlib/Util/Qq.lean 4 64 ['FLDutchmann', 'Paul-Lez', 'YaelDillies', 'eric-wieser', 'github-actions', 'grunweg', 'kckennylau', 'kim-em', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'urkud'] eric-wieser
assignee:eric-wieser
37-41606
1 month ago
188-39838
6 months ago
244-547
244 days
26544 vihdzp
author:vihdzp
feat(SetTheory/ZFC/Ordinal): Lean ordinals to ZFC ordinals We define `Ordinal.toZFSet` and prove that its outputs are precisely the ZFC ordinals. Moved from #19985. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-set-theory 166/5 Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Ordinal.lean,Mathlib/SetTheory/ZFC/PSet.lean,Mathlib/SetTheory/ZFC/Rank.lean 4 23 ['alreadydone', 'github-actions', 'leanprover-community-bot-assistant', 'staroperator', 'vihdzp'] b-mehta
assignee:b-mehta
36-73114
1 month ago
44-41672
1 month ago
71-19027
71 days
22043 YaelDillies
author:YaelDillies
chore: shortcut instance for `Neg ℤˣ` This lets us avoid importing `Ring` in downstream files (most of the effect is to come). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) file-removed t-algebra
label:t-algebra$
20/47 Mathlib.lean,Mathlib/Algebra/GCDMonoid/Nat.lean,Mathlib/Algebra/Group/Int/Units.lean,Mathlib/Algebra/Order/Ring/Abs.lean,Mathlib/Algebra/Ring/Int/Units.lean,Mathlib/Algebra/Ring/NegOnePow.lean,Mathlib/Data/Fintype/Units.lean,Mathlib/Data/Int/AbsoluteValue.lean,Mathlib/Data/Int/Associated.lean,Mathlib/GroupTheory/HNNExtension.lean,Mathlib/NumberTheory/NumberField/Basic.lean,MathlibTest/Zify.lean 12 17 ['YaelDillies', 'erdOne', 'eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-community-bot-assistant', 'mathlib-bors'] eric-wieser
assignee:eric-wieser
36-45527
1 month ago
160-28564
5 months ago
245-1587
245 days
26580 vasnesterov
author:vasnesterov
feat(Tactic/Order): translate linear orders to `Int` It was [pointed out](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/tactic.20for.20partial.20orders/near/515897754) that `order` is not complete for linear orders with lattice operations (while it remains complete for linear orders without lattice operations and for general lattices without assuming linearity). The problem for linear orders with lattice operations is NP-hard, but it can be translated from an arbitrary type to `Int` and then solved using a smart and efficient procedure (such as `omega`). This PR implements such a translation within the `order` tactic. Co-authored-by: Aaron Liu --- - [x] depends on: #26354 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 300/29 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Order.lean,Mathlib/Tactic/Order/Graph/Basic.lean,Mathlib/Tactic/Order/Preprocessing.lean,Mathlib/Tactic/Order/ToInt.lean,MathlibTest/order.lean 7 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'vasnesterov'] alexjbest
assignee:alexjbest
36-20515
1 month ago
36-20523
1 month ago
100-34825
100 days
26110 YaelDillies
author:YaelDillies
feat: sharp monoids Define sharp monoids, which are the monoids whose only unit is `1`. This concept is useful in log geometry and in particular shows up in the theory of affine monoids. This concept already existed in the guise of `Subsingleton Mˣ`, but giving it a name makes it easier to refer to and uncovers some missing instances. From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) toric t-algebra
label:t-algebra$
51/30 Mathlib/Algebra/BigOperators/Associated.lean,Mathlib/Algebra/BigOperators/Group/Finset/Basic.lean,Mathlib/Algebra/GCDMonoid/Basic.lean,Mathlib/Algebra/Group/Irreducible/Defs.lean,Mathlib/Algebra/Group/Pi/Units.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/Algebra/Group/Submonoid/Units.lean,Mathlib/Algebra/Group/Units/Basic.lean,Mathlib/Algebra/Group/Units/Defs.lean,Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/GroupWithZero/Divisibility.lean,Mathlib/Data/List/Prime.lean,Mathlib/Data/ZMod/Basic.lean,Mathlib/NumberTheory/DirichletCharacter/Basic.lean,Mathlib/RingTheory/ChainOfDivisors.lean,Mathlib/RingTheory/IntegralDomain.lean,Mathlib/RingTheory/UniqueFactorizationDomain/NormalizedFactors.lean,Mathlib/RingTheory/Valuation/Integers.lean 18 7 ['YaelDillies', 'b-mehta', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-merge-conflict-bot', 'vihdzp'] adomani
assignee:adomani
36-19665
1 month ago
40-14096
1 month ago
124-14137
124 days
29422 jsm28
author:jsm28
fix(Data/Finset/Max): Use `DecidableEq` for `insert` lemmas These `insert` in these lemma statements uses a `DecidableEq` instance derived from `LinearOrder`; make them syntactically more general by passing in a `DecidableEq` instance separately. (Some `insert` lemmas in this file already take `DecidableEq` hypotheses.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 8/8 Mathlib/Data/Finset/Max.lean 1 2 ['eric-wieser', 'github-actions'] nobody
36-15405
1 month ago
43-71083
1 month ago
43-71059
43 days
28973 YaelDillies
author:YaelDillies
feat(TensorProduct): `lTensor` as an `AlgHom` and other lemmas From Toric Co-authored-by: Michał Mrugała --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory toric 21/0 Mathlib/RingTheory/TensorProduct/Basic.lean 1 7 ['YaelDillies', 'eric-wieser', 'github-actions', 'themathqueen'] mattrobball
assignee:mattrobball
35-54502
1 month ago
35-74100
1 month ago
20-32669
20 days
29324 tb65536
author:tb65536
refactor(Analysis/Calculus/IteratedDeriv/Defs): tweak statement of `iteratedDerivWithin_one` This PR removes the `x` from `iteratedDerivWithin_one` to make it match `iteratedDerivWithin_zero`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 3/2 Mathlib/Analysis/Calculus/IteratedDeriv/Defs.lean 1 3 ['Ruben-VandeVelde', 'github-actions', 'grunweg'] grunweg
assignee:grunweg
34-10910
1 month ago
48-6852
1 month ago
48-6828
48 days
25831 ScottCarnahan
author:ScottCarnahan
feat (RingTheory/HahnSeries): Powers of a binomial This PR introduces powers of a binomial `single g 1 - single g' 1` in a Hahn series, where the powers take values in a binomial ring. These series behave as one would expect with respect to addition of powers, and comparison with natural number powers. They are often used in the theory of vertex algebras. --- - [x] depends on: #25830 - [x] depends on: #27497 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #24102.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/24102* t-ring-theory 132/0 Mathlib.lean,Mathlib/RingTheory/HahnSeries/Addition.lean,Mathlib/RingTheory/HahnSeries/Binomial.lean,Mathlib/RingTheory/HahnSeries/HEval.lean,Mathlib/RingTheory/HahnSeries/Multiplication.lean 5 13 ['ScottCarnahan', 'github-actions', 'kbuzzard', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] kbuzzard
assignee:kbuzzard
33-8792
1 month ago
67-82583
2 months ago
67-84037
67 days
29761 bwangpj
author:bwangpj
feat: Chinese Remainder Theorem for `ZMod n` Define `ZMod.equivPi`, the Chinese Remainder Theorem for `ZMod n`, decomposing it as a product of `ZMod` over its prime power factors. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 22/0 Mathlib/Data/Nat/Factorization/Basic.lean,Mathlib/Data/ZMod/QuotientRing.lean 2 8 ['Ruben-VandeVelde', 'bwangpj', 'github-actions', 'j-loreaux'] nobody
32-81793
1 month ago
32-81793
1 month ago
33-46776
33 days
26096 vasnesterov
author:vasnesterov
feat(Topology/Instances): Cantor set is the set of ternary numbers without `1`s * Prove `ofDigits_zero_two_sequence_mem_cantorSet`: If `x = 0.d₀d₁...` in base-3, and none of the digits `dᵢ` is `1`, then `x` belongs to the Cantor set. * Prove `ofDigits_zero_two_sequence_unique`: such a representation is uniquie. * Define `toTernary` which converts a real number from the Cantor set to its ternary representation without `1`s. * Prove `ofDigits_cantorToTernary : ofDigits (cantorToTernary x) = x`. --- This is a prerequisite for #26136. - [x] depends on: #26001 - [x] depends on: #26021 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-topology 231/0 Mathlib/Topology/Instances/CantorSet.lean,scripts/noshake.json 2 3 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] jcommelin
assignee:jcommelin
32-73128
1 month ago
39-85667
1 month ago
39-86022
39 days
29530 ShreckYe
author:ShreckYe
feat(Dynamics/PeriodicPts): some theorems for `Pi.map` in `Dynamics/PeriodicPts` analogous to those for `Prod.map` Split from #29204. Some namespace prefixes are added in `GroupTheory/OrderOfElement.lean` to distinguish the extra imports introduced. - [ ] depends on: #29528 large-import 77/8 Mathlib/Dynamics/PeriodicPts/Defs.lean,Mathlib/Dynamics/PeriodicPts/Lemmas.lean,Mathlib/GroupTheory/OrderOfElement.lean 3 2 ['github-actions', 'mathlib4-dependent-issues-bot'] dupuisf
assignee:dupuisf
32-73122
1 month ago
40-12555
1 month ago
40-13206
40 days
29569 chrisflav
author:chrisflav
chore(RingTheory/LocalProperties): add algebra versions of exactness lemmas The module variants are less convenient to apply directly in the case of algebras. From Pi1. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 67/0 Mathlib/RingTheory/LocalProperties/Exactness.lean 1 1 ['github-actions'] mattrobball
assignee:mattrobball
32-73117
1 month ago
39-79436
1 month ago
39-79554
39 days
27306 xyzw12345
author:xyzw12345
feat: `lie_ring` tactic and `LieReduce` command This PR continues the work from #22196. Original PR: https://github.com/leanprover-community/mathlib4/pull/22196 t-meta 810/2 Mathlib.lean,Mathlib/Algebra/Lie/Derivation/AdjointAction.lean,Mathlib/Tactic.lean,Mathlib/Tactic/LieAlgebra/Basic.lean,Mathlib/Tactic/LieAlgebra/LieRingNF.lean,Mathlib/Util/AtomM.lean,MathlibTest/lie_ring.lean,scripts/noshake.json 8 12 ['JovanGerb', 'github-actions', 'xyzw12345'] JovanGerb
assignee:JovanGerb
32-59136
1 month ago
42-63725
1 month ago
90-30801
90 days
26829 pechersky
author:pechersky
feat(RingTheory/Valuation): Valuation.leAddSubgroup and ideal/submodule versions of ltAddSubgroup Extracted from #25450 without changing how Valued works --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) @faenuccio hopefully this bypasses any wait on #14752 because I am not changing Valued files. t-ring-theory 173/0 Mathlib/RingTheory/Valuation/Basic.lean,Mathlib/RingTheory/Valuation/Integers.lean 2 7 ['JovanGerb', 'github-actions', 'mariainesdff', 'mathlib4-merge-conflict-bot', 'pechersky'] mariainesdff
assignee:mariainesdff
32-18682
1 month ago
74-9068
2 months ago
106-69979
106 days
29400 ShreckYe
author:ShreckYe
feat(`Algebra/BigOperators`): products of the results of insertion and removal on tuples and lists, and some needed lemmas large-import 102/0 Mathlib.lean,Mathlib/Algebra/BigOperators/Fin.lean,Mathlib/Algebra/BigOperators/Group/List/Basic.lean,Mathlib/Algebra/BigOperators/Group/List/Defs.lean,Mathlib/Algebra/BigOperators/Group/Vector/Basic.lean,Mathlib/Data/Fin/Tuple/Basic.lean 6 6 ['ShreckYe', 'bryangingechen', 'eric-wieser', 'github-actions'] bryangingechen
assignee:bryangingechen
31-84966
1 month ago
44-34518
1 month ago
44-34560
44 days
27429 smorel394
author:smorel394
feat(RepresentationTheory/FinGroupCharZero): applications of Maschke's theorem Prove some properties of representations that follow from Maschke's theorem: * If `G` is a finite group whose order is invertible in a field `k`, then every object of `Rep k G` (resp. `FDRep k G`) is injective and projective. * For an object `V` of `FDRep k G`, when `k` is an algebraically closed field in which the order of `G` is invertible: (1) `V` is simple if and only `V ⟶ V` is a `k`-vector space of dimension `1` (`FDRep.simple_iff_end_is_rank_one`); (2) When `k` is characteristic zero, `V` is simple if and only if `∑ g : G, V.character g * V.character g⁻¹ = Fintype.card G` (`FDRep.simple_iff_char_is_norm_one`). Note: This used to be #27165, but it was closed for some reason I don't understand. - [x] depends on: #27154 - [x] depends on: #27134 - [x] depends on: #27125 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
135/0 Mathlib.lean,Mathlib/RepresentationTheory/FinGroupCharZero.lean 2 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] jcommelin
assignee:jcommelin
31-73139
1 month ago
39-18876
1 month ago
39-19225
39 days
29562 ShreckYe
author:ShreckYe
feat(Analysis/SpecialFunctions/Trigonometric): tangent half-angle substitution t-analysis 82/0 Mathlib/Analysis/SpecialFunctions/Trigonometric/Complex.lean 1 1 ['github-actions'] urkud
assignee:urkud
31-73134
1 month ago
40-17976
1 month ago
40-18015
40 days
29235 yoh-tanimoto
author:yoh-tanimoto
feat(Topology/Algebra/Module/ClosedSubmodule): add `mapEquiv`, a variation of `ClosedSubmodule.map` for CLE add `ClosedSubmodule.mapEquiv` for continuous linear equivalence. In this case, a closed submodule is mapped to a closed submodule, so the definitions are easier and behave nicely with `closure` and `⊔`. motivation: needed to define standard subspaces in a Hilbert space (scalar multiplication by `Complex.I`) #29251 https://ems.press/content/serial-article-files/48171 - [x] depends on: #29230 for `Lattice` `CompleteLattice` t-topology 69/1 Mathlib/Topology/Algebra/Module/ClosedSubmodule.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] fpvandoorn
assignee:fpvandoorn
30-82868
1 month ago
39-16282
1 month ago
39-18567
39 days
22151 alreadydone
author:alreadydone
feat(RingTheory): a semiprimary ring is Noetherian/Artinian iff its Jacobson radical is fg A key fact used is `Module.FG.smul`: if `I` is a two-sided ideal of `R` that is f.g. as a left ideal and `N` is a f.g. `R`-module, then `I • M` is also a f.g. `R`-module. Many lemmas about coprimality of ideals are also generalized to the noncommutative, two-sided setting. --- - [x] depends on: #21904 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 233/166 Mathlib/Algebra/Algebra/Operations.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/RingTheory/Extension/Basic.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Ideal.lean,Mathlib/RingTheory/HopkinsLevitzki.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Operations.lean 9 10 ['alreadydone', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] eric-wieser
assignee:eric-wieser
29-4070
29 days ago
29-4136
29 days ago
209-3189
209 days
29497 xyzw12345
author:xyzw12345
feat(Counterexamples): A ring such that dim A = 1 but dim A[x] = 3 In this PR, we constructed an example of a commutative ring `A` that satisfies `ringKrullDim A = 1` but `ringKrullDim A[X] = 3`, following the construction of https://math.stackexchange.com/questions/1267419/examples-of-rings-whose-polynomial-rings-have-large-dimension --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
176/0 Counterexamples.lean,Counterexamples/DimensionPolynomial.lean,Mathlib.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/RingTheory/KrullDimension/LocalRing.lean,Mathlib/RingTheory/LocalRing/MaximalIdeal/Basic.lean 7 15 ['github-actions', 'joelriou', 'kbuzzard', 'kckennylau', 'kim-em', 'xyzw12345'] joelriou
assignee:joelriou
28-75458
28 days ago
28-75458
28 days ago
40-19258
40 days
29688 tb65536
author:tb65536
feat(FieldTheory/IsGaloisGroup): prove the Galois correspondence for `IsGaloisGroup` This PR reproves the Galois correspondence for `IsGaloisGroup`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
89/0 Mathlib/FieldTheory/Galois/IsGaloisGroup.lean 1 1 ['github-actions'] joneugster
assignee:joneugster
28-73128
28 days ago
36-1444
1 month ago
36-1421
36 days
29624 mcdoll
author:mcdoll
feat(LinearAlgebra/LinearPMap): add definition of resolvent and first resolvent identity --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
180/2 Mathlib/LinearAlgebra/LinearPMap.lean 1 2 ['github-actions', 'mcdoll'] kim-em
assignee:kim-em
28-496
28 days ago
36-11447
1 month ago
36-11424
36 days
27817 zhuyizheng
author:zhuyizheng
feat: add IMO2025P1 Add a solution to IMO2025P1, the original problem statement from https://github.com/jsm28/IMOLean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) IMO new-contributor 1310/0 Archive.lean,Archive/Imo/Imo2025Q1.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] dwrensha
assignee:dwrensha
27-36250
27 days ago
32-55722
1 month ago
64-80827
64 days
28871 JaafarTanoukhi
author:JaafarTanoukhi
feat(Combinatorics/Digraph): Tournaments Define orientations and tournaments. Related to #26771. Co-authored-by: Rida Hamadani --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 62/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/Digraph/Tournament.lean 3 5 ['JaafarTanoukhi', 'NotWearingPants', 'Rida-Hamadani', 'github-actions'] kmill
assignee:kmill
27-16383
27 days ago
58-6620
1 month ago
58-6653
58 days
28967 utkuokur
author:utkuokur
refactor(Combinatorics/SimpleGraph/Walk): simplify proof of "support_tail_of_not_nil" The proof of the lemma named "support_tail_of_not_nil" is shortened. Since "support_tail" is not needed anymore, it is removed. @[deprecated (since := "2025-08-26")] sign is added for the removed "support_tail". The library references to "support_tail" are replaced with "support_tail_of_not_nil". To keep [@simp] on "cons_support_tail" and avoid the linter error, the [@simp] of "support_tail_of_not_nil" (previously on "support_tail") is removed. There might be a better way that I am missing, to deal with the linter error. --- Additionally, a merge conflict with `master` was resolved by keeping the generalized `support_tail_of_not_nil` and reintroducing `support_tail` as a deprecated alias for compatibility. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 7/10 Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean 2 3 ['github-actions', 'mathlib4-merge-conflict-bot', 'themathqueen'] awainverse
assignee:awainverse
27-7697
27 days ago
43-1869
1 month ago
56-17780
56 days
27307 xyzw12345
author:xyzw12345
feat(RingTheory/GradedAlgebra): homogeneous relation This PR continues the work from #22279. Original PR: https://github.com/leanprover-community/mathlib4/pull/22279 t-ring-theory 391/0 Mathlib.lean,Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/Module/LinearMap/Defs.lean,Mathlib/Algebra/Ring/Equiv.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousRelation.lean 9 9 ['chrisflav', 'eric-wieser', 'github-actions', 'ocfnash', 'xyzw12345'] mattrobball
assignee:mattrobball
26-73130
26 days ago
78-13117
2 months ago
93-24431
93 days
29596 alreadydone
author:alreadydone
chore(Algebra): extract `Submonoid.IsLocalizationMap` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
282/119 Mathlib.lean,Mathlib/Algebra/Module/LocalizedModule/IsLocalization.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Lemmas.lean,Mathlib/GroupTheory/MonoidLocalization/MonoidWithZero.lean,Mathlib/RingTheory/Extension/Presentation/Submersive.lean,Mathlib/RingTheory/Localization/Defs.lean 7 3 ['github-actions', 'mathlib4-merge-conflict-bot'] kim-em
assignee:kim-em
26-73126
26 days ago
34-26683
1 month ago
38-39604
38 days
27229 WilliamCoram
author:WilliamCoram
feat(GroupTheory/DoubleCoset): multiple lemmas From FLT --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory FLT new-contributor 97/0 Mathlib/GroupTheory/DoubleCoset.lean 1 16 ['Ruben-VandeVelde', 'WilliamCoram', 'github-actions', 'mathlib4-merge-conflict-bot'] mariainesdff
assignee:mariainesdff
26-37763
26 days ago
33-13408
1 month ago
91-79282
91 days
29411 llllvvuu
author:llllvvuu
feat(LinearAlgebra/Matrix/Rank): rank factorization The rank factorization derived from `Module.finBasis`. Co-authored-by: Aristotle Harmonic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
20/0 Mathlib/LinearAlgebra/Matrix/Rank.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean 2 1 ['github-actions'] jcommelin
assignee:jcommelin
26-16437
26 days ago
43-85765
1 month ago
43-85757
43 days
29526 llllvvuu
author:llllvvuu
feat: `Multiset.map f` identifies `f` up to permutation Motivation: Reason about `Fintype`-indexed families via `Multiset` equality. Example use case 1: ```lean theorem Matrix.IsHermitian.cfc_eigenvalues {d : Type*} [Fintype d] [DecidableEq d] {M : Matrix d d 𝕜} (hM : M.IsHermitian) (f : ℝ → ℝ) (hcfc : Matrix.IsHermitian (cfc f M) := cfc_predicate f M) : ∃ (e : d ≃ d), hcfc.eigenvalues = f ∘ hM.eigenvalues ∘ e := by have := hcfc.roots_charpoly_eq_eigenvalues.symm rw [hM.charpoly_cfc_eq f, Polynomial.roots_prod] at this; swap · simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero] simp_rw [Polynomial.roots_X_sub_C, Multiset.bind_singleton] at this have he := (Multiset.compTriple_equivOfMapUnivEq this).comp_eq simp_rw [← Function.comp_def RCLike.ofReal, ← Function.comp_def f, Function.comp_assoc] at he exact ⟨_, RCLike.ofReal_injective.comp_left he.symm⟩ ``` Example use case 2 (on top of https://github.com/leanprover-community/mathlib4/pull/29610): ```lean theorem LinearMap.Eigenbasis.μ_equiv {ι ι' R G : Type*} [Fintype ι] [Fintype ι'] [CommRing R] [IsDomain R] [AddCommGroup G] [Module R G] [Module.Free R G] [Module.Finite R G] {f : Module.End R G} (B₁ : f.Eigenbasis ι) (B₂ : f.Eigenbasis ι') : ∃ e : ι ≃ ι', B₁.μ = B₂.μ ∘ e := by classical have := congr(Polynomial.roots $(B₁.charpoly_eq.symm.trans B₂.charpoly_eq)) rw [Polynomial.roots_prod, Polynomial.roots_prod] at this; rotate_left · simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero] · simp [Finset.prod_ne_zero_iff, Polynomial.X_sub_C_ne_zero] simp_rw [Polynomial.roots_X_sub_C, Multiset.bind_singleton] at this exact ⟨Multiset.equivOfMapUnivEq this, (Multiset.compTriple_equivOfMapUnivEq this).comp_eq.symm⟩ ``` Co-authored-by: Aristotle Harmonic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 35/0 Mathlib/Data/Multiset/Fintype.lean 1 8 ['Ruben-VandeVelde', 'github-actions', 'llllvvuu', 'vihdzp', 'wwylele'] nobody
26-16105
26 days ago
40-71535
1 month ago
40-71527
40 days
29488 Timeroot
author:Timeroot
feat: 'said' tactic Functionally similar to `says`, but explicitly not for checking output or even saying there ever was output. `X said Y` just means that `X` was part of the process for (a human, or machine, or both) to generate `Y`. Based on this [#mathlib4 > noisy simp says in CI @ 💬](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/noisy.20simp.20says.20in.20CI/near/538443152) Zulip discussion --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 40/0 Mathlib/Tactic/Linter/UnusedTactic.lean,Mathlib/Tactic/Linter/UnusedTacticExtension.lean,Mathlib/Tactic/Says.lean,MathlibTest/says.lean 4 3 ['JovanGerb', 'MichaelStollBayreuth', 'github-actions'] JovanGerb
assignee:JovanGerb
25-73127
25 days ago
33-45101
1 month ago
41-64647
41 days
29771 Vierkantor
author:Vierkantor
refactor(TacticAnalysis): use full CommandElabM context in test Running the `rwMerge` linter on the whole of Mathlib reveals that the tactic analysis framework did not always correctly pass the environment to the test step of a pass. By running the test in a full `CommandElabM` and adding a `ContextInfo` and `TacticInfo`, we can access the right environment (using the `ctxI.runTacticCode` function). There are still a few subtle issues to do with notation but I would like to get this fix in first, since it involves some larger refactors. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 44/17 Mathlib/Tactic/TacticAnalysis.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,MathlibTest/TacticAnalysis.lean 3 7 ['adomani', 'bryangingechen', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] kim-em
assignee:kim-em
25-73121
25 days ago
33-20647
1 month ago
33-37175
33 days
29538 YaelDillies
author:YaelDillies
refactor(FractionalIdeal): use algebraic order theory API Instantiate instances earlier and use generic lemmas instead of the `FractionalIdeal`-specific ones. Also rename `_nonzero` in lemma names to `_ne_zero`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 158/176 Mathlib/NumberTheory/NumberField/CanonicalEmbedding/Basic.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Basic.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/FractionalIdeal/Basic.lean,Mathlib/RingTheory/FractionalIdeal/Inverse.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean 8 1 ['github-actions'] chrisflav
assignee:chrisflav
23-73116
23 days ago
37-28826
1 month ago
37-28810
37 days
29791 llllvvuu
author:llllvvuu
feat(Order): lemmas about `iSupIndep` * generalize `Finset.SupIndep` "bind" operations from `DistribLattice` to `IsModularLattice` * new lemma `iSupIndep.iInf` * more characterizations of `iSupIndep` on submodules: * `iSupIndep_iff_finset_sum_eq_zero_imp_eq_zero` * `iSupIndep_iff_finset_sum_eq_imp_eq` * add `@[simp]` and `@[grind]` attributes which were helpful for these proofs Original motivation was to have the following fact: ```lean theorem iSupIndep_iInf_genEigenspace [NoZeroSMulDivisors R M] {α : Type*} (f : α → End R M) (k : ℕ∞) : iSupIndep fun μ : α → R ↦ ⨅ a : α, ((f a).genEigenspace (μ a)) k := .iInf (f · |>.genEigenspace · k) (f · |>.independent_genEigenspace k) ``` Co-authored-by: Aristotle Harmonic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 166/62 Mathlib/Data/Finset/Disjoint.lean,Mathlib/Data/Finset/Lattice/Fold.lean,Mathlib/Data/Finset/Lattice/Union.lean,Mathlib/Data/Finset/Sigma.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/LinearAlgebra/DFinsupp.lean,Mathlib/LinearAlgebra/Eigenspace/Basic.lean,Mathlib/Logic/Embedding/Basic.lean,Mathlib/Order/CompactlyGenerated/Basic.lean,Mathlib/Order/Partition/Finpartition.lean,Mathlib/Order/SupIndep.lean 11 12 ['github-actions', 'leanprover-bot', 'llllvvuu'] bryangingechen
assignee:bryangingechen
23-73115
23 days ago
31-69704
1 month ago
32-6923
32 days
29512 grunweg
author:grunweg
feat: check for PR titles which do not start with "feat" etc. We ignore draft PRs and PRs with the WIP label. The set of checks is intentionally kept small, and could be expanded in the future. --- More basic version of #16303: given that mathlib's statistics will use the PR kind, let's make sure PR kinds are somewhat appropriate. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 365/0 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Linter/ValidatePRTitle.lean,lakefile.lean,scripts/README.md,scripts/check_title_labels.lean 10 17 ['bryangingechen', 'eric-wieser', 'github-actions', 'grunweg'] bryangingechen
assignee:bryangingechen
23-54652
23 days ago
41-17087
1 month ago
41-17062
41 days
28719 mitchell-horner
author:mitchell-horner
refactor: redefine `IsTuranMaximal` Redefined `IsTuranMaximal := G.IsExtremal (CliqueFree · (r + 1))` and - replaced `classical` in `IsTuranMaximal.le_iff_eq` with `DecidableRel` - refactored `turanGraph.instDecidableRelAdj`, `turanGraph_zero`, `exists_isTuranMaximal` - added `open Fintype` - replaced `simp only` with `rw` or `simp_rw` --- - [x] depends on: #28721 - [x] depends on: #29054 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 33/46 Mathlib/Combinatorics/SimpleGraph/Extremal/Turan.lean 1 8 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'mitchell-horner', 'vihdzp'] kmill
assignee:kmill
23-43397
23 days ago
23-46728
23 days ago
50-65850
50 days
25843 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): define `between` subgraphs The simple graph `G.between s t` is the subgraph of `G` containing edges that connect a vertex in the set `s` to a vertex in the set `t`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #24948.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/24948* t-combinatorics 86/0 Mathlib/Combinatorics/SimpleGraph/Bipartite.lean 1 1 ['github-actions'] b-mehta
assignee:b-mehta
23-43373
23 days ago
130-27485
4 months ago
130-27460
130 days
29369 vlad902
author:vlad902
feat(SimpleGraph): `IsSubwalk` of common Walk decompositions Add some helper lemmas to show that decompositions of walks are sub-walks. t-combinatorics 61/17 Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkDecomp.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean 2 1 ['github-actions'] awainverse
assignee:awainverse
22-73129
22 days ago
46-12206
1 month ago
46-12248
46 days
29121 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: MvPolynomial.symmetricSubalgebra.{aevalMultiset,sumPolynomial} --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 192/0 Mathlib.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/Eval.lean 2 1 ['github-actions'] chrisflav
assignee:chrisflav
22-47667
22 days ago
52-72794
1 month ago
52-72826
52 days
29735 vihdzp
author:vihdzp
feat: order instances on quotients We define a `Preorder (Quotient s)` instance in the natural way, and prove that it can be strengthened to a `LinearOrder` when all equivalence classes are `OrdConnected`. --- See [Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Quotient.20of.20linear.20order.20is.20linear.20order/near/539915988) for some long-winded discussion about this. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 125/0 Mathlib.lean,Mathlib/Order/Quotient.lean 2 3 ['github-actions', 'plp127'] bryangingechen
assignee:bryangingechen
22-29922
22 days ago
34-57371
1 month ago
34-57405
34 days
27416 joelriou
author:joelriou
feat(Algebra/Homology): Ext modules In this PR, we show that if `C` is a `R`-linear abelian category, then there is a `R`-module structure on the groups `Ext X Y n` for `X` and `Y` in `C` and `n : ℕ`. --- - [x] depends on: #26031 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-algebra t-category-theory
label:t-algebra$
164/12 Mathlib.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/Ext/Linear.lean,Mathlib/Algebra/Homology/DerivedCategory/Linear.lean,Mathlib/CategoryTheory/Shift/ShiftedHom.lean 5 7 ['Thmoas-Guan', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot'] dagurtomas
assignee:dagurtomas
12-35454
12 days ago
29-18829
29 days ago
29-18948
29 days
29877 Komyyy
author:Komyyy
feat: inner product of the gradient Also, this PR enables the `conj` notation in the file. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 37/10 Mathlib/Analysis/Calculus/Gradient/Basic.lean 1 1 ['github-actions'] hrmacbeth
assignee:hrmacbeth
21-73113
21 days ago
29-31977
29 days ago
29-31955
29 days
29888 mcdoll
author:mcdoll
feat(Analysis/Normed): Extend densely defined LinearMaps to CLM This PR both adds a new and more user-friendly way to extend a CLM defined on a dense subspace. It also moves the old definition to the same file and as a side effect, we reduce the import tree. The moved parts are not modified except for adapting the sections and imports. Original definition of `ContinuousLinearMap.extend` was by Zhouhang Zhou in 2019 (mathlib3 PR #1649) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 254/86 Mathlib.lean,Mathlib/Analysis/InnerProductSpace/LinearPMap.lean,Mathlib/Analysis/Normed/Operator/Completeness.lean,Mathlib/Analysis/Normed/Operator/Extend.lean,Mathlib/MeasureTheory/Integral/SetToL1.lean 5 2 ['github-actions', 'mcdoll'] hrmacbeth
assignee:hrmacbeth
21-73112
21 days ago
28-85580
28 days ago
29-16930
29 days
29341 joelriou
author:joelriou
feat(Topology): the topology generated by a family of spaces Some categories of topological spaces are "convenient" in the sense that they have nice categorical properties (e.g. they have limits, colimits and are cartesian closed). This PR is the first in a series towards showing that delta generated spaces form a cartesian closed monoidal category (see https://github.com/joelriou/topcat-model-category/blob/852a514c1d955ab586507bcd5a7b5efb99c6c3df/TopCatModelCategory/Convenient/CartesianClosed.lean#L92 for the general result), and this result is part of my formalization effort towards the Quillen model category structure on simplicial sets. In this PR, given a family `X` of topological spaces, and a topological space `Y`, we introduce the `X`-generated topology on `Y`, which is coinduced by all continuous maps `X i → Y`. (Eventually, this will generalize previous works by Dagur Asgeirsson and Ben Eltschig about compactly/delta generated spaces in mathlib. At some point, their definitions will be refactored as particular cases of the definitions in this PR series.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 291/0 Mathlib.lean,Mathlib/Topology/Convenient/GeneratedBy.lean,docs/references.bib 3 10 ['github-actions', 'joelriou', 'peabrainiac'] jcommelin
assignee:jcommelin
21-16311
21 days ago
47-42379
1 month ago
47-42354
47 days
29909 Vierkantor
author:Vierkantor
feat(CI): add build output to CI workflows This PR uses the Zulip build report script (originally developed for the nightly-regression-report workflow) to add a summary of build output to other Zulip posts about workflow results. This allows us to more easily see the origin of a failure. This requires redoing the script a little to make it a bit more flexible, and the output is slightly reformatted to become consistent across the various workflows (4 of them that post to Zulip). We don't do so for the nightly-testing failures, since those run in a different workflow, and it would be a lot of work to access the command output from another workflow. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) CI 93/69 .github/workflows/daily.yml,.github/workflows/nightly-docgen.yml,.github/workflows/nightly-regression-report.yml,scripts/zulip_build_report.sh 4 1 ['github-actions'] robertylewis
assignee:robertylewis
20-73105
20 days ago
28-24480
28 days ago
28-24458
28 days
25974 scholzhannah
author:scholzhannah
feat(Topology/Compactness/CompactlyCoherentSpace): compact coherentification (k-ification) This PR defines the notion of turning an arbitrary topological space into a compactly coherent space. Compactly coherent spaces are commonly referred to as "compactly generated spaces" or "k-spaces" in the literature while the operation of turning a space into such as space is called the "k-ification". There are however three different notions that are described with this name. To disambiguate we use the names "compactly coherent space" and "compactcoherentification" here. See [this wikipedia page](https://en.wikipedia.org/wiki/Compactly_generated_space) for an explanation of these notions. This PR continues the work from #25318. Original PR: https://github.com/leanprover-community/mathlib4/pull/25318 Co-authored-by: Floris van Doorn large-import t-topology 174/5 Mathlib/Topology/Compactness/CompactlyCoherentSpace.lean 1 4 ['github-actions', 'joelriou', 'scholzhannah'] ADedecker
assignee:ADedecker
20-43362
20 days ago
21-29084
21 days ago
120-9494
120 days
29306 YaelDillies
author:YaelDillies
chore(GroupTheory/GroupAction/Basic): don't import `Module` This is useful to be able to replace `NoZeroSMulDivisors` with `Module.IsTorsionFree` later. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
16/17 Mathlib/GroupTheory/GroupAction/Basic.lean,Mathlib/LinearAlgebra/Projectivization/Cardinality.lean 2 8 ['YaelDillies', 'eric-wieser', 'github-actions', 'riccardobrasca'] eric-wieser
assignee:eric-wieser
20-38493
20 days ago
44-50314
1 month ago
48-11656
48 days
26332 Timeroot
author:Timeroot
feat(ModelTheory/Definability): TermDefinable functions This PR continues the work from #23506. Original PR: https://github.com/leanprover-community/mathlib4/pull/23506 t-logic 145/0 Mathlib/Data/Rel.lean,Mathlib/ModelTheory/Definability.lean,scripts/noshake.json 3 28 ['Timeroot', 'github-actions', 'mathlib4-merge-conflict-bot', 'staroperator'] fpvandoorn
assignee:fpvandoorn
20-27626
20 days ago
36-18711
1 month ago
117-66897
117 days
26287 mbkybky
author:mbkybky
feat(Data/ENat/Lattice): coercion to `WithBot ℕ∞` commutes with `biSup` The coercion from `ℕ∞` to `WithBot ℕ∞` commutes with `biSup` and `biInf`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 24/0 Mathlib/Data/ENat/Lattice.lean 1 5 ['github-actions', 'kckennylau', 'mbkybky'] ericrbg
assignee:ericrbg
20-23455
20 days ago
20-23455
20 days ago
100-24677
100 days
25969 101damnations
author:101damnations
feat(RepresentationTheory/Homological/GroupHomology/Functoriality): the degree 1 part of the corestriction-coinflation exact sequence Given a `G`-representation `A` and a normal subgroup `S` of `G`, this PR defines the corestriction-coinflation short complex `H₁(S, A) ⟶ H₁(G, A) ⟶ H₁(G ⧸ S, A_S)` induced by the natural inclusion `S → G` and projections `G → G / S, A → A_S`. We prove it's exact, and that the righthand map is an epimorphism. --- - [x] depends on: #21652 - [x] depends on: #21732 - [x] depends on: #21733 - [x] depends on: #21735 - [x] depends on: #21736 - [x] depends on: #21738 - [x] depends on: #25868 - [x] depends on: #25873 - [x] depends on: #25880 - [x] depends on: #25884 - [x] depends on: #25888 - [x] depends on: #25939 - [x] depends on: #25952 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *Earlier version at #22656.* t-algebra
label:t-algebra$
262/9 Mathlib/Algebra/Homology/ShortComplex/ModuleCat.lean,Mathlib/RepresentationTheory/Coinvariants.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/Basic.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/Functoriality.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/LowDegree.lean 5 n/a ['101damnations', 'github-actions', 'jcommelin', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
20-4330
20 days ago
unknown
unknown
26923 oliver-butterley
author:oliver-butterley
feat(Dynamics/BirkhoffSum): add the pointwise ergodic theorem (Birkhoff's) The Pointwise Ergodic Theorem, also known as Birkhoff's Ergodic Theorem. Co-authored-by: Lua Viana Reis - [x] depends on: #26074 - [x] depends on: #26807 - [x] depends on: #26810 - [x] depends on: #26840 - [x] depends on: #26842 - [x] depends on: #26848 - [x] depends on: #26851 - [x] depends on: #26852 - [x] depends on: #26853 - [x] depends on: #27008 - [x] depends on: #28901 Zulip: [PR thread](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2326923.20The.20pointwise.20ergodic.20theorem.20.28Birkhoff's.29/with/527835158) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-dynamics 401/0 Mathlib.lean,Mathlib/Dynamics/BirkhoffSum/Pointwise.lean 2 13 ['D-Thomine', 'github-actions', 'leanprover-community-bot-assistant', 'lua-vr', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] urkud
assignee:urkud
19-40639
19 days ago
56-59482
1 month ago
63-28949
63 days
29964 Vierkantor
author:Vierkantor
feat(TacticAnalysis): check if we are in a `try`/`anyGoals` context This PR adds a check if the tactic is being run in a `try` or `anyGoals` call, so that we do not add a warning for the original tactic failing in this context. This was the source of a few "original tactic failed" in the `grind` regression reports. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 71/31 Mathlib/Tactic/TacticAnalysis.lean,Mathlib/Tactic/TacticAnalysis/Declarations.lean,MathlibTest/TacticAnalysis.lean 3 1 ['github-actions'] adamtopaz
assignee:adamtopaz
18-73130
18 days ago
26-45526
26 days ago
26-45504
26 days
29967 kim-em
author:kim-em
chore: fix longest pole utilities, and verify in CI We should consider outright deleting these. The fact that they were broken is good evidence they haven't been used recently. Sebastian also has a good replacement available (that is aware of the module system), although I'm not sure it's deployed yet. CI 26/22 .github/build.in.yml,.github/workflows/bors.yml,.github/workflows/build.yml,.github/workflows/build_fork.yml,LongestPole/Main.lean,LongestPole/Unused.lean 6 2 ['bryangingechen', 'github-actions'] bryangingechen
assignee:bryangingechen
18-73129
18 days ago
26-36731
26 days ago
26-36767
26 days
29734 bwangpj
author:bwangpj
feat(Probability/Kernel): \phi-irreducibility of kernels Define powers of kernels, the Chapman-Kolmogorov equations, as well as \phi-irreducibility of kernels, following Robert-Casella, "Monte Carlo Statistical Methods", Definition 6.13. Co-authored-by: Matteo Cipollina @or4nge19 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 160/8 Mathlib.lean,Mathlib/Probability/Kernel/Composition/Comp.lean,Mathlib/Probability/Kernel/Composition/CompMap.lean,Mathlib/Probability/Kernel/Irreducible.lean,docs/references.bib 5 6 ['RemyDegenne', 'bwangpj', 'github-actions'] RemyDegenne
assignee:RemyDegenne
18-32666
18 days ago
28-21824
28 days ago
34-60862
34 days
27400 dleijnse
author:dleijnse
feat: define geometrically reduced algebras Define geometrically reduced algebras, and prove that if all finitely generated subalgebras of an algebra `A` are geometrically reduced, then `A` is geometrically reduced. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
117/0 Mathlib.lean,Mathlib/RingTheory/Adjoin/FG.lean,Mathlib/RingTheory/Flat/Basic.lean,Mathlib/RingTheory/Nilpotent/Defs.lean,Mathlib/RingTheory/Nilpotent/GeometricallyReduced.lean,Mathlib/RingTheory/TensorProduct/Basic.lean 6 72 ['dleijnse', 'github-actions', 'joelriou', 'kckennylau'] joelriou
assignee:joelriou
18-27090
18 days ago
18-27127
18 days ago
85-38938
85 days
26267 vasnesterov
author:vasnesterov
feat(Analysis/Calculus): Taylor series converges to function on whole ball * Prove `FormalMultilinearSeries.AnalyticOnNhd`: the sum of series is analytic on its ball of convergence. * Prove `AnalyticOn.hasFPowerSeriesOnBall`: a variant of `AnalyticAt.hasFPowerSeriesAt` which gives convergence to the function on the ball of convergence. --- - [x] depends on: #23745 - [x] depends on: #23747 - [x] depends on: #23748 - [x] depends on: #26247 This PR continues the work from #23749. Original PR: https://github.com/leanprover-community/mathlib4/pull/23749 t-analysis 65/0 Mathlib.lean,Mathlib/Analysis/Analytic/ChangeOrigin.lean,Mathlib/Analysis/Calculus/IteratedDeriv/ConvergenceOnBall.lean 3 5 ['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'vasnesterov'] urkud
assignee:urkud
18-19368
18 days ago
62-23927
2 months ago
109-8794
109 days
29705 llllvvuu
author:llllvvuu
feat(LinearAlgebra/Matrix): formula for charpoly of an inverse matrix Co-authored-by: Aristotle Harmonic --- - [x] depends on: #29709 to re-organized some imports [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
14/0 Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean 1 7 ['github-actions', 'llllvvuu', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'themathqueen'] Vierkantor
assignee:Vierkantor
18-4901
18 days ago
26-19529
26 days ago
26-29086
26 days
29982 hrmacbeth
author:hrmacbeth
feat: new `isolate` tactic This PR adds a new tactic, `isolate`, which "solves for x" in an equation or relation. For example: ```lean example (a b : ℝ) (f : ℝ → ℝ) : 5 * f a - 3 < b := by isolate f a -- new goal: `⊢ f a < (b + 3) / 5` ``` The `isolate` tactic may generate side goals, if these are necessary to justify the transformation. The tactic will attempt to justify such side goals using `positivity` (as in the above example), unification, or type class inference, but if unsuccessful will present them to the user. For example: ```lean example (a b c : ℝ) (f : ℝ → ℝ) : c * f a - 3 < b := by isolate f a -- new goal: `⊢ f a < (b + 3) / c` -- second (side) new goal: `⊢ 0 < c` ``` The `isolate` tactic is extensible. Coverage may be extended to new relations and new operations-to-be-undone by tagging appropriate lemmas with the new `@[isolate]` attribute. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-meta 863/3 Mathlib.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/Tactic.lean,Mathlib/Tactic/Isolate.lean,Mathlib/Tactic/Isolate/Core.lean,Mathlib/Tactic/Isolate/Tagging.lean,Mathlib/Tactic/Relation/Symm.lean,MathlibTest/Isolate/Heavyweight.lean,MathlibTest/Isolate/Lightweight.lean,scripts/noshake.json 12 23 ['JovanGerb', 'PatrickMassot', 'github-actions', 'hrmacbeth', 'kim-em'] JovanGerb
assignee:JovanGerb
17-73136
17 days ago
24-85279
24 days ago
24-85262
24 days
29999 jeremypparker
author:jeremypparker
chore(Analysis/Fourier/AddCircle): remove stale comment --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 0/1 Mathlib/Analysis/Fourier/AddCircle.lean 1 2 ['Ruben-VandeVelde', 'github-actions', 'jeremypparker'] sgouezel
assignee:sgouezel
17-73134
17 days ago
25-41882
25 days ago
25-41915
25 days
29376 vlad902
author:vlad902
feat(SimpleGraph): helper lemmas for `Walk.IsSubwalk` t-combinatorics 29/0 Mathlib/Combinatorics/SimpleGraph/Walk.lean 1 1 ['github-actions'] awainverse
assignee:awainverse
17-42911
17 days ago
45-50828
1 month ago
45-50861
45 days
25814 vlad902
author:vlad902
feat(SimpleGraph): weaker condition for paths in acyclic graphs `IsAcyclic.isPath_iff_chain'` defines a weaker condition for proving that a walk is a path, in particular it shows that rather than proving that all vertices in the support of a walk are distinct, one must only show that consecutive edges are distinct (e.g. every other vertex must be distinct.) This leads to a simple corollary that trails are also paths in acyclic graphs. I had a need for this when formalizing Cayley graphs, since this condition maps cleanly onto words in free groups being reduced. --- *This PR continues the work from #25630.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/25630* t-combinatorics 38/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean,Mathlib/Combinatorics/SimpleGraph/Paths.lean 2 2 ['github-actions', 'vlad902'] kmill
assignee:kmill
17-41907
17 days ago
131-25320
4 months ago
131-25294
131 days
29164 vlad902
author:vlad902
feat(SimpleGraph): Hall's Marriage Theorem for bipartite graphs Derive the graph theoretic proof of Hall's marriage theorem from the combinatorial version. Note that I specifically implement this for the more general case of infinite graphs that are locally finite (e.g. every vertex has only finite neighbors.) As a result, the theorem depends on some category theoretic infrastructure required for the infinite combinatorial formulation of Hall's Marriage Theorem and hence I've placed the theorems into their own file to avoid requiring it in `Matching.lean` - [ ] depends on: #29162 t-combinatorics 130/7 Mathlib.lean,Mathlib/Combinatorics/Hall/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Hall.lean,Mathlib/Combinatorics/SimpleGraph/Matching.lean,docs/1000.yaml 5 2 ['github-actions', 'mathlib4-dependent-issues-bot'] b-mehta
assignee:b-mehta
17-33192
17 days ago
37-62137
1 month ago
37-65360
37 days
29365 staroperator
author:staroperator
feat(SetTheory/ZFC): add `ZFSet.card` The same as `ZFSet.rank`, we define `ZFSet.card` as `ZFSet.{u} → Cardinal.{u}` and prove some basic properties. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 123/4 Mathlib.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/ZFC/Basic.lean,Mathlib/SetTheory/ZFC/Cardinal.lean 4 21 ['YaelDillies', 'github-actions', 'staroperator', 'vihdzp'] YaelDillies
assignee:YaelDillies
17-10809
17 days ago
17-10809
17 days ago
46-3912
46 days
27107 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(GroupTheory/GroupAction/SubMulAction/Combination) : combinations and group actions `Nat.Combination X n` is the type all `s : Finset X` such that `s.card = n`. This PR provides some API for this subtype and the `SubMulAction` it inherits when a group acts on `X`. It will be used in conjunction with the description of some maximal subgroups of `Equiv.Perm X` to construct primitive actions. Question on the names: when `X` is a fintype, there is `Finset.powersetCard` that gives the same object, as a `Finset`. But the present PR also applies when `X` is infinite. Then maybe `Nat.Combination` should be renamed as `Set.powersetCard`? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory 324/0 Mathlib.lean,Mathlib/Data/Fintype/EquivFin.lean,Mathlib/Data/Nat/Choose/Basic.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/Combination.lean 4 39 ['AntoineChambert-Loir', 'alreadydone', 'github-actions', 'tb65536'] alreadydone
assignee:alreadydone
17-4190
17 days ago
77-41568
2 months ago
99-71307
99 days
25183 YaelDillies
author:YaelDillies
feat: convolution product on linear maps from a coalgebra to an algebra Construct the ring structure on linear maps `C → A` where `C` is a coalgebra and `A` an algebra, where multiplication is given by `(f * g)(x) = ∑ f x₍₁₎ * g x₍₂₎` in Sweedler notation or ``` | μ | | / \ f * g = f g | | \ / δ | ``` diagrammatically, where `μ` stands for multiplication and `δ` for comultiplication. [Zulip](https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/.60Mul.60.20instance.20on.20algebra.20homomorphisms.20from.20monoid.20algebra) From Toric Co-authored-by: Michał Mrugała Co-authored-by: Yunzhou Xie --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) toric t-algebra
label:t-algebra$
261/10 Mathlib.lean,Mathlib/Algebra/Algebra/Bilinear.lean,Mathlib/Algebra/Algebra/Defs.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean,Mathlib/RingTheory/Coalgebra/Basic.lean,Mathlib/RingTheory/Coalgebra/Convolution.lean,Mathlib/RingTheory/Regular/RegularSequence.lean 7 88 ['YaelDillies', 'erdOne', 'eric-wieser', 'github-actions', 'kbuzzard', 'smorel394', 'themathqueen'] kbuzzard
assignee:kbuzzard
16-51015
16 days ago
54-41872
1 month ago
149-7918
149 days
26720 vlad902
author:vlad902
feat(SimpleGraph): lemmas relating edges and darts to the support Useful lemmas to make it easier to pass between the support/edges/darts of a walk. - [x] depends on: #25812 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 27/0 Mathlib/Combinatorics/SimpleGraph/Walk.lean 1 9 ['b-mehta', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'vlad902'] b-mehta
assignee:b-mehta
16-34840
16 days ago
16-34840
16 days ago
39-61355
39 days
29833 vlad902
author:vlad902
feat(Set): helper lemmas about set cardinality A few lemmas I needed in formalizing Dilworth's theorem and vertex covers. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 19/0 Mathlib/Data/Set/Card.lean 1 13 ['Ruben-VandeVelde', 'github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot', 'themathqueen', 'vlad902'] nobody
16-24289
16 days ago
16-83601
16 days ago
31-33530
31 days
30245 vlad902
author:vlad902
feat(Set): finite cardinality iff `[Finite]` Add a lemma making it easy to derive `Finite α` from `ENat.card α < ⊤`. Note that immediately above, the following three lemmas are defined: ```lean @[simp high] theorem card_eq_top_of_infinite [Infinite α] : card α = ⊤ := by ... @[simp] lemma card_eq_top : card α = ⊤ ↔ Infinite α := by ... @[simp] theorem card_lt_top_of_finite [Finite α] : card α < ⊤ := by ... ``` `card_lt_top` is the analog of `card_eq_top`, so symmetry implies that `card_lt_top_of_finite` should be marked `@[simp high]` and `card_lt_top` should be marked `@[simp]`. I find this use of `@[simp]` a bit surprising so I wanted to highlight this to reviewers. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 3/1 Mathlib/SetTheory/Cardinal/Finite.lean 1 1 ['github-actions'] nobody
16-23450
16 days ago
16-23452
16 days ago
16-23491
16 days
26347 mans0954
author:mans0954
feat(Data/Finset/RangeDistance): abs_sub_lt_of_mem_finset_range This PR continues the work from #23161. Original PR: https://github.com/leanprover-community/mathlib4/pull/23161 t-data 30/0 Mathlib.lean,Mathlib/Algebra/Order/Group/Unbundled/Abs.lean,Mathlib/Data/Finset/RangeDistance.lean 3 2 ['github-actions', 'mans0954'] alreadydone
assignee:alreadydone
16-13478
16 days ago
78-40110
2 months ago
119-49514
119 days
26885 pechersky
author:pechersky
feat(Topology/ValuativeRel): ValuativeTopology 𝒪[K] and even when not a field, `ValuativeRel 𝒪[K]` This is an example of something achievable with the new declarations that wasn't possible with Valued Such that we can discuss the valuations on the subring without always using coercions But to achieve this, one needs some juggling of the value groups --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #26834 - [ ] depends on : #30135 t-algebra t-topology t-number-theory
label:t-algebra$
73/0 Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean 2 9 ['erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] alreadydone
assignee:alreadydone
16-4331
16 days ago
55-7074
1 month ago
104-78480
104 days
30259 erdOne
author:erdOne
feat(Valuation): uniformizer of discrete valuation --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 31/0 Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean 1 2 ['github-actions', 'pechersky'] nobody
15-74458
15 days ago
15-75819
15 days ago
15-75857
15 days
26827 pechersky
author:pechersky
feat(Analysis/Normed/ValuativeRel): helper instance for NormedField --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #26713 - [x] depends on: #26826 t-algebra t-analysis t-number-theory
label:t-algebra$
211/27 Mathlib.lean,Mathlib/Analysis/Normed/ValuativeRel.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean 3 33 ['ADedecker', 'adamtopaz', 'erdOne', 'github-actions', 'kbuzzard', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] kbuzzard
assignee:kbuzzard
15-73306
15 days ago
69-19623
2 months ago
105-85338
105 days
30009 ADedecker
author:ADedecker
chore: rename `IsTopologicalGroup.toUniformSpace` to `IsTopologicalGroup.rightUniformSpace` I have plans to finally do left and right uniformities properly, but I'd like to do some of the remaining before the fact to ease review. I also take this opportunity to remove a duplication of private lemmas `extend_Z_bilin_aux` and `extend_Z_bilin_key`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 104/184 Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/LocallyConvex/Bounded.lean,Mathlib/Analysis/LocallyConvex/WithSeminorms.lean,Mathlib/Analysis/Normed/Group/Quotient.lean,Mathlib/Analysis/Normed/Operator/Compact.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/Analysis/SpecialFunctions/Bernstein.lean,Mathlib/Topology/Algebra/Group/Defs.lean,Mathlib/Topology/Algebra/InfiniteSum/Group.lean,Mathlib/Topology/Algebra/InfiniteSum/NatInt.lean,Mathlib/Topology/Algebra/IsUniformGroup/Basic.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean,Mathlib/Topology/Algebra/Module/Alternating/Topology.lean,Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/Algebra/Module/LocallyConvex.lean,Mathlib/Topology/Algebra/Module/Multilinear/Topology.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean,Mathlib/Topology/Algebra/Nonarchimedean/AdicTopology.lean,Mathlib/Topology/Algebra/UniformFilterBasis.lean,Mathlib/Topology/Algebra/Valued/ValuationTopology.lean,Mathlib/Topology/Algebra/Valued/ValuativeRel.lean,Mathlib/Topology/ContinuousMap/Algebra.lean 23 3 ['github-actions', 'mathlib4-merge-conflict-bot', 'plp127'] PatrickMassot
assignee:PatrickMassot
15-73131
15 days ago
23-9521
23 days ago
24-22926
24 days
30246 dwrensha
author:dwrensha
make Nat.digits use well-founded recursion once again #25864 made `Nat.digits` structurally recursive, which has some benefits. In doing so, however, it added significant complexity. As brought up in [this zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/structural.20recursion.20instead.20of.20well.20founded/near/543172385), on the balance that PR might not be considered an improvement. The present PR reverts that change (but keeps a code golf that was bundled with it). Note that recent improvements to core Lean mean that `simp` can handle the structurally recursive version without a problem: ```lean example : digits 10 123456789 = [9,8,7,6,5,4,3,2,1] := by simp [digits, digitsAux] ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 7/45 Mathlib/Data/Nat/Digits/Defs.lean 1 7 ['alreadydone', 'dwrensha', 'github-actions', 'plp127'] nobody
15-72933
15 days ago
16-15062
16 days ago
16-15094
16 days
28557 ShreckYe
author:ShreckYe
feat(Data/Nat/Factorization): some results on equality of powers of naturals proved from factorization I came across some math olympiad problems in number theory that could benefit from these theorems, expecially those on the prime power equality `p ^ m = a ^ n`. A specialized `eq_of_factorization_eq'` is added BTW to help with proof search. t-data 100/0 Mathlib/Data/Nat/Factorization/Basic.lean,Mathlib/Data/Nat/Factorization/Defs.lean,Mathlib/Data/Nat/Factorization/PrimePow.lean 3 13 ['Ruben-VandeVelde', 'ShreckYe', 'github-actions'] pechersky
assignee:pechersky
15-61238
15 days ago
15-62922
15 days ago
62-57068
62 days
28484 euprunin
author:euprunin
chore(Data): deprecate `toReal_eq_toReal`, `count_eq_of_nodup` and `smul_mat_cons` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 16/25 Archive/Wiedijk100Theorems/BallotProblem.lean,Mathlib/Data/ENNReal/Real.lean,Mathlib/Data/List/Dedup.lean,Mathlib/Data/List/FinRange.lean,Mathlib/Data/List/Nodup.lean,Mathlib/LinearAlgebra/Matrix/Notation.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Real.lean,Mathlib/MeasureTheory/Function/L2Space.lean,Mathlib/MeasureTheory/Integral/Layercake.lean,Mathlib/Probability/Distributions/Exponential.lean,Mathlib/Probability/Independence/Integration.lean,Mathlib/Probability/Kernel/Condexp.lean,Mathlib/Topology/Instances/ENNReal/Lemmas.lean 13 13 ['b-mehta', 'bryangingechen', 'euprunin', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'pechersky', 'qawbecrdtey'] pechersky
assignee:pechersky
15-15912
15 days ago
15-15912
15 days ago
64-45780
64 days
28950 Vierkantor
author:Vierkantor
fix(TacticAnalysis): remove syntax range check In #28802 we discovered the tactic analysis framework does not fire on declarations using `where` clauses. The reason is that `def foo where ...` gets turned into `def foo := { ... }`, and the `{ ... }` syntax is assigned a range outside of the `where ...` syntax; this causes the syntax range check to omit the whole declaration body. Moreover, [Verso involves pieces of syntax without any range at all](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Possible.20Verso.E2.80.93Mathlib.20conflict/with/543352839). So the range of a piece of syntax is essentially meaningless and we should not check it at all. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 18/11 Mathlib/Tactic/TacticAnalysis.lean,MathlibTest/TacticAnalysis.lean 2 3 ['Vierkantor', 'github-actions', 'thorimur'] robertylewis
assignee:robertylewis
15-15413
15 days ago
56-41186
1 month ago
56-41162
56 days
28389 euprunin
author:euprunin
chore(Algebra/Group/Subgroup): deprecate `sup_subgroupOf_eq` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
9/13 Mathlib/Algebra/Group/Subgroup/Ker.lean,Mathlib/GroupTheory/PGroup.lean 2 4 ['Ruben-VandeVelde', 'chrisflav', 'euprunin', 'github-actions'] chrisflav
assignee:chrisflav
15-1642
15 days ago
15-2101
15 days ago
38-39397
38 days
26985 agjftucker
author:agjftucker
feat(Analysis/Calculus/Implicit): define implicitFunOfProdDomain This PR continues the work from #16743. Original PR: https://github.com/leanprover-community/mathlib4/pull/16743 --- - [x] depends on: #28352 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 107/4 Mathlib/Analysis/Calculus/Implicit.lean 1 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] hrmacbeth
assignee:hrmacbeth
14-73134
14 days ago
22-47222
22 days ago
22-48800
22 days
29425 pechersky
author:pechersky
feat(NumberTheory/Padics/Torsion): `HasEnoughRootsOfUnity ℤ_[p] (p - 1)` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #29403 - [x] depends on: #29404 - [x] depends on: #29405 - [x] depends on: #29408 - [x] depends on: #29424 t-ring-theory 179/0 Mathlib.lean,Mathlib/NumberTheory/Padics/Torsion.lean,Mathlib/RingTheory/ZMod/Torsion.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] erdOne
assignee:erdOne
14-73129
14 days ago
22-17999
22 days ago
22-18631
22 days
29642 pechersky
author:pechersky
chore(RingTheory/AdicValuation,LaurentSeries): switch to `WithZero.exp` instead of coercions of `Multiplicative.ofAdd` as requested at https://github.com/leanprover-community/mathlib4/pull/27339#issuecomment-3285102305 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 58/68 Mathlib/FieldTheory/RatFunc/AsPolynomial.lean,Mathlib/NumberTheory/NumberField/FinitePlaces.lean,Mathlib/RingTheory/DedekindDomain/AdicValuation.lean,Mathlib/RingTheory/DedekindDomain/SelmerGroup.lean,Mathlib/RingTheory/LaurentSeries.lean 5 3 ['github-actions', 'mathlib4-merge-conflict-bot'] mattrobball
assignee:mattrobball
14-73128
14 days ago
22-25923
22 days ago
30-36292
30 days
30293 vlad902
author:vlad902
feat(SimpleGraph): there exists a maximal path/trail in a graph with finite edges Inspired by [this Zulip thread](https://leanprover.zulipchat.com/#narrow/channel/252551-graph-theory/topic/Help.20me.20learn.20good.20style.3A.20IsTree/near/543395218) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 27/1 Mathlib/Combinatorics/SimpleGraph/Paths.lean 1 2 ['github-actions', 'vlad902'] nobody
14-21440
14 days ago
14-42309
14 days ago
14-42341
14 days
26398 ChrisHughes24
author:ChrisHughes24
feat(ModelTheory): definable functions --- Possibly this should be generalized to partial functions. I migrated the PR by hand instead of using the script. - [x] depends on: #20166 - [x] depends on: #20161 - [x] depends on: #20115 - [x] depends on: #20174 - [x] depends on: #20175 - [x] depends on: #21948 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 618/0 Mathlib.lean,Mathlib/ModelTheory/FunctionalFormula.lean 2 9 ['ChrisHughes24', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'staroperator'] fpvandoorn
assignee:fpvandoorn
14-15934
14 days ago
118-43999
3 months ago
118-44248
118 days
29361 FlAmmmmING
author:FlAmmmmING
feat: Catalan generating function as a formal power series We introduce the Catalan generating function as a formal power series over `ℕ`. ## Main Definitions * `PowerSeries.catalanSeries`: The Catalan generating function as a power series. ## Main Results * `PowerSeries.sum_coeff_X_catalanSeries`: When `n` is a natural number, each term in the sum `coeff i X * catalan (n - i)` is 0 except for `i = 1`. * `PowerSeries.coeff_X_mul_catalanSeries`: The coefficient of `X * catalanSeries` at `X^n` is `catalan (n - 1)` when `n > 0`. * `PowerSeries.catalanSeries_one_add_X_mul_self_sq`: The Catalan generating function satisfies the equation `catalanSeries = 1 + X * catalanSeries ^ 2`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 71/0 Mathlib.lean,Mathlib/RingTheory/PowerSeries/Catalan.lean 2 4 ['Ruben-VandeVelde', 'github-actions', 'wwylele'] kbuzzard
assignee:kbuzzard
13-49731
13 days ago
46-45806
1 month ago
46-45835
46 days
30287 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): define `IsCompleteBetween` `IsCompleteBetween` is the condition that two subsets of vertices are completely connected in a simple graph. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 20/0 Mathlib/Combinatorics/SimpleGraph/Basic.lean 1 2 ['YaelDillies', 'github-actions', 'vlad902'] nobody
13-23688
13 days ago
14-78726
14 days ago
14-78726
14 days
30337 kckennylau
author:kckennylau
chore: delete wrong docstring for irrelevant ideal The expression given `{a | ∀ (i : ι), i ≤ 0 → aᵢ = 0}` does not define an ideal, because it is not closed under (external) multiplication. For example, if x has grade 1 and y has grade -2, then x will be in this "ideal", but xy will not. Zulip discussion: [#mathlib4 > irrelevant ideal cannot be generalised](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/irrelevant.20ideal.20cannot.20be.20generalised/near/543800961) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 0/5 Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean 1 1 ['github-actions'] nobody
13-13390
13 days ago
13-13415
13 days ago
13-13451
13 days
29960 yonggyuchoimath
author:yonggyuchoimath
feat(Algebra/Category/Ring): equalizers of pushout maps of tensor product inclusions This PR defines a ring map `S →ₗ[R] S ⊗[R] S : s ↦ (s ⊗ₜ[R] 1) - (1 ⊗ₜ[R] s)` for an `R`-algebra `S`, and show that its kernel is exactly (the image of) `R` if `S` is faithfully flat over `R`. Changes: * `TensorProduct.AlgebraTensorModule.distribBaseChange`: Origianlly takes `M` and `N`, where `M` is an `R`-module with an additional instance `IsScalarTower R A M`. This is unnecessary, so I changed the `M` and `N` into `N` and `Q`, now both of which are merely modules over `R`. Main results : * Add compatibility of `Algebra.TensorProduct.includeLeft` (or `Algebra.TensorProduct.includeRight`) with `TensorProduct.AlgebraTensorModule.distribBaseChange` and `LinearMap.lTensor` * Define `Algebra.TensorProduct.includeLeftSubRight`, which is the `R`-linear map `S →ₗ[R] S ⊗[R] S` sending `s : S` to `(s ⊗ₜ[R] 1) - (1 ⊗ₜ[R] s)`. * `Algebra.TensorProduct.exactIncludeLeftSubRight_of_faithfullyFlat`: the pair `algebraMap : R → S` and `includeLeftSubRight R S : S → S ⊗[R] S` is exact if `S` is a faithfully flat `R`-algebra. new-contributor 229/1 Mathlib.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/IncludeLeftSubRight.lean 4 3 ['erdOne', 'github-actions', 'yonggyuchoimath'] TwoFX
assignee:TwoFX
12-73130
12 days ago
21-7014
21 days ago
23-41483
23 days
30071 Jlh18
author:Jlh18
feat: dualize Pseudofunctor.CoGrothendieck results to Pseudofunctor.Grothendieck Continuing from #29681, dualize all definitions and lemmas in the namespace `Pseudofunctor.CoGrothendieck` to results in the namespace `Pseudofunctor.Grothendieck`. - [ ] depends on: #29681 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 121/9 Mathlib/CategoryTheory/Bicategory/Grothendieck.lean 1 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] riccardobrasca
assignee:riccardobrasca
12-73127
12 days ago
20-5870
20 days ago
20-16375
20 days
30116 FormulaRabbit81
author:FormulaRabbit81
feat(Measure): proof that a relatively compact set of measures is tight --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-measure-probability 196/2 Mathlib/MeasureTheory/Measure/Tight.lean 1 1 ['github-actions'] kex-y
assignee:kex-y
12-73125
12 days ago
19-83381
19 days ago
19-83414
19 days
30107 grunweg
author:grunweg
chore: track occurrences of 'nonrec' as technical debt Matches leanprover-community/leanprover-community.github.io#689: only merge when that is deemed a good idea. -------- TODO: make the count more robust, for instance count all occurrences of "^nonrec " plus those of "^[private|protected] nonrec ". --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt CI 1/0 scripts/technical-debt-metrics.sh 1 1 ['github-actions'] robertylewis
assignee:robertylewis
12-73125
12 days ago
20-46013
20 days ago
20-45991
20 days
29322 xroblot
author:xroblot
feat(RingTheory/Localization/AtPrime): bijection between prime ideals Let `R ⊆ S` be an extension of rings and `p` be a prime ideal of `R`. Denote by `Rₚ` the localization of `R` at the complement of `p` and by `Sₚ` the localization of `S` at the (image) of the complement of `p`. In this PR, we study the extension `Rₚ ⊆ Sₚ` and the relation between the (nonzero) prime ideals of `Sₚ` and the prime ideals of `S` above `p`. In particular, we prove that (under suitable conditions) they are in bijection. In a following PR #27706, we prove that the residual degree and ramification index are preserved by this bijection. Note. The new file `RingTheory.Localization.AtPrime.Extension` is imported in `RingTheory.Trace.Quotient` because one function from the latter was moved to the former, but the plan is eventually to move the isomorphisms proved in `RingTheory.Trace.Quotient` to `RingTheory.Localization.AtPrime.Basic` and `RingTheory.Localization.AtPrime.Extension` where they belong. This will be done in #27706. --- t-ring-theory 147/8 Mathlib.lean,Mathlib/RingTheory/DedekindDomain/Instances.lean,Mathlib/RingTheory/Ideal/Maps.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/Localization/AtPrime/Extension.lean,Mathlib/RingTheory/Trace/Quotient.lean 6 11 ['chrisflav', 'github-actions', 'xroblot'] chrisflav
assignee:chrisflav
12-49533
12 days ago
12-49533
12 days ago
45-52502
45 days
30355 kckennylau
author:kckennylau
feat(Logic): graded functions This PR defines a class of graded functions, called `GradedFunLike`. It is intended to be used in #30312 to characterise a class of graded ring homomorphisms, where it is invoked as `[GradedFunLike F 𝒜 ℬ] [RingHomClass F A B]`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 41/0 Mathlib.lean,Mathlib/Data/FunLike/Graded.lean 2 1 ['github-actions'] nobody
12-32470
12 days ago
12-72941
12 days ago
12-72978
12 days
30364 xroblot
author:xroblot
chore(FractionRing): generalize an instance The instance that deduce from a tower of domains `A ⊆ B ⊆ C` that there is a tower `Frac A ⊆ Frac B ⊆ Frac C` can be generalized to `A ⊆ B ⊆ K` implies `Frac A ⊆ Frac B ⊆ K` where `K` is a field (and exactly the same proof works!). --- t-ring-theory 4/4 Mathlib/RingTheory/Localization/FractionRing.lean 1 7 ['github-actions', 'grunweg', 'jcommelin', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'xroblot'] nobody
12-15857
12 days ago
12-15857
12 days ago
12-28187
12 days
29856 mans0954
author:mans0954
feat(Analysis/Normed/Ring/Basic): Add NonUnitalNonAssocSeminormedRing and NonUnitalNonAssocNormedRing Adds the classes `NonUnitalNonAssocSeminormedRing` and `NonUnitalNonAssocNormedRing` and relaxes the `NonUnitalSeminormedRing` section to `NonUnitalNonAssocSeminormedRing`. Examples of non-unital non-associative normed rings include non-untial JB-algebras and non-unital JB*-algebras. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 110/11 Mathlib/Analysis/Normed/Ring/Basic.lean,MathlibTest/TCSynth.lean 2 1 ['github-actions'] ADedecker
assignee:ADedecker
12-14154
12 days ago
30-26695
1 month ago
30-26705
30 days
29871 zach1502
author:zach1502
feat(Matrix/Transvection): Gauss pivot determinant identity and pivot preservation This PR adds two lemmas formalizing standard Gaussian pivot identities: * `Matrix.Transvection.listTransvecCol_mul_mul_listTransvecRow_pivot`: After applying the canonical left/right transvection products that clear the last column and row, the pivot (bottom-right) entry of a matrix is unchanged. Marked `@[simp]`. * `Matrix.Transvection.det_eq_detTopLeft_mul_pivot`: If the pivot entry is nonzero, then the determinant of the matrix factors as the determinant of the top-left block times the pivot entry, after performing the canonical transvections. This is the usual Gauss–pivot determinant identity. * Added simple usage tests in `MathlibTest/matrix.lean` to check that the new lemmas are usable by `simp`/`simpa`. --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
94/0 Mathlib/LinearAlgebra/Matrix/Transvection.lean,MathlibTest/matrix.lean 2 3 ['github-actions', 'riccardobrasca', 'zach1502'] riccardobrasca
assignee:riccardobrasca
12-10586
12 days ago
29-3016
29 days ago
29-68479
29 days
29976 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Topology/Semicontinuous): lower bounds on compact sets Prove that lower semicontinuous functions attain their lower bound on nonempty compact sets, and the analogous lemma for upper semicontinuous functions. By the way, add several basic results for semicontinuous functions, relating the WithinAt, At, On versions. Co-authored with @ADedecker --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 300/1 Mathlib/Order/Filter/Extr.lean,Mathlib/Topology/Semicontinuous.lean 2 1 ['github-actions'] TwoFX
assignee:TwoFX
12-4172
12 days ago
26-6092
26 days ago
26-6068
26 days
28560 euprunin
author:euprunin
chore(Combinatorics/Quiver): golf entire `lift_spec` using `rfl` ---
Show trace profiling of lift_spec: <10 ms before, <10 ms after 🎉 ### Trace profiling of `lift_spec` before PR 28560 ```diff diff --git a/Mathlib/Combinatorics/Quiver/Symmetric.lean b/Mathlib/Combinatorics/Quiver/Symmetric.lean index 33e371b283..76a3371b36 100644 --- a/Mathlib/Combinatorics/Quiver/Symmetric.lean +++ b/Mathlib/Combinatorics/Quiver/Symmetric.lean @@ -164,6 +164,7 @@ def lift [HasReverse V'] (φ : Prefunctor V V') : | Sum.inl g => φ.map g | Sum.inr g => reverse (φ.map g) +set_option trace.profiler true in theorem lift_spec [HasReverse V'] (φ : Prefunctor V V') : Symmetrify.of.comp (Symmetrify.lift φ) = φ := by fapply Prefunctor.ext ``` ``` ✔ [147/147] Built Mathlib.Combinatorics.Quiver.Symmetric (1.3s) Build completed successfully (147 jobs). ``` ### Trace profiling of `lift_spec` after PR 28560 ```diff diff --git a/Mathlib/Combinatorics/Quiver/Symmetric.lean b/Mathlib/Combinatorics/Quiver/Symmetric.lean index 33e371b283..3adf874946 100644 --- a/Mathlib/Combinatorics/Quiver/Symmetric.lean +++ b/Mathlib/Combinatorics/Quiver/Symmetric.lean @@ -164,13 +164,10 @@ def lift [HasReverse V'] (φ : Prefunctor V V') : | Sum.inl g => φ.map g | Sum.inr g => reverse (φ.map g) +set_option trace.profiler true in theorem lift_spec [HasReverse V'] (φ : Prefunctor V V') : Symmetrify.of.comp (Symmetrify.lift φ) = φ := by - fapply Prefunctor.ext - · rintro X - rfl - · rintro X Y f - rfl + tauto theorem lift_reverse [h : HasInvolutiveReverse V'] (φ : Prefunctor V V') {X Y : Symmetrify V} (f : X ⟶ Y) : ``` ``` ✔ [147/147] Built Mathlib.Combinatorics.Quiver.Symmetric (1.2s) Build completed successfully (147 jobs). ```
--- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/)
t-combinatorics easy 2/6 Mathlib/Combinatorics/Quiver/Symmetric.lean 1 1 ['github-actions'] awainverse
assignee:awainverse
11-85093
11 days ago
11-85093
11 days ago
65-15044
65 days
26986 WangYiran01
author:WangYiran01
feat(Partition): add bijection for partitions with max part ≤ r ## Summary This PR adds a new theorem `partition_max_equals_bound` to `Mathlib.Combinatorics.Enumerative.Partition`. It constructs a bijection between: - The set of partitions of `n` in which `r ∈ π.parts` and all parts are `≤ r`, and - The set of partitions of `n - r` whose largest part is at most `r`. This provides a constructive proof via removing/adding `r` from/to the partition multiset, in line with classical enumerative combinatorics. ## Implementation notes - The proof uses `Multiset.erase` and `Multiset.cons` with basic properties of `sum`, `sup`, and `Partition` structures. - The bijection is implemented explicitly via `f` and `g`, and proven mutually inverse via `Subtype.ext`. ## Linting - [x] Passes `lake build` - [x] Linter clean (no commandStart or longLine issues) ## Author Contributed by Yiran Wang. new-contributor t-combinatorics 85/0 Mathlib/Combinatorics/Enumerative/Partition.lean 1 4 ['WangYiran01', 'github-actions', 'kckennylau'] b-mehta
assignee:b-mehta
11-84529
11 days ago
102-43095
3 months ago
102-43130
102 days
27664 pechersky
author:pechersky
feat(Topology,Analysis): discrete topology metric space and normed groups Explicit construction of the discrete topology metric space and normed groups where `dist x y = 1` for all `x != y` Provide PseudoMetricSpace, MetricSpace, Seminormed(Add)Group, and Normed(Add)Group constructions --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 137/0 Mathlib/Analysis/Normed/Group/Basic.lean,Mathlib/Topology/MetricSpace/Basic.lean,Mathlib/Topology/MetricSpace/Pseudo/Constructions.lean 3 4 ['github-actions', 'kckennylau', 'pechersky'] urkud
assignee:urkud
11-83395
11 days ago
83-63144
2 months ago
83-63129
83 days
28906 gasparattila
author:gasparattila
feat(Topology/Algebra/Module): `prod` and `coprod` as `ContinuousLinearEquiv`s --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology 40/4 Mathlib/Topology/Algebra/Module/LinearMapPiProd.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean 2 4 ['github-actions', 'kckennylau'] jcommelin
assignee:jcommelin
11-83320
11 days ago
57-13306
1 month ago
57-13338
57 days
27754 Parcly-Taxel
author:Parcly-Taxel
feat: `finCycle` as iterated `finRotate` Originally used in #25786, but eventually discovered to be unnecessary. t-logic 26/5 Mathlib/Logic/Equiv/Fin/Rotate.lean 1 1 ['github-actions', 'kckennylau'] fpvandoorn
assignee:fpvandoorn
11-82410
11 days ago
82-21480
2 months ago
82-21525
82 days
27365 101damnations
author:101damnations
feat(RepresentationTheory/Homological/GroupHomology): homology of finite cyclic groups Let `k` be a commutative ring, `G` a group and `A` a `k`-linear `G`-representation. Given endomorphisms `φ, ψ : A ⟶ A` such that `φ ∘ ψ = ψ ∘ φ = 0`. Denote by `Chains(A, φ, ψ)` the periodic chain complex `... ⟶ A --φ--> A --ψ--> A --φ--> A --ψ--> A ⟶ 0`. When `G` is finite and generated by `g : G`, then `P := Chains(k[G], N, ρ(g) - Id)` (with `ρ` the left regular representation) is a projective resolution of `k` as a trivial representation. In this PR we show that for `A : Rep k G`, `(A ⊗ P)_G` is isomorphic to `Chains(A, N, ρ_A(g) - Id)` as a complex of `k`-modules, and hence the homology of this complex computes group homology. --- - [x] depends on: #27362 - [x] depends on: #27361 - [x] depends on: #27363 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
142/1 Mathlib.lean,Mathlib/RepresentationTheory/Homological/FiniteCyclic.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/FiniteCyclic.lean 3 5 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] dagurtomas
assignee:dagurtomas
11-73134
11 days ago
19-20038
19 days ago
19-22485
19 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/) new-contributor t-combinatorics 391/0 Mathlib.lean,Mathlib/Combinatorics/DiHypergraph/Basic.lean 2 1 ['github-actions'] b-mehta
assignee:b-mehta
11-73132
11 days ago
34-35732
1 month ago
34-35777
34 days
30123 erdOne
author:erdOne
feat(Topology): add `IsCompact.closure_eq_nhdsKer` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 11/0 Mathlib/Topology/Separation/Regular.lean 1 1 ['github-actions'] dagurtomas
assignee:dagurtomas
11-73131
11 days ago
19-37204
19 days ago
19-37237
19 days
30124 erdOne
author:erdOne
feat(RingTheory): `IsAdicComplete I R ↔ CompleteSpace R ∧ T2Space R` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-topology
label:t-algebra$
40/0 Mathlib/Order/Filter/Bases/Basic.lean,Mathlib/RingTheory/AdicCompletion/Basic.lean,Mathlib/RingTheory/AdicCompletion/Topology.lean,Mathlib/Topology/Algebra/FilterBasis.lean,Mathlib/Topology/Separation/Basic.lean 5 1 ['github-actions'] alreadydone
assignee:alreadydone
11-73130
11 days ago
19-36141
19 days ago
19-36244
19 days
30141 shalliso
author:shalliso
fix(Topology/Baire/Lemmas): fix index type in isMeagre_iUnion The index set ι needs to be of type Sort* instead of type Type* in isMeagre_iUnion otherwise I get the following message when I try to use it: typeclass instance problem is stuck, it is often due to metavariables Countable ?m.27 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology 1/1 Mathlib/Topology/GDelta/Basic.lean 1 1 ['github-actions'] dagurtomas
assignee:dagurtomas
11-73126
11 days ago
18-85860
18 days ago
18-85894
18 days
29347 themathqueen
author:themathqueen
refactor(Algebra/Star/StarAlgHom): let `StarAlgEquiv` extend `StarRingEquiv` instead of `RingEquiv` Instead of having `StarAlgEquiv` extend `RingEquiv` and have properties `map_star'` and `map_smul'`, it now extends `StarRingEquiv` with only `map_smul'`. --- Will add more API in the next PR. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
29/36 Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/Analysis/CStarAlgebra/CStarMatrix.lean 2 5 ['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'themathqueen'] dupuisf and kbuzzard
assignee:dupuisf assignee:kbuzzard
11-66213
11 days ago
44-86049
1 month ago
47-22602
47 days
26975 Whysoserioushah
author:Whysoserioushah
feat: a norm_num extension for complex numbers co-authored-by : @thefundamentaltheor3m, @hrmacbeth --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 350/0 Mathlib.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Tactic.lean,Mathlib/Tactic/NormNum/NormNumI.lean,MathlibTest/norm_numI.lean 5 52 ['JovanGerb', 'Whysoserioushah', 'dupuisf', 'eric-wieser', 'github-actions', 'hrmacbeth'] robertylewis
assignee:robertylewis
11-30231
11 days ago
96-10855
3 months ago
96-15163
96 days
29539 YaelDillies
author:YaelDillies
feat: monoid algebras are invariant under base change From Toric Co-authored-by: Michał Mrugała --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory toric large-import 112/6 Mathlib.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/RingTheory/TensorProduct/MonoidAlgebra.lean 3 5 ['YaelDillies', 'github-actions', 'plp127'] mattrobball
assignee:mattrobball
11-26747
11 days ago
40-54180
1 month ago
40-55582
40 days
27047 YaelDillies
author:YaelDillies
feat: `MonoidHom.toAdditiveRight` as a `MulEquiv` From Toric --- - [x] depends on: #29800 I haven't yet been very thorough with the new lemmas. I first want to hear thoughts about the names [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) toric t-algebra
label:t-algebra$
31/7 Mathlib/Algebra/Group/TypeTags/Hom.lean 1 6 ['Ruben-VandeVelde', 'YaelDillies', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] adomani
assignee:adomani
11-25956
11 days ago
11-26275
11 days ago
79-63768
79 days
29449 mitchell-horner
author:mitchell-horner
feat(Combinatorics/SimpleGraph): add Turán density related theorems Refactors `tendsto_turanDensity` and implements `turanDensity_eq_sInf` and `isContained_of_card_edgeFinset` (theorems that are common in proofs involving Turán density). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 51/14 Mathlib/Combinatorics/SimpleGraph/Extremal/TuranDensity.lean 1 13 ['YaelDillies', 'github-actions', 'mitchell-horner'] YaelDillies
assignee:YaelDillies
11-25521
11 days ago
15-57997
15 days ago
41-76069
41 days
29582 YaelDillies
author:YaelDillies
chore: rename `_root_.prop` to `instFiniteProp` This was a surprising name! --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 1/1 Mathlib/Data/Fintype/EquivFin.lean 1 12 ['YaelDillies', 'bryangingechen', 'eric-wieser', 'github-actions', 'grunweg', 'plp127'] nobody
11-24780
11 days ago
11-24827
11 days ago
14-26163
14 days
30404 mariainesdff
author:mariainesdff
feat(RingTheory/DedekindDomain/AdicValuation): add eq_of_valuation_isEquiv_valuation Co-authored-by: @Louddy --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 12/1 Mathlib/RingTheory/DedekindDomain/AdicValuation.lean 1 1 ['github-actions'] nobody
11-22886
11 days ago
11-23404
11 days ago
11-23450
11 days
30408 kckennylau
author:kckennylau
feat(RingTheory): more algebra instances for HomogeneousLocalization and linear constructors This PR introduces the instance `Algebra R₀ (HomogeneousLocalization 𝒜 x)` as well as two linear constructors `mkₗ` and `Away.mkₗ` that fix the denominator. Zulip discussion: [#mathlib4 > Some algebra instance for graded algebra and homog loc](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Some.20algebra.20instance.20for.20graded.20algebra.20and.20homog.20loc/with/544178649) --- Split from #26061. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 65/20 Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean 1 1 ['github-actions'] nobody
11-21168
11 days ago
11-21168
11 days ago
11-21237
11 days
30126 YaelDillies
author:YaelDillies
feat: characterise when `Set.rangeFactorization` is injective --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 10/3 Mathlib/Data/Set/Image.lean,Mathlib/Data/Set/Operations.lean 2 2 ['github-actions', 'plp127'] nobody
11-17426
11 days ago
11-17490
11 days ago
11-34880
11 days
30391 rudynicolop
author:rudynicolop
feat(Data/List): list splitting definitions and lemmas This PR continues the work from #24395. Original PR: https://github.com/leanprover-community/mathlib4/pull/24395 t-data new-contributor 151/2 Mathlib/Data/List/Perm/Lattice.lean,Mathlib/Data/List/TakeDrop.lean 2 4 ['BoltonBailey', 'github-actions', 'rudynicolop'] nobody
10-82558
10 days ago
11-79699
11 days ago
11-79736
11 days
30420 erdOne
author:erdOne
feat(Topology): Units of nonnegative elements --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order t-algebra
label:t-algebra$
35/0 Mathlib/Algebra/Order/Nonneg/Field.lean,Mathlib/Topology/Algebra/Field.lean 2 1 ['github-actions'] nobody
10-80611
10 days ago
10-80611
10 days ago
10-86014
10 days
25907 mans0954
author:mans0954
feat: low order roots of unity This PR continues the work from #25470. Original PR: https://github.com/leanprover-community/mathlib4/pull/25470 t-algebra
label:t-algebra$
182/0 Mathlib/Algebra/CharP/Invertible.lean,Mathlib/RingTheory/RootsOfUnity/Complex.lean 2 3 ['github-actions', 'mans0954', 'urkud'] kim-em
assignee:kim-em
10-73242
10 days ago
128-32183
4 months ago
128-32223
128 days
29947 JaafarTanoukhi
author:JaafarTanoukhi
feat(Combinatorics/Digraph): Maps Ported `SimpleGraph/Maps.lean` to `Digraph/Maps.lean` for future PRs related to issue #[26771](https://github.com/leanprover-community/mathlib4/issues/26771) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 476/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/Maps.lean 2 1 ['github-actions'] awainverse
assignee:awainverse
10-73142
10 days ago
27-16665
27 days ago
27-16704
27 days
30121 idontgetoutmuch
author:idontgetoutmuch
Principal fiber bundle core A structure capturing what it means to be a principal fibre bundle. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-differential-geometry 227/0 Mathlib.lean,Mathlib/Geometry/Manifold/PrincipalFiberBundle/PrincipalGBundle.lean 2 5 ['github-actions', 'grunweg'] hrmacbeth
assignee:hrmacbeth
10-73140
10 days ago
18-50793
18 days ago
19-43745
19 days
30148 mbkybky
author:mbkybky
chore(RingTheory/Spectrum/Prime/Module): golf `stableUnderSpecialization_support` using `mem_support_mono` Golf [Module.stableUnderSpecialization_support](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Spectrum/Prime/Module.html#Module.stableUnderSpecialization_support) using [Module.mem_support_mono](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/Support.html#Module.mem_support_mono). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 2/6 Mathlib/RingTheory/Spectrum/Prime/Module.lean 1 1 ['github-actions'] chrisflav
assignee:chrisflav
10-73137
10 days ago
18-64436
18 days ago
18-64471
18 days
30180 mcdoll
author:mcdoll
feat(Analysis/Calculus): add a version of bounding iterated derivatives of compositions with fewer assumptions on differentiability --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 17/3 Mathlib/Analysis/Calculus/ContDiff/Bounds.lean 1 1 ['github-actions'] hrmacbeth
assignee:hrmacbeth
10-73133
10 days ago
18-12769
18 days ago
18-12807
18 days
30182 urkud
author:urkud
feat(Calculus): derivative of `ContinuousMultilinearMap.compContinuousLinearMap` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 136/1 Mathlib.lean,Mathlib/Analysis/Calculus/FDeriv/ContinuousMultilinearMap.lean,Mathlib/Analysis/NormedSpace/Multilinear/Basic.lean 3 1 ['github-actions'] hrmacbeth
assignee:hrmacbeth
10-73132
10 days ago
17-85760
17 days ago
17-85796
17 days
30336 kckennylau
author:kckennylau
feat(RingTheory): some lemmas about the irrelevant ideal This PR adds some lemmas about the irrelevant ideal of a graded ring, such as the fact that it is the iSup of each positively graded component. --- Split from #26061. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 49/5 Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean 1 1 ['github-actions'] nobody
10-47899
10 days ago
13-19014
13 days ago
13-19050
13 days
30431 kckennylau
author:kckennylau
feat(RingTheory): a homogeneous submodule is the span of its homogeneous elements --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 22/0 Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean 2 1 ['github-actions'] nobody
10-46640
10 days ago
10-46640
10 days ago
10-46681
10 days
28893 joelriou
author:joelriou
refactor(AlgebraicTopology): redefine the topological simplex using the convexity API Before this PR, the n-dimensional topological simplex (in the `AlgebraicTopology` hierarchy) was defined as a subtype of `Fin (n + 1) → ℝ≥0`, which did not interact well with the convexity API which assumes the ambient type is a vector space. In this PR, we redefine the topological simplex functor (as a cosimplicial object in `TopCat`) using the already existing `stdSimplex` from `Analysis.Convex`. --- - [x] depends on: #28891 - [x] depends on: #28869 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology t-convex-geometry large-import maintainer-merge 91/108 Mathlib/AlgebraicTopology/SimplexCategory/Basic.lean,Mathlib/AlgebraicTopology/SingularSet.lean,Mathlib/AlgebraicTopology/TopologicalSimplex.lean,Mathlib/Analysis/Convex/StdSimplex.lean 4 7 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'robin-carlier'] robin-carlier
assignee:robin-carlier
10-24039
10 days ago
19-32078
19 days ago*
0-2609
43 minutes*
30029 ADedecker
author:ADedecker
feat: define IsRightUniformGroup and IsLeftUniformGroup This mostly contains the definition and additional documentation. Future PRs will take care of expanding the theory, and proving in particular that `IsUniformGroup` is precisely the conjuction of these two typeclasses. --- - [x] depends on: #30025 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 199/36 Mathlib/Topology/Algebra/IsUniformGroup/Basic.lean,Mathlib/Topology/Algebra/IsUniformGroup/Defs.lean 2 12 ['ADedecker', 'github-actions', 'leanprover-bot', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] PatrickMassot
assignee:PatrickMassot
10-20949
10 days ago
23-9399
23 days ago
23-20630
23 days
29437 SnirBroshi
author:SnirBroshi
feat(Data/Seq): add Seq.subsequence and prove basic theorems about it I added `Seq.subsequence` to compose a sequence with a monotone function, creating a subsequence. Aliased to `Seq.comp` since it's a composition. I also added `Nat.le_induction_step_iff` which is needed to prove a subsequence is a sequence. This proves the comment at the top of `Defs.lean` that says "if `f n = none`, then `f m = none` for all `m ≥ n`" while `IsSeq` only talks about `n+1`. For completion I added the same statement for `Int`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-data new-contributor 104/0 Mathlib/Data/Int/Init.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Data/Seq/Basic.lean,Mathlib/Data/Seq/Defs.lean 4 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
10-19492
10 days ago
34-33941
1 month ago
43-21429
43 days
29758 SnirBroshi
author:SnirBroshi
feat(RingTheory/RootsOfUnity): exp(pi * i * q) is a root of unity for rational q --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 28/1 Mathlib/RingTheory/RootsOfUnity/Complex.lean 1 5 ['Ruben-VandeVelde', 'SnirBroshi', 'github-actions', 'kckennylau'] chrisflav
assignee:chrisflav
10-18868
10 days ago
32-77943
1 month ago
32-84943
32 days
30163 SnirBroshi
author:SnirBroshi
feat(Data/Set/Lattice): useful equivalences of `biUnion` and `biInter` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 25/0 Mathlib/Data/Set/Lattice.lean 1 1 ['github-actions'] nobody
10-7116
10 days ago
18-27985
18 days ago
18-28035
18 days
30213 SnirBroshi
author:SnirBroshi
feat(Data/List/GetD): golf and add lemmas for `get` and `getElem?` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 18/16 Mathlib/Data/List/GetD.lean 1 8 ['SnirBroshi', 'github-actions', 'themathqueen'] nobody
10-6462
10 days ago
16-86004
16 days ago
16-86201
16 days
30214 SnirBroshi
author:SnirBroshi
feat(Data/List/Basic): add `Fin` variants of `*mem_iff_getElem` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 11/0 Mathlib/Data/List/Basic.lean 1 2 ['SnirBroshi', 'github-actions'] nobody
10-6310
10 days ago
16-83725
16 days ago
16-84477
16 days
30215 SnirBroshi
author:SnirBroshi
feat(Data/List/NodupEquivFin): add equiv with `count = 1` hypothesis --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 7/2 Mathlib/Data/List/NodupEquivFin.lean 1 2 ['SnirBroshi', 'github-actions'] nobody
10-6139
10 days ago
16-83796
16 days ago
16-84180
16 days
30216 SnirBroshi
author:SnirBroshi
feat(Data/List/Basic): `get` is surjective iff every element is in the list --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 13/0 Mathlib/Data/List/Basic.lean 1 6 ['SnirBroshi', 'github-actions', 'themathqueen'] nobody
10-5801
10 days ago
16-83789
16 days ago
16-83823
16 days
30217 SnirBroshi
author:SnirBroshi
feat(Data/List/GetD): `getD` is surjective iff every element is in the list --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 19/0 Mathlib/Data/List/GetD.lean 1 2 ['github-actions', 'themathqueen'] nobody
10-5636
10 days ago
16-83542
16 days ago
16-83578
16 days
28793 grunweg
author:grunweg
feat: smooth immersions Define smooth immersions between manifolds. We use a definition which allows for corners, infinite dimension and arbitrary fields. Future PRs will - prove that immersions are C^n (#28796), - prove another characterisation of immersions: f is immersed at x iff the differential df_x splits, i.e. is injective, has closed range and its image has a closed complement, and in particular that a map between finite-dimensional manifolds over a complete field is an immersion iff its differential is injective, - use this to prove that the product (#28853) and composition of immersions is an immersion, - use this theory to give more conceptual proofs of half of `Manifold/Instances/Icc.lean` (#29077) - define smooth embeddings and immersed and embedded smooth submanifolds --- - [x] depends on: #28701 Most of the above has been done at https://github.com/grunweg/mathlib4/tree/MR-define-immersions. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-differential-geometry 487/0 Mathlib.lean,Mathlib/Geometry/Manifold/IsImmersionEmbedding.lean,Mathlib/Geometry/Manifold/LocalSourceTargetProperty.lean,docs/references.bib 4 98 ['chrisflav', 'github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'sgouezel'] sgouezel
assignee:sgouezel
10-1952
10 days ago
12-65427
12 days ago
24-3010
24 days
30354 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Connectivity/WalkCounting): a spanning subgraph has the same or more connected components --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 8/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkCounting.lean 2 1 ['github-actions'] nobody
9-79449
9 days ago
12-76157
12 days ago
12-76190
12 days
30429 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Connectivity): a graph is either connected or its complement is --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 17/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean 1 1 ['github-actions'] nobody
9-79036
9 days ago
10-59251
10 days ago
10-59285
10 days
30423 erdOne
author:erdOne
feat(RingTheory): API for valuative rel --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 164/28 Mathlib/RingTheory/Valuation/ValuativeRel/Basic.lean,Mathlib/RingTheory/Valuation/ValuativeRel/Trivial.lean 2 2 ['github-actions', 'pechersky'] nobody
9-76471
9 days ago
10-81040
10 days ago
10-81072
10 days
29132 YaelDillies
author:YaelDillies
feat(AdjoinRoot): bundle operations as `AlgHom`s In particular, generalise and rename `liftHom` to use a general `eval₂` instead of `aeval`. From Toric Co-authored-by: Andrew Yang the.erd.one@gmail.com Co-authored-by: Michał Mrugała kiolterino@gmail.com --- - [x] depends on: #30454 - [x] depends on: #30455 - [x] depends on: #30456 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory toric 112/53 Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/Isaacs.lean,Mathlib/FieldTheory/KummerExtension.lean,Mathlib/FieldTheory/Minpoly/IsIntegrallyClosed.lean,Mathlib/RingTheory/Adjoin/Field.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Localization/Away/AdjoinRoot.lean 7 28 ['YaelDillies', 'chrisflav', 'erdOne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] erdOne
assignee:erdOne
9-17257
9 days ago
9-20560
9 days ago
50-76651
50 days
27946 plp127
author:plp127
refactor: have `MetrizableSpace` not depend on `MetricSpace` Some theorems for uniform spaces with a countably generated uniformity do not mention their uniformity in any of the hypotheses or the conclusion (for example `UniformSpace.isCompact_iff_isSeqCompact`). This PR allows those theorems to be stated for (pseudo)metrizable spaces without importing the real numbers. - Use `TopologicalSpace.pseudoMetrizableSpaceUniformity` to endow a pseudometrizable space with a compatible uniformity, and use `TopologicalSpace.pseudoMetrizableSpaceUniformity_countably_generated` to show that this is countably generated. - `TopologicalSpace.pseudoMetrizableSpacePseudoMetric` and `TopologicalSpace.metrizableSpaceMetric` have been moved to `Mathlib/Topology/Metrizable/Uniformity.lean`. See also #2032 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 128/102 Mathlib/Analysis/Fourier/RiemannLebesgueLemma.lean,Mathlib/Topology/Compactness/PseudometrizableLindelof.lean,Mathlib/Topology/GDelta/MetrizableSpace.lean,Mathlib/Topology/Metrizable/Basic.lean,Mathlib/Topology/Metrizable/ContinuousMap.lean,Mathlib/Topology/Metrizable/Real.lean,Mathlib/Topology/Metrizable/Uniformity.lean 7 11 ['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'urkud'] urkud
assignee:urkud
9-14851
9 days ago
9-19844
9 days ago
78-6866
78 days
29143 RemyDegenne
author:RemyDegenne
feat(Probability/Decision): basic properties of the Bayes risk - Comparison of the Bayes risk and the minimax risk - Maximal value of the Bayes risk and particular cases where it equals that value - Data-processing inequality --- - [x] depends on: #29137 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge t-measure-probability 262/1 Mathlib.lean,Mathlib/Probability/Decision/Risk/Basic.lean,Mathlib/Probability/Decision/Risk/Defs.lean 3 16 ['EtienneC30', 'RemyDegenne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] EtienneC30
assignee:EtienneC30
9-6659
9 days ago
9-6659
9 days ago
22-51515
22 days
30478 riccardobrasca
author:riccardobrasca
feat: remove separability assumption from Algebra.dvd_algebraMap_intNorm_self Continuing the work of #30323 and #30448 we remove the separability assumption from `Algebra.dvd_algebraMap_intNorm_self`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 27/19 Mathlib/RingTheory/Ideal/Norm/RelNorm.lean,Mathlib/RingTheory/IntegralClosure/IntegralRestrict.lean 2 1 ['github-actions'] nobody
9-2103
9 days ago
9-2165
9 days ago
9-2165
9 days
30047 ooovi
author:ooovi
feat(Combinatorics/SimpleGraph): edge labellings Add edge labellings for `SimpleGraph` as well as some basic lemmata. --- This is mostly a cleaned up part of @b-mehta's lean4 port of their [formalisation of an exponentially better upper bound on Ramsey numbers ](https://github.com/b-mehta/ExponentialRamsey/). I need these definitions for another project on Ramsey theory. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 234/3 Mathlib.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/EdgeLabelling.lean,Mathlib/Combinatorics/SimpleGraph/Regularity/Increment.lean,Mathlib/Combinatorics/SimpleGraph/Triangle/Counting.lean 5 45 ['YaelDillies', 'b-mehta', 'github-actions', 'ooovi', 'vlad902'] b-mehta
assignee:b-mehta
8-73116
8 days ago
16-21430
16 days ago
21-31890
21 days
30486 vihdzp
author:vihdzp
feat: `f r = r` for `f : ℝ →+* ℝ` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data t-algebra easy
label:t-algebra$
6/0 Mathlib/Data/Real/CompleteField.lean 1 5 ['github-actions', 'plp127', 'vihdzp'] nobody
8-68683
8 days ago
8-73008
8 days ago
8-73048
8 days
30489 vihdzp
author:vihdzp
feat: more lemmas on `AntisymmRel` --- Downstreamed from the CGT repo. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 23/3 Mathlib/Order/Antisymmetrization.lean 1 1 ['github-actions'] nobody
8-68038
8 days ago
8-68337
8 days ago
8-68370
8 days
26457 AntoineChambert-Loir
author:AntoineChambert-Loir
feat(Mathlib/GroupTheory/Perm/MaximalSubgroups): maximal subgroups of the permutation group * `Equiv.Perm.isCoatom_stabilizer`: when `s : Set α` is not empty, nor its complementary subset, and if the cardinality of `s` is not half of that of `α`, then `MulAction.stabilizer (Equiv.Perm α) s` is a maximal subgroup of the symmetric group `Equiv.Perm α`. This is the *intransitive case* of the O'Nan-Scott classification. ## TODO * Appplication to primitivity of the action of `Equiv.Perm α` on finite combinations of `α`. * Finish the classification --- - [x] depends on: #26282 - [x] depends on: #26281 - [x] depends on: #26280 - [x] depends on: #26279 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory 525/2 Mathlib.lean,Mathlib/GroupTheory/GroupAction/Jordan.lean,Mathlib/GroupTheory/GroupAction/MultiplePrimitivity.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfFixingSubgroup.lean,Mathlib/GroupTheory/GroupAction/SubMulAction/OfStabilizer.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/Perm/MaximalSubgroups.lean,docs/references.bib 8 n/a ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
8-65997
8 days ago
unknown
unknown
30416 SnirBroshi
author:SnirBroshi
feat(Logic/Relation): lemmas relating `Relation.Map` and `Function.onFun` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic 32/0 Mathlib/Logic/Relation.lean 1 1 ['github-actions'] nobody
8-64818
8 days ago
11-5518
11 days ago
11-7746
11 days
26219 Thmoas-Guan
author:Thmoas-Guan
feat(RingTheory/KrullDimension): Krull Dimension of quotient regular sequence We show that if M is a finite module over a Noetherian local ring R, [r₁, …, rₙ] is an M-sequence, then dim M⧸(r₁, …, rₙ)M + n = dim M. Co-authored-by: Yongle Hu @mbkybky --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 225/15 Mathlib.lean,Mathlib/LinearAlgebra/Quotient/Basic.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Localization.lean,Mathlib/RingTheory/Jacobson/Ideal.lean,Mathlib/RingTheory/KrullDimension/Module.lean,Mathlib/RingTheory/KrullDimension/Regular.lean,Mathlib/RingTheory/LocalRing/MaximalIdeal/Basic.lean,Mathlib/RingTheory/Nakayama.lean,Mathlib/RingTheory/Support.lean 9 n/a ['Thmoas-Guan', 'chrisflav', 'github-actions', 'leanprover-community-bot-assistant', 'mbkybky'] chrisflav
assignee:chrisflav
8-61523
8 days ago
unknown
unknown
30069 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph): add lemma `IsTree.dist_ne_of_adj` and necessary lemmas This contribution was created as part of the Utrecht Summerschool "Formalizing Mathematics in Lean" in July 2025. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 34/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 8 ['github-actions', 'mathlib4-merge-conflict-bot', 'themathqueen', 'vlad902'] nobody
8-47971
8 days ago
8-47990
8 days ago
21-11194
21 days
26259 Raph-DG
author:Raph-DG
feat(Topology): Connecting different notions of locally finite In this PR we connect the notions of local finiteness of an indexed family of sets (as in LocallyFinite) and of a set of sets (as in Function.locallyFinsuppWithin) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 30/0 Mathlib/Topology/LocallyFinsupp.lean 1 20 ['Raph-DG', 'chrisflav', 'github-actions', 'jcommelin', 'kckennylau', 'urkud'] jcommelin
assignee:jcommelin
8-45966
8 days ago
8-45967
8 days ago
112-63823
112 days
30171 smmercuri
author:smmercuri
feat(DedekindDomain/AdicValuation): `le_one` lemmas for `HeightOneSpectrum.valuation` and specialisations to `Rat` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 55/0 Mathlib/RingTheory/DedekindDomain/AdicValuation.lean 1 5 ['erdOne', 'github-actions', 'smmercuri'] erdOne
assignee:erdOne
8-36892
8 days ago
18-17673
18 days ago
18-17704
18 days
30238 kebekus
author:kebekus
feat: behavior of divisors when taking powers of meromorphic functions Establish the behavior of divisors when taking powers of meromorphic functions. For consistency, provide `_fun`-versions of several simple lemmas. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge t-analysis 135/4 Mathlib/Algebra/Order/WithTop/Untop0.lean,Mathlib/Analysis/Meromorphic/Divisor.lean,Mathlib/Analysis/Meromorphic/FactorizedRational.lean,Mathlib/Analysis/Meromorphic/Order.lean 4 51 ['YaelDillies', 'bryangingechen', 'github-actions', 'kebekus'] nobody
8-34700
8 days ago
8-34700
8 days ago
14-31079
14 days
30499 harahu
author:harahu
doc(AkraBazzi): minor tweaks and additions Broken out of #29464 to simplify review. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-computability 19/13 Mathlib/Computability/AkraBazzi/GrowsPolynomially.lean,Mathlib/Computability/AkraBazzi/SumTransform.lean 2 7 ['github-actions', 'grunweg', 'harahu'] nobody
8-30398
8 days ago
8-30398
8 days ago
8-33446
8 days
27433 YaelDillies
author:YaelDillies
refactor: make `⇑e⁻¹ = e.symm` simp From BrauerGroup and ClassFieldTheory --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 217/255 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Group/End.lean,Mathlib/Algebra/Module/Equiv/Basic.lean,Mathlib/Algebra/Order/Rearrangement.lean,Mathlib/Data/Fintype/Perm.lean,Mathlib/FieldTheory/KrullTopology.lean,Mathlib/GroupTheory/Perm/Basic.lean,Mathlib/GroupTheory/Perm/Centralizer.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/GroupTheory/Perm/Cycle/Factors.lean,Mathlib/GroupTheory/Perm/Finite.lean,Mathlib/GroupTheory/Perm/Sign.lean,Mathlib/GroupTheory/Perm/Support.lean,Mathlib/GroupTheory/SpecificGroups/Alternating.lean,Mathlib/LinearAlgebra/Matrix/Determinant/Basic.lean,Mathlib/Logic/Equiv/Set.lean 16 5 ['dwrensha', 'eric-wieser', 'github-actions', 'mathlib4-merge-conflict-bot'] dwrensha
assignee:dwrensha
8-9103
8 days ago
9-50185
9 days ago
65-8872
65 days
27258 JovanGerb
author:JovanGerb
Imo2020 q6 Original PR: #23431 This PR adds a solution to IMO 2020 Q6. It follows the solution that I found when I was participating in the IMO. I used the statement formalization that was given by @jsm28. TODO: The function `project a b p` that is defined here should be replaced with `signedDist a p (b -ᵥ a)`. --- - [x] depends on: #27257 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) IMO 346/0 Archive.lean,Archive/Imo/Imo2020Q6.lean 2 4 ['dwrensha', 'github-actions', 'mathlib4-dependent-issues-bot'] dwrensha
assignee:dwrensha
8-6683
8 days ago
29-18816
29 days ago
29-20096
29 days
30481 vihdzp
author:vihdzp
feat: `CoeFun` for `Lex` and `Colex` If `F` is a function type, we should be able to treat `Lex F` as a function type too. This diminishes the visual clutter of going to and from `Lex`. This design was already present for pi types, but wasn't accounted for with neither of `DFinsupp` or `Finsupp`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 32/18 Mathlib/Data/DFinsupp/Lex.lean,Mathlib/Data/Finsupp/Lex.lean,Mathlib/Order/PiLex.lean,Mathlib/Order/Synonym.lean 4 1 ['github-actions'] nobody
7-75795
7 days ago
8-76745
8 days ago
8-76730
8 days
30261 SnirBroshi
author:SnirBroshi
feat(Algebra/Ring/Basic): add `a / -b = -a / b` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
5/3 Mathlib/Algebra/Ring/Basic.lean 1 1 ['github-actions'] joelriou
assignee:joelriou
7-73130
7 days ago
15-72499
15 days ago
15-72536
15 days
30280 SnirBroshi
author:SnirBroshi
chore(Algebra/Order/Monoid/Unbundled/MinMax): golf three lemmas using `grind` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
3/6 Mathlib/Algebra/Order/Monoid/Unbundled/MinMax.lean 1 1 ['euprunin', 'github-actions'] ocfnash
assignee:ocfnash
7-73128
7 days ago
15-1209
15 days ago
15-1241
15 days
30285 kckennylau
author:kckennylau
chore: document Spec(R) notation in docstring of Spec #30272 changed the `Spec(R)` notation to scoped, so I am including this new information in the docstring of `AlgebraicGeometry.Spec`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 13/0 Mathlib/AlgebraicGeometry/Scheme.lean 1 1 ['github-actions'] alexjbest
assignee:alexjbest
7-73126
7 days ago
14-81297
14 days ago
14-81332
14 days
30143 Jlh18
author:Jlh18
feat(CategoryTheory/Adjunction/PartialAdjunction): add symm naturality lemmas for HomEquiv and lift functor Add two lemmas for `partialRightAdjointHomEquiv` to help work with `partialRightAdjointHomEquiv.symm`. Add a definition `Functor.PartialRightAdjointSource.lift` to help with defining functors into the category `PartialRightAdjointSource`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 14/0 Mathlib/CategoryTheory/Adjunction/PartialAdjoint.lean 1 4 ['Jlh18', 'github-actions', 'joelriou'] TwoFX
assignee:TwoFX
7-66204
7 days ago
7-66289
7 days ago
18-33693
18 days
27254 yuanyi-350
author:yuanyi-350
2025 imo problem3 - [x] depends on: #28788 - [x] depends on: #28790 - [x] depends on: #28829 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) IMO 231/0 Archive.lean,Archive/Imo/Imo2025Q3.lean,Mathlib/NumberTheory/Padics/PadicVal/Basic.lean 3 28 ['github-actions', 'jsm28', 'kbuzzard', 'leanprover-community-bot-assistant', 'madvorak', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'themathqueen', 'wwylele', 'yuanyi-350'] jsm28
assignee:jsm28
7-44282
7 days ago
48-75224
1 month ago
82-50086
82 days
26961 mariainesdff
author:mariainesdff
feat(RingTheory/PowerSeries/Substitution): add API Co-authored-by: @AntoineChambert-Loir --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 57/5 Mathlib/RingTheory/PowerSeries/Basic.lean,Mathlib/RingTheory/PowerSeries/Substitution.lean 2 13 ['Ruben-VandeVelde', 'github-actions', 'mariainesdff', 'mattrobball'] mattrobball
assignee:mattrobball
7-40944
7 days ago
33-35604
1 month ago
80-55624
80 days
30324 EtienneC30
author:EtienneC30
feat: introduce covarianceBilin The `covarianceBilin` associated to a measure on a Hilbert space is the positive semidefinite continuous bilinear form which represents its covariance. --- - [x] depends on: #30417 From BrownianMotion [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 171/2 Mathlib/Probability/Moments/CovarianceBilin.lean,Mathlib/Probability/Moments/CovarianceBilinDual.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean 3 5 ['RemyDegenne', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
7-39827
7 days ago
7-39851
7 days ago
10-23199
10 days
27567 themathqueen
author:themathqueen
feat(LinearAlgebra/TensorProduct/Associator): add `lid` and `assoc` tensor lemmas This adds `TensorProduct.lid_tensor` and `TensorProduct.assoc_tensor`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
31/2 Mathlib/LinearAlgebra/TensorProduct/Associator.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean 2 2 ['github-actions', 'themathqueen'] mattrobball
assignee:mattrobball
7-31829
7 days ago
72-8309
2 months ago
86-1137
86 days
30004 luigi-massacci
author:luigi-massacci
feat(MeasureTheory/Integral/TestAgainst): integrating BCFs against a finite measure or an L1Loc map as CLMs This PR merges #29511 and #29748. Create a new file `TestAgainst.lean` with definitions wrapping integration against a finite measure or a locally integrable map as continuous linear maps on bounded continuous functions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability t-analysis 112/1 Mathlib.lean,Mathlib/MeasureTheory/Integral/BoundedContinuousFunction.lean,Mathlib/MeasureTheory/Integral/TestAgainst.lean 3 45 ['EtienneC30', 'github-actions', 'j-loreaux', 'luigi-massacci'] EtienneC30
assignee:EtienneC30
7-30059
7 days ago
7-30078
7 days ago
24-38177
24 days
29941 themathqueen
author:themathqueen
feat(Algebra/Star): define the intrinsic star on linear maps This pr defines the _intrinsic_ star operation on linear maps `E →ₗ F` where `(star f) x = star (f (star x))`. This corresponds to a map being star-preserving, i.e., a map is self-adjoint iff it is star-preserving. This is scoped to `IntrinsicStar` as to not conflict with the global instance on `E →ₗ[𝕜] E` on finite-dimensional Hilbert spaces, where `star` is defined as `LinearMap.adjoint`. These are mathematically distinct instances. In a finite-dimensional C⋆-algebra with a positive linear functional, which induces the GNS Hilbert space (TODO) and a coalgebra given by the adjoint of the multiplication map and the algebra unit map (TODO), we get a star ring where multiplication is given by the convolution product (#25183) and star is given by the intrinsic star. In such a space, we can then define the isomorphism `(E →ₗ[ℂ] F) ≃⋆ₐ (F ⊗[ℂ] Eᵐᵒᵖ)`, which is an important identification in the theory of non-commutative graphs. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
96/0 Mathlib.lean,Mathlib/Algebra/Star/LinearMap.lean 2 3 ['github-actions', 'ocfnash', 'themathqueen'] ocfnash
assignee:ocfnash
7-26839
7 days ago
10-20667
10 days ago
27-28200
27 days
28602 gmcninch-tufts
author:gmcninch-tufts
feat(Algebra/Polynomial/Module): prove equivalence of a certain tensor product with PolynomialModule For a commutative ring `R` and an `R`-module `M`, construct an equivalence between the `R[X]`-modules `R[X] ⊗[R] M` and `PolynomialModule R M`. This equivalence enables application of some base-change results to `PolynomialModule R M` . --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
210/0 Mathlib.lean,Mathlib/Algebra/Polynomial/Module/TensorProduct.lean 2 4 ['github-actions', 'kckennylau'] jcommelin
assignee:jcommelin
7-8772
7 days ago
64-22209
2 months ago
64-22245
64 days
30560 dwrensha
author:dwrensha
fix(LinearAlgebra/Alternating/Basic): avoid deep recursion in MultilinearMap.alternatization Makes `MultilinearMap.alternatization` an `irreducible_def` to avoid errors about deep recursion. This is an update of #15045 according to the suggestions in [this zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/kernel.20deep.20recursion.20detected/near/454301820). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
36/9 Mathlib/LinearAlgebra/Alternating/Basic.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean,MathlibTest/DetOne.lean 3 5 ['dwrensha', 'eric-wieser', 'github-actions'] nobody
6-81794
6 days ago
7-930
7 days ago
7-968
7 days
30562 dwrensha
author:dwrensha
fix(Data/Fintype/Perm): make the main logic of Equiv.instFintype irreducible Adds a new `irreducible_def` for the main branch of `Equiv.instFintype` to avoid errors about deep recursion. This is an update of #15045 and #30560 according to the discussion in those PRs and in [this zulip thread](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/kernel.20deep.20recursion.20detected/near/454301820). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 15/8 Mathlib/Combinatorics/Derangements/Finite.lean,Mathlib/Data/Fintype/Perm.lean,Mathlib/LinearAlgebra/Matrix/SpecialLinearGroup.lean 3 1 ['github-actions'] nobody
6-81748
6 days ago
6-81820
6 days ago
6-81796
6 days
30526 SnirBroshi
author:SnirBroshi
chore(Logic/Relation): use `Subrelation` to state theorems chore(Logic/Relation): replace every `∀ x y, r x y → r' x y` with `Subrelation r r'` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 79/73 Mathlib/CategoryTheory/IsConnected.lean,Mathlib/CategoryTheory/Limits/Types/Filtered.lean,Mathlib/CategoryTheory/Limits/Types/Shapes.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/Logic/Relation.lean,Mathlib/Order/Interval/Finset/Basic.lean 7 1 ['github-actions', 'vihdzp'] nobody
6-77500
6 days ago
7-64096
7 days ago
7-64072
7 days
30564 vihdzp
author:vihdzp
chore(Combinatorics/SetFamily/KruskalKatona): remove outdated comment The referenced diamond was fixed in #29436. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics easy documentation 0/5 Mathlib/Combinatorics/SetFamily/KruskalKatona.lean 1 1 ['github-actions'] nobody
6-75444
6 days ago
6-75642
6 days ago
6-75629
6 days
29186 winstonyin
author:winstonyin
feat: IsIntegralCurve for solutions to ODEs I define `IsIntegralCurve` etc. for solutions to ODEs on vector spaces. The translation and scaling lemmas are also included. This parallels `IsMIntegralCurve` etc. for manifolds. Moved from #26534. - [x] depends on: #26563 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-dynamics t-analysis t-differential-geometry 298/100 Mathlib.lean,Mathlib/Analysis/ODE/Basic.lean,Mathlib/Analysis/ODE/Transform.lean,Mathlib/Geometry/Manifold/IntegralCurve/Basic.lean,Mathlib/Geometry/Manifold/IntegralCurve/Transform.lean 5 2 ['github-actions', 'mathlib4-dependent-issues-bot'] sgouezel
assignee:sgouezel
6-73130
6 days ago
51-6573
1 month ago
51-6709
51 days
30275 staroperator
author:staroperator
feat(Order/WellFoundedSet): `partiallyWellOrderedOn_univ_iff` and `Pi.wellQuasiOrderedLE` Connect `Set.PartiallyWellOrderedOn` with `WellQuasiOrdered` and `Set.IsPWO` with `WellQuasiOrderedLE`. Add an instance `Pi.wellQuasiOrderedLE` for Dickson's lemma. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 30/0 Mathlib/Order/RelIso/Set.lean,Mathlib/Order/WellFoundedSet.lean,Mathlib/Order/WellQuasiOrder.lean 3 2 ['github-actions', 'vihdzp'] Vierkantor
assignee:Vierkantor
6-73129
6 days ago
15-16342
15 days ago
15-16375
15 days
30302 kckennylau
author:kckennylau
feat(AlgebraicGeometry): generalise Proj and HomogeneousLocalization to graded rings This PR generalises `AlgebraicGeometry.Proj` to take in a graded ring (with an arbitrary `AddSubgroupClass` in a `CommRing`). Currently it takes in a `GradedAlgebra`. `HomogeneousLocalization` is also generalised to graded ring. Zulip discussion: [#mathlib4 >Proj should take GradedRing](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Proj.20should.20take.20GradedRing/near/543071427) --- Preamble to #26061. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 125/101 Mathlib/Algebra/DirectSum/Internal.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Proper.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/StructureSheaf.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/RingTheory/GradedAlgebra/FiniteType.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean 8 6 ['github-actions', 'kckennylau', 'leanprover-bot'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
6-73127
6 days ago
14-17384
14 days ago
14-17406
14 days
30557 SnirBroshi
author:SnirBroshi
feat(Logic/Relation): a relation is reflexive iff it subsumes the equality relation feat(Logic/Relation): a relation is reflexive iff it subsumes the equality relation, and irreflexive iff the inequality relation subsumes it --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-logic 6/0 Mathlib/Logic/Relation.lean 1 2 ['SnirBroshi', 'github-actions', 'vihdzp'] nobody
6-69424
6 days ago
7-3380
7 days ago
7-3417
7 days
30471 loefflerd
author:loefflerd
feat(Topology/Algebra/Order/Archimedean): subgroups cyclic iff discrete An add subgroup of the reals (or similar groups) is discrete iff it's cyclic, and related statements. --- - [ ] depends on: #29743 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 77/0 Mathlib.lean,Mathlib/Topology/Algebra/Order/ArchimedeanDiscrete.lean 2 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
6-55085
6 days ago
6-79087
6 days ago
6-79169
6 days
30415 joelriou
author:joelriou
feat(Topology/Sheaves): the equivalence `Over U ≌ Opens U` for `U : Opens X` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 55/0 Mathlib.lean,Mathlib/Topology/Sheaves/Over.lean 2 4 ['erdOne', 'github-actions', 'joelriou'] nobody
6-47146
6 days ago
6-47146
6 days ago
10-57211
10 days
30525 515801431
author:515801431
Polya_counting This PR introduces basic definitions and results about colorings under permutation group actions. A coloring is defined as a function X → Y, and the permutation group Equiv.Perm X acts on colorings by precomposition: (g • c) x = c (g⁻¹ • x) This formalizes the natural action of relabeling the elements of X. Main definitions MulAction (Equiv.Perm X) (X → Y): The action of the permutation group on colorings via precomposition. coloringEquiv (c₁ c₂ : X → Y) : Prop: Two colorings are equivalent if they lie in the same orbit under this action, i.e. ∃ f : Equiv.Perm X, f • c₁ = c₂. Main results smul_eq_iff_mem_stabilizer: Characterizes when two group actions on the same coloring are equal, showing that g • c = f • c ↔ f⁻¹ * g ∈ stabilizer c. coloringEquiv_equivalence: Proves that coloringEquiv defines an equivalence relation on X → Y. orbit_size_eq_index: Reformulates the orbit–stabilizer theorem in the context of colorings: |orbit c| = |Perm X| / |stabilizer c| Motivation These results provide foundational infrastructure for studying Burnside’s lemma and Pólya’s enumeration theorem in Mathlib, where the enumeration of distinct colorings up to symmetry plays a central role. new-contributor t-combinatorics 111/0 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Polya.lean 2 2 ['IvanRenison', 'github-actions'] nobody
6-44444
6 days ago
7-67126
7 days ago
7-67163
7 days
29946 smmercuri
author:smmercuri
feat(InfinitePlace/Ramification): embeddings of unramified/ramified infinite places satisfy `IsUnmixed/IsMixed` --- - [x] depends on: #29945 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) FLT t-number-theory 67/1 Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean 1 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'smmercuri', 'xroblot'] alexjbest
assignee:alexjbest
6-43594
6 days ago
22-38645
22 days ago
22-48724
22 days
27290 themathqueen
author:themathqueen
feat: define `Star` on tensor products This pr defines the `Star`, `StarAddMonoid`, `StarModule`, `StarMul`, and `StarRing` instances on tensor product spaces. --- - [x] depends on: #27288 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
55/0 Mathlib.lean,Mathlib/Algebra/Star/TensorProduct.lean,Mathlib/RingTheory/TensorProduct/Basic.lean 3 5 ['github-actions', 'mathlib4-dependent-issues-bot', 'mcdoll', 'themathqueen'] alreadydone
assignee:alreadydone
6-39434
6 days ago
23-17744
23 days ago
23-18557
23 days
26790 FlAmmmmING
author:FlAmmmmING
feat(Combinatorics/Enumerative/Bell.lean): define standard Bell number --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 46/1 Mathlib/Combinatorics/Enumerative/Bell.lean 1 11 ['AntoineChambert-Loir', 'FlAmmmmING', 'eric-wieser', 'github-actions', 'kckennylau', 'madvorak'] awainverse
assignee:awainverse
6-29033
6 days ago
108-18535
3 months ago
108-18572
108 days
30582 RemyDegenne
author:RemyDegenne
feat: extension of a function to the closure of a submodule - define the closure of a set in a complete space as an `AbstractCompletion` - add instances about submodules - add a coercion from a submodule to its topological closure - add induction lemmas on topological closures of submodules - define the extension of a function on a submodule to the closure of a submodule --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 138/1 Mathlib/Topology/Algebra/Module/Basic.lean,Mathlib/Topology/UniformSpace/AbstractCompletion.lean 2 1 ['github-actions'] nobody
6-26115
6 days ago
6-26117
6 days ago
6-26157
6 days
30542 SnirBroshi
author:SnirBroshi
feat(Data/Sym/Sym2): `fromRel` is monotonic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 11/1 Mathlib/Data/Sym/Sym2.lean 1 5 ['SnirBroshi', 'b-mehta', 'github-actions', 'vihdzp'] nobody
6-24135
6 days ago
7-33704
7 days ago
7-33736
7 days
28546 Sfgangloff
author:Sfgangloff
feat(SymbolicDynamics): basic setup of Zd, full shift, cylinders, pat… # Symbolic dynamics on groups: core API and entropy along finite shapes 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). new-contributor t-dynamics 751/0 Mathlib.lean,Mathlib/Dynamics/SymbolicDynamics/Basic.lean,Mathlib/Tactic/ToAdditive/GuessName.lean 3 84 ['Sfgangloff', 'eric-wieser', 'github-actions', 'kckennylau', 'sgouezel'] sgouezel
assignee:sgouezel
6-19854
6 days ago
6-19854
6 days ago
50-37384
50 days
30534 joelriou
author:joelriou
chore(CategoryTheory/EssentiallySmall): adding an instance Before this PR, `example (C : Type w) [SmallCategory C] : EssentiallySmall.{w} C := inferInstance` would not work. We fix this by making `essentiallySmall_of_small_of_locallySmall` an instance. Consequently, we need to make certain universes explicit in a few proofs. Some instances in `Sites.Equivalence` are transformed into lemmas because it seems they shadowed more basic instances. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 91/35 Mathlib.lean,Mathlib/Algebra/Category/Grp/Subobject.lean,Mathlib/AlgebraicGeometry/Modules/Presheaf.lean,Mathlib/CategoryTheory/Abelian/GrothendieckAxioms/Basic.lean,Mathlib/CategoryTheory/Abelian/GrothendieckAxioms/Sheaf.lean,Mathlib/CategoryTheory/Adjunction/AdjointFunctorTheorems.lean,Mathlib/CategoryTheory/EssentiallySmall.lean,Mathlib/CategoryTheory/Generator/Abelian.lean,Mathlib/CategoryTheory/Limits/Filtered.lean,Mathlib/CategoryTheory/Limits/HasLimits.lean,Mathlib/CategoryTheory/Limits/Preserves/Basic.lean,Mathlib/CategoryTheory/Limits/Preserves/Filtered.lean,Mathlib/CategoryTheory/Sites/Equivalence.lean,Mathlib/CategoryTheory/Sites/LeftExact.lean,Mathlib/CategoryTheory/Sites/PreservesSheafification.lean,Mathlib/CategoryTheory/Sites/Whiskering.lean,Mathlib/Condensed/Discrete/Basic.lean,Mathlib/Condensed/Light/AB.lean,Mathlib/Condensed/Light/CartesianClosed.lean,Mathlib/Condensed/Light/Instances.lean,Mathlib/Condensed/Light/Module.lean,MathlibTest/CategoryTheory/Sites/ConcreteSheafification.lean 22 5 ['github-actions', 'joelriou', 'leanprover-bot'] nobody
6-15049
6 days ago
6-15049
6 days ago
6-15736
6 days
30594 j-loreaux
author:j-loreaux
feat: generalize continuity results for the continuous functional calculus Under suitable conditions `x ↦ cfc f (a x)` is continuous. Previously these conditions were that there was a single compact set on which `f` was continuous, and which contained the spectra of all `a x`. However, this is a bit too stringent for some purposes and so we generalize it here. In particular, it suffices that the spectra `a x` are covered by a family of compact sets `s x` (on each of which `f` is continuous) satisfying the property that each `s x₀` contains the spectra `a x` for `x` sufficiently close to `x₀`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 94/81 Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Continuity.lean 1 1 ['github-actions'] nobody
5-85953
5 days ago
5-86017
5 days ago
5-86007
5 days
29033 faenuccio
author:faenuccio
feat(Analysis.LocallyConvex): a linear map is surjective iff its image contains a ball, or a closed ball, or a sphere Prove that a linear map is surjective if and only if its image contains either a ball or a sphere. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-analysis 135/15 Mathlib/Analysis/Convex/Basic.lean,Mathlib/Analysis/LocallyConvex/Basic.lean,Mathlib/Analysis/Normed/Module/Convex.lean,Mathlib/Analysis/Normed/Operator/Basic.lean 4 30 ['ADedecker', 'eric-wieser', 'faenuccio', 'github-actions', 'j-loreaux', 'mathlib4-merge-conflict-bot'] nobody
5-83870
5 days ago
6-801
6 days ago
6-75910
6 days
30535 kckennylau
author:kckennylau
feat(RingTheory): make FormallySmooth, FormallyEtale, and FormallyUnramified universe-polymorphic This PR makes `FormallySmooth`, `FormallyEtale`, and `FormallyUnramified` universe-polymorphic. In particular, the constructor `FormallySmooth.comp_surjective'` now talks about rings in a fixed universe, and then the lemma `FormallySmooth.comp_surjective` (without the prime) talks about any arbitrary universe. The same happens for `FormallyEtale.comp_bijective(')`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 211/140 Mathlib/RingTheory/Etale/Basic.lean,Mathlib/RingTheory/Etale/Field.lean,Mathlib/RingTheory/Etale/Kaehler.lean,Mathlib/RingTheory/Etale/Pi.lean,Mathlib/RingTheory/Ideal/Cotangent.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Smooth/Kaehler.lean,Mathlib/RingTheory/Smooth/Local.lean,Mathlib/RingTheory/Smooth/Locus.lean,Mathlib/RingTheory/Smooth/Pi.lean,Mathlib/RingTheory/Smooth/StandardSmoothCotangent.lean,Mathlib/RingTheory/Unramified/Basic.lean,Mathlib/RingTheory/Unramified/Field.lean,Mathlib/RingTheory/Unramified/Locus.lean,Mathlib/RingTheory/Unramified/Pi.lean 15 9 ['erdOne', 'github-actions', 'kckennylau', 'leanprover-bot'] nobody
5-78881
5 days ago
7-25864
7 days ago
7-25851
7 days
30158 nicolaviolette
author:nicolaviolette
feat: combinatorics simplegraph basic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 9/4 Mathlib/Combinatorics/SimpleGraph/Basic.lean 1 1 ['github-actions'] b-mehta
assignee:b-mehta
5-73123
5 days ago
18-38879
18 days ago
18-38913
18 days
30179 EtienneC30
author:EtienneC30
feat: uncurrying the product measure gives the product measure --- - [x] depends on: #30161 - [x] depends on: #30178 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 51/0 Mathlib/Probability/ProductMeasure.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] RemyDegenne
assignee:RemyDegenne
5-73122
5 days ago
13-9537
13 days ago
13-9518
13 days
30233 Komyyy
author:Komyyy
refactor(Topology/Sequences): generalize seq-compactness lemmas to metrizable space * [`IsSeqCompact.isCompact`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Sequences.html#IsSeqCompact.isCompact) * [`UniformSpace.isCompact_iff_isSeqCompact`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Sequences.html#UniformSpace.isCompact_iff_isSeqCompact) * [`UniformSpace.compactSpace_iff_seqCompactSpace`](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Sequences.html#UniformSpace.compactSpace_iff_seqCompactSpace) These are lemmas on uniform spaces which has countable uniformity, so can be generalized to pseudo-metrizable space. From [CLT](https://github.com/RemyDegenne/CLT) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-topology 20/7 Mathlib/Topology/Sequences.lean,docs/overview.yaml,docs/undergrad.yaml 3 1 ['github-actions'] grunweg
assignee:grunweg
5-73121
5 days ago
13-41175
13 days ago
13-41650
13 days
30335 joelriou
author:joelriou
feat(CategoryTheory/Adjunction): more mate compatibilities We obtain various lemmas about adjunctions between functors by computing `conjugateEquiv` in case of associators, unitors, and whiskerings. We deduce a way to obtain compatibilites with respect to composition of functors of left adjoints assuming that we have these compatibilites for right adjoints. In #30318, this shall be applied to the study of the compatibilities with respect to composition of the pullback functors for presheaves of modules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 214/4 Mathlib.lean,Mathlib/CategoryTheory/Adjunction/Basic.lean,Mathlib/CategoryTheory/Adjunction/CompositionIso.lean,Mathlib/CategoryTheory/Adjunction/Mates.lean 4 5 ['github-actions', 'joelriou'] robin-carlier
assignee:robin-carlier
5-73116
5 days ago
13-20338
13 days ago
13-20315
13 days
30598 jsm28
author:jsm28
feat(Analysis/SpecialFunctions/Trigonometric/Angle): equality from equality of twice angles Add lemmas that two angles less than `π / 2` are equal if and only if twice those angles are equal, along with a separate lemma ```lean lemma toReal_neg_eq_neg_toReal_iff {θ : Angle} : (-θ).toReal = -(θ.toReal) ↔ θ ≠ π := by ``` which isn't directly connected but turns out to be useful in the same application (dealing with angles in right-angled triangles that are less then `π / 2`, when you have two such triangles that are oppositely-oriented). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 33/0 Mathlib/Analysis/SpecialFunctions/Trigonometric/Angle.lean 1 1 ['github-actions'] nobody
5-72258
5 days ago
5-72328
5 days ago
5-72307
5 days
30602 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Walk): `mapLe` preservation lemmas feat(Combinatorics/SimpleGraph/Walk): specialize `map` preservation lemmas from for `mapLe` --- It's hard to use the existing `map` lemmas when dealing with `mapLe`, specifically the lemmas for `support`/`edges`/`edgeSet` contain a map in the `map` version but not in the `mapLe` version, since `mapLe` maps walks with `id`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 21/1 Mathlib/Combinatorics/SimpleGraph/Walk.lean 1 1 ['github-actions'] nobody
5-64119
5 days ago
5-64119
5 days ago
5-64180
5 days
29004 euprunin
author:euprunin
chore: change from `:= by rfl` to `:= rfl` For `@[simp]` lemmas this makes them usable by `dsimp`; others are stylistic cleanup (but they're now "`dsimp`-ready" if tagged later). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 138/242 Mathlib/Algebra/Algebra/NonUnitalHom.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/DirectSum/Ring.lean,Mathlib/Algebra/Group/AddChar.lean,Mathlib/Algebra/Group/Subgroup/Defs.lean,Mathlib/Algebra/GroupWithZero/ProdHom.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/ShortComplex/LeftHomology.lean,Mathlib/Algebra/Homology/Single.lean,Mathlib/Algebra/Lie/Basic.lean,Mathlib/Algebra/Lie/OfAssociative.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Order/Hom/MonoidWithZero.lean,Mathlib/Algebra/Order/Hom/Ring.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Derivation.lean,Mathlib/Algebra/Polynomial/Module/Basic.lean,Mathlib/Algebra/Ring/Hom/Defs.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/Algebra/Vertex/HVertexOperator.lean,Mathlib/Algebra/Vertex/VertexOperator.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/Analysis/Asymptotics/ExpGrowth.lean,Mathlib/Analysis/CStarAlgebra/GelfandDuality.lean,Mathlib/Analysis/Calculus/FDeriv/Prod.lean,Mathlib/Analysis/Complex/UpperHalfPlane/Basic.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/Normed/Affine/Isometry.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Analysis/Normed/Module/Span.lean,Mathlib/Analysis/SpecialFunctions/Complex/CircleAddChar.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/CategoryTheory/Closed/Monoidal.lean,Mathlib/CategoryTheory/Distributive/Monoidal.lean,Mathlib/CategoryTheory/Limits/Presheaf.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Cospan.lean,Mathlib/CategoryTheory/Monoidal/Comon_.lean,Mathlib/CategoryTheory/Monoidal/Mod_.lean,Mathlib/CategoryTheory/Yoneda.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean,Mathlib/Computability/AkraBazzi/AkraBazzi.lean,Mathlib/Computability/AkraBazzi/SumTransform.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/Data/Nat/Factorization/PrimePow.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/PFunctor/Multivariate/Basic.lean,Mathlib/Data/Real/Embedding.lean,Mathlib/Data/Rel.lean,Mathlib/Data/Seq/Basic.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Data/Set/Pairwise/Lattice.lean,Mathlib/Data/Subtype.lean,Mathlib/Geometry/Manifold/Bordism.lean,Mathlib/GroupTheory/Coxeter/Basic.lean,Mathlib/GroupTheory/GroupAction/Hom.lean,Mathlib/GroupTheory/SpecificGroups/Quaternion.lean,Mathlib/LinearAlgebra/AffineSpace/Simplex/Basic.lean,Mathlib/LinearAlgebra/Dual/Defs.lean,Mathlib/LinearAlgebra/Lagrange.lean,Mathlib/LinearAlgebra/Matrix/GeneralLinearGroup/Defs.lean,Mathlib/LinearAlgebra/Multilinear/TensorProduct.lean,Mathlib/LinearAlgebra/Projectivization/Action.lean,Mathlib/LinearAlgebra/RootSystem/Hom.lean,Mathlib/LinearAlgebra/RootSystem/Reduced.lean,Mathlib/LinearAlgebra/Span/Basic.lean,Mathlib/LinearAlgebra/TensorProduct/Pi.lean,Mathlib/MeasureTheory/MeasurableSpace/Embedding.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/NumberTheory/FLT/Polynomial.lean,Mathlib/NumberTheory/FactorisationProperties.lean,Mathlib/NumberTheory/Harmonic/ZetaAsymp.lean,Mathlib/NumberTheory/Padics/WithVal.lean,Mathlib/Order/BoundedOrder/Basic.lean,Mathlib/RepresentationTheory/Coinvariants.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/Functoriality.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/LowDegree.lean,Mathlib/RingTheory/AlgebraTower.lean,Mathlib/RingTheory/Bialgebra/Hom.lean,Mathlib/RingTheory/HahnSeries/Addition.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/SetTheory/Surreal/Basic.lean,Mathlib/SetTheory/ZFC/Class.lean,Mathlib/Tactic/Module.lean,Mathlib/Tactic/NormNum/PowMod.lean,Mathlib/Topology/Algebra/Algebra/Equiv.lean,Mathlib/Topology/Algebra/Module/WeakDual.lean,Mathlib/Topology/Category/Profinite/Nobeling/Basic.lean,Mathlib/Topology/Category/Profinite/Nobeling/ZeroLimit.lean,Mathlib/Topology/Category/TopCat/Opens.lean,Mathlib/Topology/ContinuousMap/Units.lean,Mathlib/Topology/LocallyFinsupp.lean,Mathlib/Topology/PartitionOfUnity.lean,Mathlib/Topology/Sets/Closeds.lean 95 22 ['eric-wieser', 'euprunin', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot'] TwoFX
assignee:TwoFX
5-50919
5 days ago
17-85560
17 days ago
27-71826
27 days
29430 RemyDegenne
author:RemyDegenne
refactor(Probability): change stopping times to take values in `WithTop` This PR changes stopping times to have type `Ω → WithTop ι` instead of `Ω → ι`. Previously, a stopping time for a filtration indexed by Nat had to have value in Nat. That's not representative of the way stopping times are used in probability. A typical stopping time is the first time at which we see a head in an infinite sequence of coin flips. That time could be infinite (although it is almost surely finite). We can't represent it with a `Ω → Nat` stopping time: if we choose an arbitrary value in Nat for the event that it is infinite, we destroy the stopping time property. We faced that issue in the `BorelCantelli` file, in which we avoided such a possibly infinite stopping time by introducing a sequence of bounded stopping times. We had to prove additional lemmas about them since we could not directly use the API for stopped processes. With the new type, that file is greatly simplified as the API is directly usable, and we can write the proof as we would on paper. The issue with the previous stopping time implementation was noted in [Ying and Degenne, A Formalization of Doob’s Martingale Convergence Theorems in mathlib, CPP 2023, https://dl.acm.org/doi/pdf/10.1145/3573105.3575675]. Other changes: - the sigma-algebra generated by a stopping time is now a sub-sigma algebra by definition - `measurableSet_eq_stopping_time` is generalized and the now useless `measurableSet_eq_stopping_time_of_countable` is removed - `hitting` is renamed to `hittingBtwn` - a new `hittingAfter` is introduced and used in the Borel-Cantelli proof. That proof is now much simpler since we can use a stopped process as intended instead of going around the limitations of the previous stopping time implementation. --- - [x] depends on: #29466 - [x] depends on: #30543 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 952/554 Mathlib/Probability/Martingale/Basic.lean,Mathlib/Probability/Martingale/BorelCantelli.lean,Mathlib/Probability/Martingale/OptionalSampling.lean,Mathlib/Probability/Martingale/OptionalStopping.lean,Mathlib/Probability/Martingale/Upcrossing.lean,Mathlib/Probability/Process/HittingTime.lean,Mathlib/Probability/Process/Stopping.lean 7 11 ['RemyDegenne', 'github-actions', 'kex-y', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
5-42182
5 days ago
5-43464
5 days ago
11-18465
11 days
29354 themathqueen
author:themathqueen
refactor(Algebra/Algebra/Equiv): allow for non-unital `AlgEquiv` This refactors `AlgEquiv` to allow for non-unital algebras. More specifically, we weaken the type class assumptions from: ```lean structure AlgEquiv (R A B : Type*) [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] ``` to ```lean structure AlgEquiv (R A B : Type*) [Add A] [Add B] [Mul A] [Mul B] [SMul R A] [SMul R B] ``` Instead of a `commutes'` field, we now have a `map_smul'` field. We also include a definition `AlgEquiv.ofCommutes` which takes in a `RingEquiv` and a `commutes'` field to match before and for convenience. `StarAlgEquiv` now extends `AlgEquiv`. We also generalize a few files to allow for non-unital. I suspect there are a few more things to generalize, but will leave this for later. Co-authored-by: Jireh Loreaux --- Revives #8686. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
573/498 Mathlib/Algebra/Algebra/Equiv.lean,Mathlib/Algebra/Algebra/Opposite.lean,Mathlib/Algebra/Algebra/Pi.lean,Mathlib/Algebra/Algebra/Prod.lean,Mathlib/Algebra/Algebra/Subalgebra/Basic.lean,Mathlib/Algebra/Algebra/Subalgebra/MulOpposite.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Algebra/TransferInstance.lean,Mathlib/Algebra/Category/AlgCat/Basic.lean,Mathlib/Algebra/Category/CommAlgCat/Basic.lean,Mathlib/Algebra/Category/CommAlgCat/FiniteType.lean,Mathlib/Algebra/Category/Ring/Constructions.lean,Mathlib/Algebra/DualQuaternion.lean,Mathlib/Algebra/MonoidAlgebra/Basic.lean,Mathlib/Algebra/MonoidAlgebra/ToDirectSum.lean,Mathlib/Algebra/MvPolynomial/Equiv.lean,Mathlib/Algebra/MvPolynomial/Rename.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Taylor.lean,Mathlib/Algebra/Quaternion.lean,Mathlib/Algebra/Star/Free.lean,Mathlib/Algebra/Star/StarAlgHom.lean,Mathlib/Analysis/CStarAlgebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/GelfandFormula.lean,Mathlib/Analysis/Normed/Algebra/Spectrum.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean,Mathlib/Analysis/Normed/Lp/LpEquiv.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Analysis/RCLike/Basic.lean,Mathlib/Data/Matrix/Basic.lean,Mathlib/Data/Matrix/Composition.lean,Mathlib/Data/Matrix/DualNumber.lean,Mathlib/FieldTheory/Fixed.lean,Mathlib/FieldTheory/Galois/Basic.lean,Mathlib/FieldTheory/Galois/Notation.lean,Mathlib/FieldTheory/Galois/Profinite.lean,Mathlib/FieldTheory/IntermediateField/Adjoin/Basic.lean,Mathlib/FieldTheory/IntermediateField/Basic.lean,Mathlib/FieldTheory/Normal/Basic.lean,Mathlib/FieldTheory/PrimitiveElement.lean,Mathlib/FieldTheory/RatFunc/Basic.lean,Mathlib/FieldTheory/Separable.lean,Mathlib/LinearAlgebra/CliffordAlgebra/BaseChange.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Conjugation.lean,Mathlib/LinearAlgebra/Complex/Module.lean,Mathlib/LinearAlgebra/Matrix/Basis.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/Coeff.lean,Mathlib/LinearAlgebra/Matrix/Charpoly/LinearMap.lean,Mathlib/LinearAlgebra/Matrix/Reindex.lean,Mathlib/LinearAlgebra/Matrix/ToLin.lean,Mathlib/LinearAlgebra/Matrix/Unique.lean,Mathlib/LinearAlgebra/TensorProduct/Graded/Internal.lean,Mathlib/LinearAlgebra/TensorProduct/Subalgebra.lean,Mathlib/NumberTheory/NumberField/Discriminant/Defs.lean,Mathlib/RingTheory/AdjoinRoot.lean,Mathlib/RingTheory/Bialgebra/Equiv.lean,Mathlib/RingTheory/DedekindDomain/Different.lean,Mathlib/RingTheory/Etale/Field.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Flat/Equalizer.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/RingTheory/Frobenius.lean,Mathlib/RingTheory/GradedAlgebra/Basic.lean,Mathlib/RingTheory/HahnSeries/PowerSeries.lean,Mathlib/RingTheory/Ideal/Operations.lean,Mathlib/RingTheory/Ideal/Over.lean,Mathlib/RingTheory/Ideal/Quotient/Operations.lean,Mathlib/RingTheory/IntegralClosure/IntegrallyClosed.lean,Mathlib/RingTheory/Invariant/Basic.lean,Mathlib/RingTheory/Invariant/Profinite.lean,Mathlib/RingTheory/IsTensorProduct.lean,Mathlib/RingTheory/Jacobson/Artinian.lean,Mathlib/RingTheory/Jacobson/Ring.lean,Mathlib/RingTheory/Kaehler/Basic.lean,Mathlib/RingTheory/LaurentSeries.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/MatrixAlgebra.lean,Mathlib/RingTheory/MvPolynomial/Localization.lean,Mathlib/RingTheory/Norm/Basic.lean,Mathlib/RingTheory/Polynomial/Quotient.lean,Mathlib/RingTheory/PolynomialAlgebra.lean,Mathlib/RingTheory/PowerSeries/WeierstrassPreparation.lean,Mathlib/RingTheory/RingHom/FiniteType.lean,Mathlib/RingTheory/SimpleModule/Isotypic.lean,Mathlib/RingTheory/Smooth/Basic.lean,Mathlib/RingTheory/Smooth/Pi.lean,Mathlib/RingTheory/Spectrum/Prime/Polynomial.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/MvPolynomial.lean,Mathlib/RingTheory/TensorProduct/Pi.lean,Mathlib/RingTheory/TensorProduct/Quotient.lean,Mathlib/RingTheory/Trace/Basic.lean,Mathlib/RingTheory/Unramified/Field.lean,Mathlib/Topology/Algebra/Algebra/Equiv.lean,Mathlib/Topology/Algebra/Module/FiniteDimension.lean,Mathlib/Topology/LocallyConstant/Algebra.lean,MathlibTest/GalNotation.lean 98 27 ['fpvandoorn', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'mathlib4-merge-conflict-bot', 'themathqueen'] joelriou
assignee:joelriou
5-33781
5 days ago
5-41459
5 days ago
38-3906
38 days
30609 FlAmmmmING
author:FlAmmmmING
feat(Combinatorics/Enumerative/Catalan.lean): Add definition of large and small Schroder. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 77/1 Mathlib/Combinatorics/Enumerative/Catalan.lean 1 1 ['github-actions'] nobody
5-25910
5 days ago
5-27317
5 days ago
5-27361
5 days
28296 strihanje01
author:strihanje01
feat(Combinatorics/Additive/VerySmallDoubling): Hamidoune's Freiman-Kneser theorem for nonabelian groups Prove the noncommutative Freiman-Kneser theorem for doubling less than 2 - ε --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge new-contributor t-combinatorics 289/3 Mathlib/Combinatorics/Additive/VerySmallDoubling.lean 1 21 ['YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'strihanje01'] YaelDillies
assignee:YaelDillies
5-21952
5 days ago
5-21952
5 days ago
56-25102
56 days
25758 YaelDillies
author:YaelDillies
chore: shortcut instance `CompleteLattice α → PartialOrder α` This avoids using the path `CompleteLattice α → CompletePartialOrder α → PartialOrder α` that goes through `Order.CompletePartialOrder` and makes it appear used to our automation, such as `shake` or `#min_imports`. This is a followup to #25358. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 7/0 Mathlib/Order/CompleteLattice/Defs.lean 1 10 ['Ruben-VandeVelde', 'Vierkantor', 'eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] Vierkantor
assignee:Vierkantor
5-18179
5 days ago
5-18179
5 days ago
131-45050
131 days
30608 grunweg
author:grunweg
feat: another lemma about derivatives of parametric integrals On the path towards proving that integrating smooth functions is smooth. From the sphere-eversion project; I am just upstreaming this. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 125/0 Mathlib/Analysis/Calculus/ParametricIntegral.lean 1 3 ['Ruben-VandeVelde', 'github-actions'] nobody
5-16500
5 days ago
5-18091
5 days ago
5-18075
5 days
28833 yury-harmonic
author:yury-harmonic
feat(MvPolynomial/Expand): more lemmas --- - [x] depends on: #28832 - [x] depends on: #28830 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 88/18 Mathlib/Algebra/MvPolynomial/Eval.lean,Mathlib/Algebra/MvPolynomial/Expand.lean 2 2 ['github-actions', 'mathlib4-dependent-issues-bot'] dwrensha
assignee:dwrensha
5-3113
5 days ago
58-3466
1 month ago
58-5213
58 days
30137 vlad902
author:vlad902
feat(SimpleGraph): characterise when `SimpleGraph V` is a subsingleton/nontrivial Helper lemmas I found useful in mutliple PRs for dispatching trivial cases. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge t-combinatorics 14/0 Mathlib/Combinatorics/SimpleGraph/Basic.lean 1 5 ['YaelDillies', 'github-actions', 'vlad902'] YaelDillies
assignee:YaelDillies
5-2069
5 days ago
5-2069
5 days ago
19-3859
19 days
30003 vlad902
author:vlad902
feat(Order): helper lemmas for `IsChain`/`IsAntichain` These were useful in formalizing Dilworth's theorem. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 23/2 Mathlib/Order/Antichain.lean,Mathlib/Order/Preorder/Chain.lean 2 23 ['YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'plp127', 'vlad902'] YaelDillies
assignee:YaelDillies
4-86394
4 days ago
7-11422
7 days ago
24-64812
24 days
29956 SnirBroshi
author:SnirBroshi
feat(Algebra/Polynomial): small and useful lemmas feat(Algebra/Polynomial): added many small and useful lemmas about polynomials --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import new-contributor t-algebra
label:t-algebra$
294/90 Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/Eval/Coeff.lean,Mathlib/Algebra/Polynomial/Eval/Defs.lean,Mathlib/Algebra/Polynomial/Eval/Degree.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Polynomial/Splits.lean,Mathlib/FieldTheory/IsAlgClosed/Basic.lean,Mathlib/FieldTheory/IsSepClosed.lean,Mathlib/FieldTheory/NormalizedTrace.lean,Mathlib/RingTheory/SimpleRing/Basic.lean,Mathlib/RingTheory/Trace/Basic.lean 16 64 ['SnirBroshi', 'erdOne', 'github-actions', 'kckennylau', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] ocfnash
assignee:ocfnash
4-73122
4 days ago
12-69958
12 days ago
26-44887
26 days
30363 smmercuri
author:smmercuri
feat: `PadicInt` is isomorphic to the integers of the uniform space completion `(Rat.padicValuation p).Completion` - Uniform isomorphism between `𝒪[(Rat.padicValuation p).Completion]` and `ℤ_[p]` - A homeomorphism `e : X ≃ Y` gives a closed set `{ x : X | p x ↔ q (e x) }` for clopen subsets given by `p` and `q` - Move `Padic.isUnit_den` to an earlier file to avoid having to import `Padics.RingHoms` unnecessarily --- - [x] depends on: #30361 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 67/21 Mathlib/NumberTheory/Padics/PadicIntegers.lean,Mathlib/NumberTheory/Padics/RingHoms.lean,Mathlib/NumberTheory/Padics/WithVal.lean,Mathlib/Topology/Homeomorph/Defs.lean 4 2 ['github-actions', 'mathlib4-dependent-issues-bot'] dwrensha
assignee:dwrensha
4-73121
4 days ago
12-16867
12 days ago
12-19401
12 days
30378 mans0954
author:mans0954
refactor(Order/Hom/Lattice): Use default `initialize_simps_projections` configuration for `LatticeHom`. Use default `initialize_simps_projections` configuration for `LatticeHom`. I'm not sure what was originally intended by the TODO, but this appears to work. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 4/7 Mathlib/Order/Hom/Lattice.lean,Mathlib/Order/Hom/WithTopBot.lean 2 1 ['github-actions'] bryangingechen
assignee:bryangingechen
4-73119
4 days ago
12-17125
12 days ago
12-17160
12 days
30382 joelriou
author:joelriou
feat(CategoryTheory): Guitart exact squares and Kan extensions Given a Guitart exact square `w : T ⋙ R ⟶ L ⋙ B`, we show that pointwise left Kan extensions along `R` give, by composition, pointwise left Kan extensions along `L`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 161/12 Mathlib.lean,Mathlib/CategoryTheory/Functor/KanExtension/Pointwise.lean,Mathlib/CategoryTheory/GuitartExact/KanExtension.lean,Mathlib/CategoryTheory/Limits/Final.lean 4 1 ['github-actions'] adamtopaz
assignee:adamtopaz
4-73118
4 days ago
12-13687
12 days ago
12-13664
12 days
30626 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Connectivity/Connected): {`Subsingleton`, `Unique`, `Nonempty`} instances for `ConnectedComponent` feat(Combinatorics/SimpleGraph/Connectivity/Connected): add {`Subsingleton`, `Unique`, `Nonempty`} instances for `ConnectedComponent` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 4/4 Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean 1 1 ['github-actions'] nobody
4-73052
4 days ago
4-73064
4 days ago
4-73109
4 days
30390 joelriou
author:joelriou
feat(CategoryTheory/GuitartExact): exact square involving Over categories Given `F : C ⥤ D` and `X : C`, we show that if the binary product of `X` and `Y` exists for any `Y`, and `F` commutes to it, then there is a Guitart exact square with `Over.post F : Over X ⥤ Over (F.obj X)` on the top, `F` on the bottom, and `Over.forget` on the left and right sides. (In combination with #30382 and #30386, this can be used to show results about the functoriality of categories of (pre)sheaves.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 75/0 Mathlib.lean,Mathlib/CategoryTheory/GuitartExact/Over.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/BinaryProducts.lean 3 1 ['github-actions'] dagurtomas
assignee:dagurtomas
4-51314
4 days ago
11-82831
11 days ago
11-82809
11 days
29824 themathqueen
author:themathqueen
feat(Algebra/Order/Star): add `StarOrderedRing (Π i, A i)` --- - [x] depends on: #29823 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
38/0 Mathlib.lean,Mathlib/Algebra/Order/Star/Pi.lean 2 4 ['github-actions', 'mathlib4-dependent-issues-bot', 'themathqueen'] joneugster
assignee:joneugster
4-38968
4 days ago
12-38506
12 days ago
12-38905
12 days
28819 ScottCarnahan
author:ScottCarnahan
feat (Data/Finsupp): define convolution smul for finsupps on formal functions This is a generalization of the multiplication action of the ring of Laurent polynomials on the space of formal power series with unbounded pole terms. --- - [x] depends on: #28876 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 86/0 Mathlib.lean,Mathlib/Data/Finsupp/PointwiseSMul.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] tb65536
assignee:tb65536
4-38598
4 days ago
12-82957
12 days ago
14-4808
14 days
28604 alreadydone
author:alreadydone
chore(Algebra/Ring/Defs): add two classes (minimally invasive version) Add the missing `NonAssocComm(Semi)ring` classes and add some missing instances between existing classes. Contrary to #28532, the approach here doesn't add any new `extends`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
59/17 Mathlib/Algebra/Colimit/DirectLimit.lean,Mathlib/Algebra/Ring/Defs.lean,Mathlib/LinearAlgebra/CliffordAlgebra/Basic.lean 3 21 ['alreadydone', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
4-19986
4 days ago
19-77328
19 days ago
20-49945
20 days
30037 linesthatinterlace
author:linesthatinterlace
feat: Fin.find update We currently define `Fin.find` in a way that is redundant (in the sense that it is just equivalent to `Fin.find?` in batteries). This PR replaces it with a definition that works closer to `Nat.find`, and links the new definition of `Fin.find` to `Fin.find?` in the natural way. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 159/104 Mathlib/Data/Fin/Tuple/Basic.lean 1 7 ['github-actions', 'linesthatinterlace', 'llllvvuu', 'mathlib4-merge-conflict-bot'] adamtopaz
assignee:adamtopaz
4-17133
4 days ago
22-13974
22 days ago
23-69879
23 days
29395 YaelDillies
author:YaelDillies
refactor: make `PosMulMono` and alike custom classes In the current setup, users get confusing non-beta-reduced goals involving a subtype when trying to provide an instance of `PosMulMono`. This PR changes it to be a custom structure with the expected fields. This follows `PosSMulMono` and alike. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order t-algebra
label:t-algebra$
197/268 Counterexamples/CanonicallyOrderedCommSemiringTwoMul.lean,Mathlib/Algebra/Algebra/Operations.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Basic.lean,Mathlib/Algebra/Order/GroupWithZero/Unbundled/Defs.lean,Mathlib/Algebra/Order/GroupWithZero/WithZero.lean,Mathlib/Algebra/Order/Pi.lean,Mathlib/Algebra/Order/Ring/Canonical.lean,Mathlib/Algebra/Order/Ring/Defs.lean,Mathlib/Algebra/Order/Ring/InjSurj.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Algebra/Order/Ring/Opposite.lean,Mathlib/Algebra/Order/Ring/Prod.lean,Mathlib/Algebra/Order/Ring/Star.lean,Mathlib/Algebra/Order/Ring/WithTop.lean,Mathlib/Data/NNRat/Defs.lean,Mathlib/Data/Num/Lemmas.lean,Mathlib/Order/Filter/FilterProduct.lean,Mathlib/Order/Filter/Ring.lean,Mathlib/SetTheory/Ordinal/Arithmetic.lean,Mathlib/SetTheory/Ordinal/NaturalOps.lean,MathlibTest/GRewrite.lean 22 16 ['Vierkantor', 'YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot'] Vierkantor
assignee:Vierkantor
4-15148
4 days ago
4-15176
4 days ago
36-10698
36 days
30633 joelriou
author:joelriou
feat(SetTheory): more API for HasCardinalLT We add stability lemmas for `HasCardinalLT X κ` for sigma types, binary products, etc when `κ` is regular (or at least infinite). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory 103/0 Mathlib/SetTheory/Cardinal/HasCardinalLT.lean,Mathlib/SetTheory/Cardinal/Regular.lean 2 1 ['github-actions'] nobody
4-6744
4 days ago
4-31057
4 days ago
4-31035
4 days
30518 euprunin
author:euprunin
chore(Cache): remove "No files to download" message. make `lake exe cache get` less verbose Fixes #27038. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge 28/29 Cache/IO.lean,Cache/Requests.lean 2 11 ['YaelDillies', 'euprunin', 'github-actions'] nobody
4-1524
4 days ago
5-14139
5 days ago
8-8209
8 days
28141 YaelDillies
author:YaelDillies
chore: deprecate `BialgHom.coe_toLinearMap` `BialgHom.toLinearMap` is a fake projection. From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory toric 5/11 Mathlib/RingTheory/Bialgebra/Hom.lean 1 8 ['YaelDillies', 'eric-wieser', 'github-actions'] alreadydone
assignee:alreadydone
3-84217
3 days ago
3-84217
3 days ago
73-50231
73 days
30559 SnirBroshi
author:SnirBroshi
feat(Data/Sym/Sym2): add `Sym2.diagSet` feat(Data/Sym/Sym2): add `Sym2.diagSet`, the set of elements on the diagonal --- This should help state theorems in simple graphs more easily (e.g. see `SimpleGraph.edgeSet_fromEdgeSet`, `SimpleGraph.edgeSet_sdiff_sdiff_isDiag`, `SimpleGraph.edgeSet_subset_setOf_not_isDiag`) and more importantly work with such statements. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 39/6 Mathlib/Data/Sym/Sym2.lean 1 1 ['github-actions'] nobody
3-75719
3 days ago
7-1581
7 days ago
7-1620
7 days
27606 CBirkbeck
author:CBirkbeck
Eisenstein q exp identity --- - [x] depends on: #26016 - [x] depends on: #27212 - [x] depends on: #27837 - [x] depends on: #27839 - [x] depends on: #27840 - [x] depends on: #28690 - [x] depends on: #27838 - [x] depends on: #27841 - [x] depends on: #27844 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import 124/6 Mathlib/NumberTheory/ModularForms/EisensteinSeries/QExpansion.lean 1 11 ['MichaelStollBayreuth', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] dagurtomas
assignee:dagurtomas
3-73147
3 days ago
11-33740
11 days ago
12-12403
12 days
27953 CoolRmal
author:CoolRmal
feat(ProbabilityTheory): Conditional Jensen's Inequality This PR adds conditional Jensen's inequality. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 526/10 Mathlib.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Separation.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Basic.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondJensen.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean 5 3 ['github-actions', 'mathlib4-merge-conflict-bot'] sgouezel
assignee:sgouezel
3-73146
3 days ago
11-66128
11 days ago
20-16162
20 days
30396 urkud
author:urkud
feat(DivergenceTheorem): add 2 versions --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 52/0 Mathlib/MeasureTheory/Integral/DivergenceTheorem.lean 1 1 ['github-actions'] kex-y
assignee:kex-y
3-73139
3 days ago
11-44958
11 days ago
11-44989
11 days
30410 ADedecker
author:ADedecker
feat: `isProperMap_fst_of_compactSpace`, `IsProperMap.restrictPreimage` --- This also moves `isClosedMap_snd_of_compactSpace` to prove it via properness, but I'm happy to revert this change if needed. - [x] depends on: #30406 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 45/18 Mathlib/Topology/Compactness/Compact.lean,Mathlib/Topology/IsClosedRestrict.lean,Mathlib/Topology/LocalAtTarget.lean,Mathlib/Topology/Maps/Proper/Basic.lean 4 2 ['github-actions', 'mathlib4-dependent-issues-bot'] jcommelin
assignee:jcommelin
3-73136
3 days ago
11-3475
11 days ago
11-4279
11 days
30345 vlad902
author:vlad902
feat(Order): replace the implementation of `Set.chainHeight` `Set.chainHeight` is unused in Mathlib--it was a previous attempt to formalize heights for preorders before `Order.height` came into use. The current implementation `Set.chainHeight` is previously defined for Sets that had an `LT` order but it's behavior was unexpected for relations that were not strict orders, e.g. singleton sets with a reflexive relation would have infinite height. LE is such a relation so this implementation is very limited in what it could be used for. I replace it with an implementation that: - Is defined for arbitrary relations instead of using `[LT]`. - Uses `IsChain` instead of `List.IsChain` for defining chains. This is equivalent for transitive relations, but behaves differently for non- transitive relations--it requires that all elements in the set are comparable instead of just comparability between neighboring elements in the List. This makes the definition better behaved for e.g. reflexive relations and better matches the definition of chain height typically used in the literature. The API has been slimmed down but what remains largely matches the previous API. Discussed on [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Definitions.20for.20chain.20height.2Fpartitions/near/542823244) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-order 128/292 Mathlib/Order/Height.lean 1 2 ['github-actions', 'mathlib4-merge-conflict-bot'] Vierkantor
assignee:Vierkantor
3-53891
3 days ago
3-53916
3 days ago
12-33331
12 days
30136 vlad902
author:vlad902
feat(SimpleGraph): lemmas characterizing graphs that are not complete/empty Two helper lemmas that I've found useful in several other PRs that characterize graphs that are neither complete nor empty. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge t-combinatorics 8/0 Mathlib/Combinatorics/SimpleGraph/Basic.lean 1 11 ['YaelDillies', 'github-actions', 'vlad902'] YaelDillies
assignee:YaelDillies
3-40112
3 days ago
3-40112
3 days ago
16-25219
16 days
30638 alreadydone
author:alreadydone
feat(Algebra): `SemimoduleCat`, category of modules over semiring + Introduce SemimoduleCat, the category of semimodules (mathlib's Module) over a Semiring. The new file ModuleCat/Semi.lean is copied from ModuleCat/Basic.lean. The additive/linear instances would require #28826. + Construct the symmetric monoidal structure on SemimoduleCat, and transport it to the same structure on ModuleCat (in a way preserving pre-existing defeqs) using the equivalence `ModuleCat.equivalenceSemimoduleCat` between the categories. Just a few proofs in the Representation library need to be fixed (in a straightforward way). Public API for ModuleCat is duplicated to SemimoduleCat. + Rename `symmetricCategory/monoidalLinear/exactPairingOf(Fully)Faithful` to `SymmetricCategory.ofFaithful` etc. following [CategoryTheory.BraidedCategory.ofFaithful](https://leanprover-community.github.io/mathlib4_docs/Mathlib/CategoryTheory/Monoidal/Braided/Basic.html#CategoryTheory.BraidedCategory.ofFaithful). + Remove some `noncomputable section`s and make some noncomputable defs computable. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-category-theory
label:t-algebra$
789/102 Mathlib.lean,Mathlib/Algebra/Category/AlgCat/Symmetric.lean,Mathlib/Algebra/Category/ModuleCat/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Basic.lean,Mathlib/Algebra/Category/ModuleCat/Monoidal/Symmetric.lean,Mathlib/Algebra/Category/ModuleCat/Semi.lean,Mathlib/CategoryTheory/Action/Monoidal.lean,Mathlib/CategoryTheory/Monoidal/Braided/Basic.lean,Mathlib/CategoryTheory/Monoidal/Braided/Transport.lean,Mathlib/CategoryTheory/Monoidal/Linear.lean,Mathlib/CategoryTheory/Monoidal/Rigid/OfEquivalence.lean,Mathlib/CategoryTheory/Monoidal/Subcategory.lean,Mathlib/CategoryTheory/Monoidal/Transport.lean,Mathlib/LinearAlgebra/QuadraticForm/QuadraticModuleCat/Symmetric.lean,Mathlib/RepresentationTheory/Coinvariants.lean,Mathlib/RepresentationTheory/Homological/GroupHomology/Basic.lean,Mathlib/RepresentationTheory/Induced.lean,Mathlib/RepresentationTheory/Rep.lean 18 1 ['github-actions'] nobody
3-37774
3 days ago
3-74118
3 days ago
3-74103
3 days
29980 mans0954
author:mans0954
refactor(RingTheory/Polynomial/Resultant/Quadratic): Re-implement QuadraticDiscriminant for R[X] Re-implement `Algebra/QuadraticDiscriminant` for polynomials. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/discriminants.20of.20low.20degree.20polynomials/with/538010519) --- - [ ] depends on: #29981 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 208/0 Mathlib.lean,Mathlib/RingTheory/Polynomial/Resultant/Quadratic.lean 2 3 ['JovanGerb', 'github-actions', 'mathlib4-dependent-issues-bot'] JovanGerb
assignee:JovanGerb
3-34865
3 days ago
13-6406
13 days ago
13-10289
13 days
30206 SnirBroshi
author:SnirBroshi
feat(Combinators/SimpleGraph/Hamiltonian): `p.support.length = Fintype.card α` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge new-contributor t-combinatorics easy 5/0 Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean 1 4 ['SnirBroshi', 'YaelDillies', 'github-actions'] YaelDillies
assignee:YaelDillies
3-28689
3 days ago
3-29913
3 days ago
17-10627
17 days
30650 JovanGerb
author:JovanGerb
perf(reassoc, to_app, elementwise): don't pass the same proof to the kernel again In `reassoc`, `to_app`, `elementwise`, the proof of the original lemma was being used to prove the modified lemma. This is silly, because the modified lemma can be proved using the original lemma directly. Hence, this PR modifies `addRelatedDecl` to include this optimization. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 12/12 Mathlib/Tactic/CategoryTheory/Elementwise.lean,Mathlib/Tactic/CategoryTheory/Reassoc.lean,Mathlib/Tactic/CategoryTheory/ToApp.lean,Mathlib/Util/AddRelatedDecl.lean 4 4 ['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] nobody
3-15458
3 days ago
3-15458
3 days ago
3-19191
3 days
28375 euprunin
author:euprunin
chore(Analysis/SpecialFunctions/Pow): golf entire `rpow_lt_rpow_of_exponent_neg` and `rpow_le_rpow_of_exponent_nonpos` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis easy 4/14 Mathlib/Analysis/SpecialFunctions/Pow/Real.lean 1 4 ['JonBannon', 'Ruben-VandeVelde', 'euprunin', 'github-actions', 'grunweg'] urkud
assignee:urkud
3-13041
3 days ago
3-13041
3 days ago
40-60886
40 days
30515 euprunin
author:euprunin
chore(Data/Nat): golf `findGreatest_eq_iff` using `grind` ---
Show trace profiling of findGreatest_eq_iff: 21 ms before, 39 ms after ### Trace profiling of `findGreatest_eq_iff` before PR 30515 ```diff diff --git a/Mathlib/Data/Nat/Find.lean b/Mathlib/Data/Nat/Find.lean index 4ac5779f75..8e95d6e030 100644 --- a/Mathlib/Data/Nat/Find.lean +++ b/Mathlib/Data/Nat/Find.lean @@ -176,6 +176,7 @@ lemma findGreatest_succ (n : ℕ) : lemma findGreatest_of_not (h : ¬ P (n + 1)) : findGreatest P (n + 1) = findGreatest P n := by simp [Nat.findGreatest, h] +set_option trace.profiler true in lemma findGreatest_eq_iff : Nat.findGreatest P k = m ↔ m ≤ k ∧ (m ≠ 0 → P m) ∧ ∀ ⦃n⦄, m < n → n ≤ k → ¬P n := by induction k generalizing m with ``` ``` ℹ [103/103] Built Mathlib.Data.Nat.Find (710ms) info: Mathlib/Data/Nat/Find.lean:180:0: [Elab.async] [0.021505] elaborating proof of Nat.findGreatest_eq_iff [Elab.definition.value] [0.020637] Nat.findGreatest_eq_iff [Elab.step] [0.020109] induction k generalizing m with | zero => rw [eq_comm, Iff.comm] simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp] rintro rfl exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩ | succ k ihk => by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] constructor · rintro ⟨hle, hP, hm⟩ refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩ rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk] · rintro ⟨hle, hP, hm⟩ refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩ rintro rfl exact hk (hP k.succ_ne_zero) [Elab.step] [0.020104] induction k generalizing m with | zero => rw [eq_comm, Iff.comm] simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp] rintro rfl exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩ | succ k ihk => by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] constructor · rintro ⟨hle, hP, hm⟩ refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩ rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk] · rintro ⟨hle, hP, hm⟩ refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩ rintro rfl exact hk (hP k.succ_ne_zero) [Elab.step] [0.020100] induction k generalizing m with | zero => rw [eq_comm, Iff.comm] simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp] rintro rfl exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩ | succ k ihk => by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] constructor · rintro ⟨hle, hP, hm⟩ refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩ rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk] · rintro ⟨hle, hP, hm⟩ refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩ rintro rfl exact hk (hP k.succ_ne_zero) [Elab.step] [0.014891] by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] constructor · rintro ⟨hle, hP, hm⟩ refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩ rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk] · rintro ⟨hle, hP, hm⟩ refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩ rintro rfl exact hk (hP k.succ_ne_zero) [Elab.step] [0.014884] by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] constructor · rintro ⟨hle, hP, hm⟩ refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩ rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk] · rintro ⟨hle, hP, hm⟩ refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩ rintro rfl exact hk (hP k.succ_ne_zero) Build completed successfully (103 jobs). ``` ### Trace profiling of `findGreatest_eq_iff` after PR 30515 ```diff diff --git a/Mathlib/Data/Nat/Find.lean b/Mathlib/Data/Nat/Find.lean index 4ac5779f75..091200bd46 100644 --- a/Mathlib/Data/Nat/Find.lean +++ b/Mathlib/Data/Nat/Find.lean @@ -176,6 +176,7 @@ lemma findGreatest_succ (n : ℕ) : lemma findGreatest_of_not (h : ¬ P (n + 1)) : findGreatest P (n + 1) = findGreatest P n := by simp [Nat.findGreatest, h] +set_option trace.profiler true in lemma findGreatest_eq_iff : Nat.findGreatest P k = m ↔ m ≤ k ∧ (m ≠ 0 → P m) ∧ ∀ ⦃n⦄, m < n → n ≤ k → ¬P n := by induction k generalizing m with @@ -194,16 +195,7 @@ lemma findGreatest_eq_iff : rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] - constructor - · rintro ⟨hle, hP, hm⟩ - refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩ - rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl - exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk] - · rintro ⟨hle, hP, hm⟩ - refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, - fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩ - rintro rfl - exact hk (hP k.succ_ne_zero) + grind lemma findGreatest_eq_zero_iff : Nat.findGreatest P k = 0 ↔ ∀ ⦃n⦄, 0 < n → n ≤ k → ¬P n := by simp [findGreatest_eq_iff] ``` ``` ℹ [103/103] Built Mathlib.Data.Nat.Find (704ms) info: Mathlib/Data/Nat/Find.lean:180:0: [Elab.async] [0.040019] elaborating proof of Nat.findGreatest_eq_iff [Elab.definition.value] [0.039235] Nat.findGreatest_eq_iff [Elab.step] [0.038893] induction k generalizing m with | zero => rw [eq_comm, Iff.comm] simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp] rintro rfl exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩ | succ k ihk => by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.038886] induction k generalizing m with | zero => rw [eq_comm, Iff.comm] simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp] rintro rfl exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩ | succ k ihk => by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.038881] induction k generalizing m with | zero => rw [eq_comm, Iff.comm] simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp] rintro rfl exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩ | succ k ihk => by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.033287] by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.033279] by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.022776] · rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.022745] rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.022740] rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.021688] grind Build completed successfully (103 jobs). ```
--- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/)
t-data easy 1/10 Mathlib/Data/Nat/Find.lean 1 1 ['github-actions', 'vihdzp'] nobody
3-12988
3 days ago
3-12988
3 days ago
8-13439
8 days
30520 euprunin
author:euprunin
chore: golf `nondegenerate_of_det_ne_zero`, `num_zero` and `sum_to_range` using `simp_all` --- Trace profiling -- `nondegenerate_of_det_ne_zero`: 196 ms before, 184 ms after 🎉 Trace profiling -- `eq_zero_of_num_eq_zero`: <10 ms before, <10 ms after 🎉 Trace profiling -- `sum_to_range`: 39 ms before, 16 ms after 🎉 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy 4/17 Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean,Mathlib/RingTheory/Localization/NumDen.lean,Mathlib/Topology/Category/Profinite/Nobeling/Successor.lean 3 9 ['euprunin', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] nobody
3-12966
3 days ago
3-12966
3 days ago
7-51215
7 days
30436 wwylele
author:wwylele
feat(Topology/InfiniteSum): tprod_one_{add/sub}_ordered This extends the existing `Finset.prod_one_sub_ordered` to infinite sum/product, and also adds the more natural `add` version. Together with some previous PRs about infinite sum/prod and powerseries, this is part of my effort of upstreaming useful stuff from https://github.com/wwylele/PentagonalNumberTheorem. It starts getting into niche lemma, so suggestions such that not wanting this in mathlib, or it should be stated in a different form, are all welcomed. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 44/0 Mathlib/Algebra/BigOperators/Ring/Finset.lean,Mathlib/Topology/Algebra/InfiniteSum/Ring.lean 2 1 ['github-actions'] nobody
3-11767
3 days ago
3-11767
3 days ago
10-31491
10 days
30599 wwylele
author:wwylele
feat(RingTheory): geometric series of (Mv)PowerSeries Also abstracted the common part for both PowerSeries and normed rings into `Summable.tsum_pow_mul_one_sub` / `Summable.one_sub_mul_tsum_pow`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 111/15 Mathlib/Analysis/SpecificLimits/Normed.lean,Mathlib/RingTheory/MvPowerSeries/Order.lean,Mathlib/RingTheory/MvPowerSeries/PiTopology.lean,Mathlib/RingTheory/PowerSeries/Order.lean,Mathlib/RingTheory/PowerSeries/PiTopology.lean,Mathlib/Topology/Algebra/InfiniteSum/Ring.lean 6 1 ['github-actions'] nobody
3-11050
3 days ago
3-11050
3 days ago
5-72134
5 days
30567 wwylele
author:wwylele
feat(Combinatorics): generating function for partitions This is the start of a series of PR aiming to prove two theorems related to partition: - [Glaisher's theorem](https://en.wikipedia.org/wiki/Glaisher%27s_theorem), which is a generalization of the existing [Euler's Partition theorem](https://github.com/leanprover-community/mathlib4/blob/master/Archive/Wiedijk100Theorems/Partition.lean). The proof will use the infinite generating function, upgrading the current proof that uses finite ones, and resolving this [TODO](https://github.com/leanprover-community/mathlib4/blob/master/Archive/Wiedijk100Theorems/Partition.lean#L66) - [Pentagonal number theorem](https://en.wikipedia.org/wiki/Pentagonal_number_theorem) and the recurrence relation on the partition function. I created a new file `Mathlib/Combinatorics/Enumerative/Partition/GenFun.lean` to avoid importing PowerSeries stuff directly into the definition file, and along the way I moved the existing `Mathlib/Combinatorics/Enumerative/Partition.lean` to `Mathlib/Combinatorics/Enumerative/Partition/Basic.lean` . Not sure why github didn't recognize this as a file move, but there is no diff in that file and the total diff is much smaller --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 426/181 Archive/Wiedijk100Theorems/Partition.lean,Mathlib.lean,Mathlib/Algebra/Order/Antidiag/Finsupp.lean,Mathlib/Combinatorics/Enumerative/Partition.lean,Mathlib/Combinatorics/Enumerative/Partition/Basic.lean,Mathlib/Combinatorics/Enumerative/Partition/GenFun.lean,Mathlib/GroupTheory/Perm/Cycle/Type.lean,Mathlib/RingTheory/MvPolynomial/Symmetric/Defs.lean 8 1 ['github-actions'] nobody
3-10059
3 days ago
3-11759
3 days ago
6-71250
6 days
30232 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Connectivity/Subgraph): add `ConnectedComponent.toSubgraph` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics easy 32/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 2 2 ['SnirBroshi', 'github-actions'] nobody
3-8764
3 days ago
16-64809
16 days ago
16-64848
16 days
30637 strihanje01
author:strihanje01
feat(Combinatorics/SetFamily/Lindstrom): Lindstrom's theorem for subfamilies with equal unions add Lindstrom's theorem and its strengthening for equal intersections --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 210/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/Lindstrom.lean 2 1 ['github-actions'] nobody
3-6653
3 days ago
4-13983
4 days ago
4-14029
4 days
30655 joelriou
author:joelriou
feat(CategoryTheory/Final): improve assumptions for `final_fst` We show that the projection `C × D ⥤ C` is a final (or initial) functor when `D` is connected. (Before this PR, it was proven under the stronger assumption that `D` was (co)filtered.) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 133/16 Mathlib.lean,Mathlib/CategoryTheory/Discrete/StructuredArrow.lean,Mathlib/CategoryTheory/Filtered/Final.lean,Mathlib/CategoryTheory/Limits/Final.lean,Mathlib/CategoryTheory/Limits/Final/Connected.lean 5 1 ['github-actions'] nobody
3-6511
3 days ago
3-6633
3 days ago
3-6610
3 days
30634 joelriou
author:joelriou
feat(CategoryTheory): κ-filtered categories are stable under products Binary products and general products of `κ`-filtered categories are `κ`-filtered. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 27/0 Mathlib/CategoryTheory/Presentable/IsCardinalFiltered.lean 1 1 ['github-actions'] nobody
3-6376
3 days ago
3-6376
3 days ago
4-26808
4 days
22771 alreadydone
author:alreadydone
feat(Homotopy/Lifting): monodromy of covering maps and lifting criterion Define the monodromy of a covering map: given a path in the base space, lifting it through the covering map induces a bijection between the fibers at the two endpoints of the path. Definition 2.1 in https://ncatlab.org/nlab/show/monodromy. --- - [ ] depends on: #28234 - [x] depends on: #22649 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-topology 193/146 Mathlib/AlgebraicTopology/FundamentalGroupoid/Basic.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/FundamentalGroup.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/InducedMaps.lean,Mathlib/AlgebraicTopology/FundamentalGroupoid/SimplyConnected.lean,Mathlib/CategoryTheory/Groupoid.lean,Mathlib/Topology/Covering.lean,Mathlib/Topology/Homotopy/HomotopyGroup.lean,Mathlib/Topology/Homotopy/Lifting.lean,Mathlib/Topology/Homotopy/Product.lean 9 5 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] PatrickMassot
assignee:PatrickMassot
3-2786
3 days ago
59-35447
1 month ago
144-35711
144 days
30315 SnirBroshi
author:SnirBroshi
feat(Topology/Connected/LocPathConnected): convenience lemma for `LocPathConnected` + `ConnectedSpace` → `PathConnectedSpace` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-bench new-contributor t-topology 5/3 Mathlib/Topology/Connected/LocPathConnected.lean 1 11 ['SnirBroshi', 'github-actions', 'j-loreaux', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] PatrickMassot
assignee:PatrickMassot
3-572
3 days ago
3-70975
3 days ago
13-33186
13 days
30661 urkud
author:urkud
feat(Topology): infinite T2 spaces --- Cleaning up old branches. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 77/0 Mathlib.lean,Mathlib/Topology/NatEmbedding.lean 2 2 ['github-actions', 'urkud'] nobody
2-83926
2 days ago
2-83939
2 days ago
2-83975
2 days
30662 urkud
author:urkud
feat(LocallyFinite): add `of_comp_surjective` --- Cleaning up old branches. Feel free to reject. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 7/0 Mathlib/Topology/LocallyFinite.lean 1 1 ['github-actions'] nobody
2-83687
2 days ago
2-83704
2 days ago
2-83739
2 days
30645 tb65536
author:tb65536
feat(RingTheory/Localization/FractionRing): `R` is nontrivial iff `S` is nontrivial This PR shows that if `S` is the fraction ring of `R`, then `R` is nontrivial iff `S` is nontrivial. --- [![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/8 Mathlib/RingTheory/Localization/FractionRing.lean 1 6 ['Ruben-VandeVelde', 'github-actions', 'tb65536'] nobody
2-83005
2 days ago
3-51793
3 days ago
3-51771
3 days
30226 erdOne
author:erdOne
feat(AlgebraicGeometry): global sections of inverse limits of schemes --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 463/3 Mathlib.lean,Mathlib/AlgebraicGeometry/AffineScheme.lean,Mathlib/AlgebraicGeometry/AffineTransitionLimit.lean,Mathlib/AlgebraicGeometry/Limits.lean,Mathlib/AlgebraicGeometry/OpenImmersion.lean,Mathlib/AlgebraicGeometry/Restrict.lean,Mathlib/CategoryTheory/Limits/Shapes/Pullback/Connected.lean 7 12 ['chrisflav', 'erdOne', 'github-actions', 'joelriou'] joelriou
assignee:joelriou
2-73093
2 days ago
10-30726
10 days ago
13-25151
13 days
30322 kckennylau
author:kckennylau
feat(RingTheory): base change of graded algebra In this file we show that if `𝒜` is a graded `R`-algebra, and `S` is any `R`-algebra, then `S ⊗[R] 𝒜` (which is actually `fun i ↦ (𝒜 i).baseChange S`) is a graded `S`-algebra with the same grading. --- Split from #26061. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 269/48 Mathlib.lean,Mathlib/Algebra/DirectSum/Basic.lean,Mathlib/Algebra/DirectSum/Decomposition.lean,Mathlib/Algebra/DirectSum/Module.lean,Mathlib/Algebra/Order/Module/HahnEmbedding.lean,Mathlib/LinearAlgebra/DirectSum/Finsupp.lean,Mathlib/LinearAlgebra/DirectSum/TensorProduct.lean,Mathlib/LinearAlgebra/TensorProduct/Decomposition.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean,Mathlib/RingTheory/Flat/Basic.lean,Mathlib/RingTheory/Flat/FaithfullyFlat/Basic.lean,Mathlib/RingTheory/GradedAlgebra/TensorProduct.lean 12 1 ['github-actions'] dupuisf
assignee:dupuisf
2-73092
2 days ago
13-38414
13 days ago
13-38390
13 days
30432 kckennylau
author:kckennylau
feat(AlgebraicGeometry): define the non-vanishing locus of a set in Proj Given a subset `s : Set A`, the non-vanishing locus of `s` is the set of points whose corresponding prime ideal does not fully contain `s`. In other words, where not all elements of `s` vanish. I could not find a name for this in the literature. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry 66/0 Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean 1 1 ['github-actions'] alexjbest
assignee:alexjbest
2-73090
2 days ago
10-45635
10 days ago
10-45668
10 days
30439 plp127
author:plp127
feat: `norm_num` extension for `IsSquare` on `Nat`, `Int`, `Rat` Write a `norm_num` extension to evaluate `IsSquare` for `Nat`, `Int`, `Rat`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 152/1 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/NormNum/IsSquare.lean,MathlibTest/norm_num_ext.lean 4 3 ['Rob23oba', 'github-actions', 'plp127'] dwrensha
assignee:dwrensha
2-73089
2 days ago
10-23048
10 days ago
10-23082
10 days
29351 staroperator
author:staroperator
feat(SetTheory/Cardinal): generalize and rename theorems on `Cardinal.sum` Some theorems on `Cardinal.sum f` are taking `f : ι → Cardinal.{max u v}`, which can be generalized to `f : ι → Cardinal.{v}`. Also rename `sum_le_iSup_lift`, `sum_eq_iSup_lift` etc. to reflect their signatures in names. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-set-theory maintainer-merge 64/31 Mathlib/Data/W/Cardinal.lean,Mathlib/ModelTheory/Encoding.lean,Mathlib/SetTheory/Cardinal/Arithmetic.lean,Mathlib/SetTheory/Cardinal/Basic.lean,Mathlib/SetTheory/Cardinal/Cofinality.lean,Mathlib/SetTheory/Cardinal/Defs.lean,Mathlib/SetTheory/Cardinal/Order.lean,Mathlib/SetTheory/Cardinal/Ordinal.lean,Mathlib/SetTheory/Cardinal/Pigeonhole.lean,Mathlib/SetTheory/Cardinal/Regular.lean 10 10 ['alreadydone', 'github-actions', 'staroperator', 'vihdzp'] alreadydone
assignee:alreadydone
2-69190
2 days ago
3-36807
3 days ago
47-11974
47 days
28497 euprunin
author:euprunin
chore(RingTheory/LocalRing/ResidueField): deprecate`isLocalHom_residue` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy 3/8 Mathlib/RingTheory/LocalRing/ResidueField/Basic.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean 2 6 ['Ruben-VandeVelde', 'euprunin', 'github-actions', 'mathlib4-merge-conflict-bot', 'wwylele'] sgouezel
assignee:sgouezel
2-68545
2 days ago
13-84819
13 days ago
17-17323
17 days
30224 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Hamiltonian): `p.support.get` is bijective --- - [x] depends on: #30223 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 7/0 Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] kim-em
assignee:kim-em
2-55726
2 days ago
9-80216
9 days ago
9-81172
9 days
30646 xroblot
author:xroblot
feat(RingTheory/Ideal): the inertia degree and ramification index are less than the rank Also prove that `primesOverFinset` is less than the rank. These are all easy consequences of [Ideal.sum_ramification_inertia](https://leanprover-community.github.io/mathlib4_docs/Mathlib/NumberTheory/RamificationInertia/Basic.html#Ideal.sum_ramification_inertia) --- t-ring-theory 50/9 Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean 2 5 ['erdOne', 'github-actions', 'xroblot'] nobody
2-48981
2 days ago
3-19444
3 days ago
3-43424
3 days
29835 vlad902
author:vlad902
feat(Order): add `IsMaxAntichain` and some lemmas for `IsMaxChain` Define `IsMaxAntichain` to be the antichain analogue of `IsMaxChain` and add some useful lemmas to both that I needed for proving Mirsky's theorem. - [ ] depends on: #29834 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 51/0 Mathlib/Order/Antichain.lean,Mathlib/Order/Preorder/Chain.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] Vierkantor
assignee:Vierkantor
2-47158
2 days ago
19-3431
19 days ago
19-3757
19 days
28119 JasperMS
author:JasperMS
feat(Data/Set/Pairwise): prove pairwise results for Chains, move `Set.pairwise_iUnion₂` Initiate a new file `Data/Set/Pairwise/Chain.lean` which makes some `Pairwise` results available to the `IsChain` predicate. In the process, move `Set.pairwise_iUnion₂` to group it with similar results. Perform some variable harmonization. Part of Carleson, original result by Edward van de Meent. Moves: - Set.pairwise_iUnion₂: from Data.Set.Lattice to Data.Set.Pairwise.Lattice --- This PR was discussed and advice was given in [#mathlib4 > Novice questions on style and structure](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Novice.20questions.20on.20style.20and.20structure/with/533462814). Many thanks to those who helped me out! Mathlib PRs are still new to me, so please point out where I can improve! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) carleson t-data new-contributor 56/12 Mathlib.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Data/Set/Pairwise/Chain.lean,Mathlib/Data/Set/Pairwise/Lattice.lean 4 13 ['JasperMS', 'Ruben-VandeVelde', 'edegeltje', 'github-actions', 'pechersky'] pechersky
assignee:pechersky
2-46826
2 days ago
74-25926
2 months ago
74-26360
74 days
29765 YaelDillies
author:YaelDillies
feat: commutative monoids are internal monoids From Toric --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) toric t-category-theory 76/6 Mathlib/CategoryTheory/Monoidal/Cartesian/Grp_.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Mon_.lean 2 3 ['YaelDillies', 'eric-wieser', 'github-actions'] kim-em
assignee:kim-em
2-42979
2 days ago
33-49686
1 month ago
33-49719
33 days
30665 alreadydone
author:alreadydone
feat(Algebra): congruence relation preserving SMul --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
197/19 Mathlib.lean,Mathlib/Algebra/Colimit/Module.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/GroupTheory/Congruence/Module.lean,Mathlib/RingTheory/Finiteness/Cardinality.lean,Mathlib/RingTheory/Spectrum/Prime/FreeLocus.lean 6 6 ['ADedecker', 'alreadydone', 'github-actions'] nobody
2-27144
2 days ago
2-80394
2 days ago
2-80372
2 days
30590 YaelDillies
author:YaelDillies
feat(Combinatorics/SimpleGraph): inducing a walk A walk which is fully contained within a set of vertices becomes a walk on the corresponding induced graph. From the ProofBench workshop --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 27/0 Mathlib/Combinatorics/SimpleGraph/Walk.lean 1 1 ['github-actions'] nobody
2-26698
2 days ago
6-12119
6 days ago
6-12163
6 days
29652 fmortimore
author:fmortimore
feat(Order): the Bourbaki–Witt theorem We prove the Bourbaki-Witt theorem, one of Wiedijk's 1000+ theorems --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order 244/0 Mathlib.lean,Mathlib/Order/BourbakiWitt.lean,docs/1000.yaml 3 28 ['Vierkantor', 'eric-wieser', 'fmortimore', 'github-actions', 'wwylele'] Vierkantor
assignee:Vierkantor
2-26164
2 days ago
2-26164
2 days ago
24-73105
24 days
30677 themathqueen
author:themathqueen
doc(LinearAlgebra/Matrix/PosDef): module docstring --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
9/4 Mathlib/LinearAlgebra/Matrix/PosDef.lean 1 1 ['github-actions'] nobody
2-24553
2 days ago
2-24553
2 days ago
2-25638
2 days
30679 themathqueen
author:themathqueen
feat(LinearAlgebra/TensorProduct/Matrix): equivalence between `⊗ₜ` and `⊗ₖ` This adds the equivalence between the tensor product of matrices and the Kronecker product. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
42/1 Mathlib/LinearAlgebra/TensorProduct/Matrix.lean 1 1 ['github-actions'] nobody
2-24362
2 days ago
2-24665
2 days ago
2-24788
2 days
27244 xroblot
author:xroblot
feat(RingTheory/DedekindDomain): lifting an ideal in an extension is injective This PR develops some API for [FractionalIdeal.extendedHomₐ](https://leanprover-community.github.io/mathlib4_docs/Mathlib/RingTheory/FractionalIdeal/Extended.html#FractionalIdeal.extendedHom%E2%82%90) and in particular proves when it is an injective map. As a consequence, it deduces the fact that lifting an integral ideal in an extension of Dedekind domains is an injective map. Note: the import increase happens in a leaf file `Mathlib.RingTheory.FractionalIdeal.Extended` --- - [x] depends on: #28800 t-ring-theory large-import 77/8 Mathlib/RingTheory/DedekindDomain/Ideal/Lemmas.lean,Mathlib/RingTheory/FractionalIdeal/Extended.lean 2 6 ['github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'xroblot'] kbuzzard
assignee:kbuzzard
2-21184
2 days ago
2-21208
2 days ago
84-14214
84 days
30647 JovanGerb
author:JovanGerb
chore(Tactic/Ring): use Qq more honestly This PR removes almost all uses of `(q(...) : Expr)` in the `ring` tactic implementation. This includes switching from `Ring`/`DivisionSemiring` to `CommRing`/`Semifield`, because then we can rely on `assumeInstancesCommute` to make Qq happy. This should not affect the generality of the `ring` tactic, because a `Ring`/`DivisionSemiring` that is also commutative is also a `CommRing`/`Semifield`. I wanted to do some other work on `ring`, but that stumbled on the fact that some `q(...)` proof terms weren't actually being type checked properly by Qq. This PR fixes this. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 126/116 Mathlib/Tactic/Ring/Basic.lean 1 4 ['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] nobody
2-18279
2 days ago
3-34566
3 days ago
3-34554
3 days
30693 joelriou
author:joelriou
feat(Order/Category): partial orders with order embeddings as morphisms This category will be relevant in the study of accessible categories. I am making Johan Commelin a co-author as the new file `PartOrdEmb.lean` is essentially a copy-paste of `PartOrd.Lean`. Co-authored-by: Johan Commelin --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 169/0 Mathlib.lean,Mathlib/Order/Category/PartOrdEmb.lean 2 2 ['github-actions', 'joelriou'] nobody
2-6133
2 days ago
2-9888
2 days ago
2-9866
2 days
30701 vihdzp
author:vihdzp
feat: `Set.prod_image_left` --- Downstreamed from the CGT repo. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 9/0 Mathlib/Data/Set/Operations.lean 1 1 ['github-actions'] nobody
1-83568
1 day ago
1-83580
1 day ago
1-83621
1 day
30702 jsm28
author:jsm28
feat(LinearAlgebra/AffineSpace/Independent): `inf_affineSpan_eq_affineSpan_inter` Add a lemma ```lean lemma AffineIndependent.inf_affineSpan_eq_affineSpan_inter [Nontrivial k] {p : ι → P} (ha : AffineIndependent k p) (s₁ s₂ : Set ι) : affineSpan k (p '' s₁) ⊓ affineSpan k (p '' s₂) = affineSpan k (p '' (s₁ ∩ s₂)) := by ``` with a proof adapted from that of the existing weaker `exists_mem_inter_of_exists_mem_inter_affineSpan`, and change `exists_mem_inter_of_exists_mem_inter_affineSpan` to be proved using the new lemma. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
37/12 Mathlib/LinearAlgebra/AffineSpace/Independent.lean 1 3 ['eric-wieser', 'github-actions'] nobody
1-80651
1 day ago
1-83140
1 day ago
1-83118
1 day
30553 mcdoll
author:mcdoll
chore(Analysis/Distribution): split off functions and measures of temperate growth The Schwartz function file reached 1500 lines of code, so it really needs splitting. The only other change is that I added namespaces and moved one lemma into the `MeasureTheory.Measure` namespace to allow for dot-notation. --- I've added Anatole to the list of authors for the `BigO` additions, I don't know whether there is someone else that should be mentioned. @mans0954 did you contribute to the temperate growth functions? I did not write any new doc-strings, so that this PR does not get hung up on that, but this should be done in a subsequent PR. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 241/220 Mathlib.lean,Mathlib/Analysis/Distribution/SchwartzSpace.lean,Mathlib/Analysis/Distribution/TemperateGrowth.lean 3 4 ['ADedecker', 'github-actions', 'mcdoll'] nobody
1-78988
1 day ago
7-11034
7 days ago
7-11072
7 days
29719 kim-em
author:kim-em
feat(Topology/Algebra/Group/Units): add topological properties of units ## Summary Add lemmas about units in topological monoids: - `Submonoid.units_isOpen`: units of open submonoids are open in the units topology - `ContinuousMulEquiv.piUnits`: homeomorphism between units of a product and product of units This content was prepared by Claude from the FLT project. Source file: `/Users/kim/projects/lean/flt/FLT/Mathlib/Topology/Algebra/Group/Units.lean` GitHub source: https://github.com/ImperialCollegeLondon/FLT/blob/main/FLT/Mathlib/Topology/Algebra/Group/Units.lean 🤖 Generated with [Claude Code](https://claude.ai/code) FLT t-topology 53/0 Mathlib.lean,Mathlib/Topology/Algebra/Group/Units.lean 2 7 ['Ruben-VandeVelde', 'github-actions', 'kim-em', 'plp127'] ADedecker
assignee:ADedecker
1-77895
1 day ago
17-43299
17 days ago
25-67
25 days
29706 kim-em
author:kim-em
feat: add piCongrSigmaFiber and piCongrFiberwise equivalences ## Summary Add two new equivalence functions for working with fibers and sigma types: - `Equiv.piCongrSigmaFiber`: transforms between functions on sigma fibers and regular pi types - `Equiv.piCongrFiberwise`: lifts fiber-wise equivalences to product equivalences These functions are from the FLT (Fermat's Last Theorem) project and are useful for manipulating dependent function types indexed by fibers of a function. ## Details The new definitions allow for elegant transformations between: 1. Functions defined on sigma types representing fibers of a function 2. Regular dependent functions These are particularly useful in algebraic contexts where one needs to work with products indexed by fibers. ## Context This PR was prepared by Claude (Claude Code) based on the following prompt: > "Please read FLT/Mathlib/Logic/Equiv/Basic.lean, and also the corresponding file in the Mathlib repository. Please prepare a PR to Mathlib containing this content, putting it at an appropriate point in the corresponding Mathlib file. Make sure the PR is label FLT, and write in the PR comment an explanation that the PR was prepared by Claude, including quoting the prompting." The content is sourced from `/Users/kim/projects/lean/FLT/FLT/Mathlib/Logic/Equiv/Basic.lean` in the FLT project repository. 🤖 Generated with [Claude Code](https://claude.ai/code) FLT t-logic 39/0 Mathlib/Logic/Equiv/Basic.lean 1 5 ['Ruben-VandeVelde', 'github-actions', 'kim-em'] fpvandoorn
assignee:fpvandoorn
1-77884
1 day ago
35-28463
1 month ago
35-44670
35 days
30627 kim-em
author:kim-em
chore: regression test for Set grind annotations This is apparently failing in Cslib's `nightly-testing`, so installing this as a regression test to try to pin down where it is/isn't working. 3/0 MathlibTest/grind/set.lean 1 1 ['github-actions'] nobody
1-77239
1 day ago
4-66331
4 days ago
4-66308
4 days
30698 jsm28
author:jsm28
feat(Geometry/Euclidean/Projection): characteristic property Add a lemma ```lean lemma orthogonalProjection_eq_iff_mem {s : AffineSubspace ℝ P} [Nonempty s] [s.direction.HasOrthogonalProjection] {p q : P} : orthogonalProjection s p = q ↔ q ∈ s ∧ p -ᵥ q ∈ s.directionᗮ := by ``` that gives the characteristic property of the orthogonal projection in a more convenient form to use than the existing `inter_eq_singleton_orthogonalProjection` (from which it is derived). Deduce a lemma `orthogonalProjection_eq_orthogonalProjection_iff_vsub_mem` about equality of two projections onto the same subspace. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 34/0 Mathlib/Geometry/Euclidean/Projection.lean 1 12 ['eric-wieser', 'github-actions', 'jsm28'] nobody
1-76160
1 day ago
1-85069
1 day ago
1-85048
1 day
27516 gaetanserre
author:gaetanserre
feat: add rational approximation lemma for suprema in `unitInterval` Add `sSup_eq_iUnion_rat` lemma that provides a rational approximation characterization of suprema in the unit interval. For monotone functions `f : α → I → ℝ`, the lemma establishes that the set of pairs where `a < sSup {x | f e.1 x < e.2}` equals the union over all rationals `q ∈ I` with `q > a` of the sets `{e | f e.1 q < e.2}`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 44/0 Mathlib/MeasureTheory/Constructions/UnitInterval.lean,Mathlib/Topology/UnitInterval.lean 2 7 ['gaetanserre', 'github-actions', 'mathlib4-merge-conflict-bot', 'ocfnash'] j-loreaux
assignee:j-loreaux
1-73116
1 day ago
58-23371
1 month ago
84-14366
84 days
28884 kim-em
author:kim-em
chore: deprecate ShiftLeft Int instance This PR proposes deprecating the `ShiftLeft Int` instance (which allows bit-shifting an integer by an integer), and similarly for `ShiftRight`. These are unused in Mathlib. I'm happy if someone wants to keep this, but I would ask that they: * fix the doc-strings to explain what happens for negative shifts * ~~restores the theorem `Int.shiftLeft_add` which I've commented out on `nightly-testing` (and then revert b33c9d7aaea on `nightly-testing`).~~ * ideally but optionally, complete the API, e.g. reducing shifts by casts back to shifts by a Nat t-data 22/3 Mathlib/Data/Int/Bitwise.lean 1 5 ['eric-wieser', 'github-actions', 'kim-em', 'mathlib4-merge-conflict-bot'] pechersky
assignee:pechersky
1-73115
1 day ago
35-73142
1 month ago
57-41239
57 days
29014 ShreckYe
author:ShreckYe
feat(Data/List/Scan): some theorems that relate `scanl` with `foldl` I am not sure which is the best form of `getElem_scanl_eq_foldl_take` here, so I added several alternative forms. Feel free to remove any of them if necessary. t-data 35/0 Mathlib/Data/List/Scan.lean 1 9 ['ShreckYe', 'github-actions', 'themathqueen', 'vlad902'] pechersky
assignee:pechersky
1-73114
1 day ago
55-43229
1 month ago
55-43268
55 days
30041 josephmckinsey
author:josephmckinsey
feat(Algebra/Order/Floor): generalize mul_floor_div theorems to rings and semirings Generalize `mul_cast_floor_div_cancel` from `Field` and `Semifield` to `Ring` and `Semiring`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
43/31 Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semifield.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Analysis/Real/OfDigits.lean 4 10 ['Ruben-VandeVelde', 'github-actions', 'josephmckinsey'] joneugster
assignee:joneugster
1-73113
1 day ago
9-71209
9 days ago
10-19810
10 days
30424 maksym-radziwill
author:maksym-radziwill
feat(Analysis.Complex): Borel-Caratheodory theorem, part of PrimeNumberTheoremAnd+ upstreaming This PR adds a proof of the [Borel-Caratheodory theorem](https://en.wikipedia.org/wiki/Borel%E2%80%93Carath%C3%A9odory_theorem) following the [blueprint](https://alexkontorovich.github.io/PrimeNumberTheoremAnd/web/sect0004.html#a0000000021) of the [PrimeNumberTheoremAnd+](https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/) project. This is part of the ongoing effort to upstream the StrongPNT version of the PrimeNumberTheoremAnd+ project into mathlib4. See also the [Zullip discussion](https://leanprover.zulipchat.com/#narrow/channel/423402-PrimeNumberTheorem.2B/topic/Merging.20with.20Morph/with/544246433) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 424/0 Mathlib.lean,Mathlib/Analysis/Complex/BorelCaratheodory.lean,docs/1000.yaml,docs/references.bib 4 7 ['Ruben-VandeVelde', 'github-actions', 'maksym-radziwill', 'wwylele'] grunweg
assignee:grunweg
1-73112
1 day ago
9-62276
9 days ago
10-80060
10 days
30468 jeremypparker
author:jeremypparker
feat(Algebra/GroupWithZero): mul_left_cancel_iff₀ This is a version of mul_left_cancel_iff / mul_right_cancel_iff for GroupWithZero --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra easy
label:t-algebra$
6/0 Mathlib/Algebra/GroupWithZero/Defs.lean 1 4 ['github-actions', 'jeremypparker', 'wwylele'] joelriou
assignee:joelriou
1-73108
1 day ago
9-19089
9 days ago
9-19122
9 days
30473 CoolRmal
author:CoolRmal
feat(ComplexAnalysis): Cauchy's Integral Formula for Higher Order Derivatives This PR adds the following `iteratedDeriv_eq_smul_circleIntegral` and `norm_iteratedDeriv_le_aux`. The first one expresses the `n`-th order derivative of a differentiable function as a circle integral. The second one proves an estimate for the `n`-th order derivative. Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Cauchy's.20integral.20formula --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 124/6 Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/Analysis/Complex/Liouville.lean,Mathlib/Analysis/Complex/LocallyUniformLimit.lean 3 16 ['CoolRmal', 'github-actions', 'loefflerd', 'wwylele'] ADedecker
assignee:ADedecker
1-73106
1 day ago
9-6232
9 days ago
9-6263
9 days
30451 kckennylau
author:kckennylau
feat(HomogeneousIdeal): generalize to homogeneous submodule Continuation of #30437 with permission from @jjaassoonn, which is a continuation of #9820 . The definitions, constructions and theorems in `HomogeneousIdeal.lean` are generalized to homogeneous submodules. Let `R` be a graded ring and `M` be a graded `R`-module. Say an `R`-submodule `N` of `M` is homogeneous if for every `x` in `N`, each projection of `x` to `M_i` is in `N`. None of this file's results depends on the grading on `R`, but we include the grading on `R` for technical reasons. We define the "homogeneous core" of a not necessarily homogeneous submodule N to be the biggest homogeneous submodule contained within N, and the "homogeneous hull" to be the smallest homogeneous submodule that contains N. All definitions/constructions/theorems are then copied for ideals/homogeneous ideals. The motivation of this generalization is graded quotient module. (#18716) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 554/182 Mathlib/Algebra/Module/GradedModule.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Basic.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Scheme.lean,Mathlib/AlgebraicGeometry/ProjectiveSpectrum/Topology.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Ideal.lean,Mathlib/RingTheory/GradedAlgebra/Homogeneous/Submodule.lean,Mathlib/RingTheory/GradedAlgebra/Radical.lean 7 1 ['github-actions'] nobody
1-72927
1 day ago
1-72927
1 day ago
10-2799
10 days
30144 alreadydone
author:alreadydone
feat(Data/Nat): kernel reducible binaryRec + Redefine `Nat.binaryRec` to allow kernel reduction. + Move some lemmas from Data/Nat/Bitwise to Data/Nat/BinaryRec. + Use `nsmulBinRec` for nsmul/zsmul on elliptic curves. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data t-algebra
label:t-algebra$
77/56 Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Group/Prod.lean,Mathlib/AlgebraicGeometry/EllipticCurve/Affine/Point.lean,Mathlib/Data/Nat/BinaryRec.lean,Mathlib/Data/Nat/BitIndices.lean,Mathlib/Data/Nat/Bits.lean,Mathlib/Data/Nat/Bitwise.lean,Mathlib/Data/Nat/Size.lean 8 7 ['alreadydone', 'astrainfinita', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] nobody
1-72218
1 day ago
17-25490
17 days ago
17-72993
17 days
30671 astrainfinita
author:astrainfinita
chore: remove `MulAction ℚ α → MulAction ℚ≥0 α` instances This fixes the instances diamond in the `NNRat` action. --- [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60SMul.20NNRat.60.20diamond.3F/with/545816108) [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data t-algebra
label:t-algebra$
25/54 Mathlib/Algebra/Algebra/Rat.lean,Mathlib/Algebra/Module/Rat.lean,Mathlib/Algebra/Order/Module/Rat.lean,Mathlib/Data/NNRat/Lemmas.lean 4 1 ['github-actions'] nobody
1-56794
1 day ago
1-59500
1 day ago
1-59491
1 day
30587 kebekus
author:kebekus
feat: sums of meromorphic functions are meromorphic Establish that sums of meromorphic functions are meromorphic. Fix several docstrings. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis easy 89/53 Mathlib/Analysis/Meromorphic/Basic.lean 1 31 ['eric-wieser', 'github-actions', 'grunweg', 'kebekus'] grunweg
assignee:grunweg
1-56417
1 day ago
5-34034
5 days ago
5-70401
5 days
29723 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: add TensorProduct.piScalarRight_symm_algebraMap --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) FLT t-algebra
label:t-algebra$
5/0 Mathlib/LinearAlgebra/TensorProduct/Pi.lean 1 5 ['Ruben-VandeVelde', 'github-actions', 'themathqueen'] joneugster
assignee:joneugster
1-49478
1 day ago
35-20620
1 month ago
35-20654
35 days
27978 smmercuri
author:smmercuri
feat(InfinitePlace/Ramification): `LiesOver` class for absolute values and derived results on infinite places If `w` is an absolute value on `L/K` and `v` is an absolute value of `K` then `w.LiesOver v` is the class defining the property that `v` is the restriction of `w` to `K`. This PR continues the work from #24881. Original PR: https://github.com/leanprover-community/mathlib4/pull/24881 --- - [x] depends on: #27977 large-import FLT t-number-theory 62/0 Mathlib/Analysis/Normed/Ring/WithAbs.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Ramification.lean 2 11 ['MichaelStollBayreuth', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'smmercuri'] MichaelStollBayreuth
assignee:MichaelStollBayreuth
1-48925
1 day ago
1-48925
1 day ago
18-65980
18 days
29969 smmercuri
author:smmercuri
refactor: use isometry extensions for completions at infinite places of number fields The API for `InfinitePlace.Completion` currently makes use of abstract results defined on absolute values, which all depend on the hypothesis of the form `∀ x, ‖f x‖ = v x`. This is equivalent to `f` being an isometry, and so many of these results can be bypassed and deprecated by using `Isometry.completion_extension` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 73/48 Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Completion.lean,Mathlib/Topology/MetricSpace/Completion.lean 4 2 ['github-actions', 'mathlib4-merge-conflict-bot'] TwoFX
assignee:TwoFX
1-48896
1 day ago
1-49158
1 day ago
24-72023
24 days
27971 smmercuri
author:smmercuri
feat: weak approximation theorems for infinite places of a number field Under the diagonal embedding into infinite places, a number field $K$ is dense inside both the product $\prod_{v \mid \infty} (K, v)$, where $(K, v)$ denotes $K$ equipped with $v$'s topology, and the infinite adele ring $\prod_v K_v$. This PR continues the work from #22153. Original PR: https://github.com/leanprover-community/mathlib4/pull/22153 --- - [x] depends on: #27969 FLT t-algebra t-number-theory
label:t-algebra$
98/2 Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/NumberTheory/NumberField/AdeleRing.lean,Mathlib/NumberTheory/NumberField/InfinitePlace/Basic.lean 3 5 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'smmercuri'] Vierkantor
assignee:Vierkantor
1-48686
1 day ago
1-48694
1 day ago
18-83243
18 days
30680 YaelDillies
author:YaelDillies
feat(Algebra/Group/Torsion): characterise when `a ^ n = 1` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
31/11 Mathlib/Algebra/Group/Torsion.lean,Mathlib/Algebra/GroupWithZero/Torsion.lean,Mathlib/Algebra/Ring/NonZeroDivisors.lean 3 1 ['github-actions'] nobody
1-47604
1 day ago
2-24437
2 days ago
2-24472
2 days
30684 YaelDillies
author:YaelDillies
chore: deprecate `monoidalOfHasFiniteProducts` Over the summer, this was replaced everywhere with `CartesianMonoidalCategory.ofHasFiniteProducts`, but hadn't been deprecated. --- I would personally be very happy to also delete the finite coproduct stuff, but we don't yet have cocartesian-monoidal categories to replace them. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-category-theory 92/92 Mathlib/CategoryTheory/Monoidal/OfHasFiniteProducts.lean 1 3 ['YaelDillies', 'github-actions', 'joelriou'] nobody
1-43603
1 day ago
1-43656
1 day ago
1-45676
1 day
27364 101damnations
author:101damnations
feat(RepresentationTheory/Homological/GroupCohomology): cohomology of finite cyclic groups Let `k` be a commutative ring, `G` a group and `A` a `k`-linear `G`-representation. Given endomorphisms `φ, ψ : A ⟶ A` such that `φ ∘ ψ = ψ ∘ φ = 0`. Denote by `Chains(A, φ, ψ)` the periodic chain complex `... ⟶ A --φ--> A --ψ--> A --φ--> A --ψ--> A ⟶ 0` and by `Cochains(A, φ, ψ)` the periodic cochain complex `0 ⟶ A --ψ--> A --φ--> A --ψ--> A --φ--> A ⟶ ...`. When `G` is finite and generated by `g : G`, then `P := Chains(k[G], N, ρ(g) - Id)` (with `ρ` the left regular representation) is a projective resolution of `k` as a trivial representation. In this PR we show that for `A : Rep k G`, `Hom(P, A)` is isomorphic to `Cochains(A, N, ρ_A(g) - Id)` as a complex of `k`-modules, and hence the cohomology of this complex computes group cohomology. --- - [x] depends on: #27362 - [x] depends on: #27361 - [x] depends on: #27363 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
142/1 Mathlib.lean,Mathlib/RepresentationTheory/Homological/FiniteCyclic.lean,Mathlib/RepresentationTheory/Homological/GroupCohomology/FiniteCyclic.lean 3 6 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'riccardobrasca'] riccardobrasca
assignee:riccardobrasca
1-41594
1 day ago
19-20152
19 days ago
19-22719
19 days
30713 YaelDillies
author:YaelDillies
chore(Algebra/Ring): shortcut `IsDomain` instances for `Nat` and `Int` These instances are currently inferred from the `IsStrictOrderedRing` ones (see code snippet), but in #30563 I need these instances earlier than the `IsStrictOrderedRing` ones. ``` import Mathlib #synth IsDomain ℕ -- IsStrictOrderedRing.isDomain #synth IsDomain ℤ -- IsStrictOrderedRing.isDomain ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-algebra
label:t-algebra$
6/0 Mathlib/Algebra/Ring/Int/Defs.lean,Mathlib/Algebra/Ring/Nat.lean 2 1 ['github-actions'] nobody
1-40850
1 day ago
1-40857
1 day ago
1-40900
1 day
27270 EtienneC30
author:EtienneC30
chore: turn WithLp into a structure Turn `WithLp` into a one field structure, as was suggested many times on Zulip and discussed here: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/defeq.20abuse.20in.20.60WithLp.60/near/526234806. Here is what this PR does: - The instances on `WithLp p α` which were defeq to those on `α` (algebraic instances, topology, uniformity, bornology) are now pulled back from `α` along `WithLp.equiv p α`. A few declarations are added to ease the process, such as versions of `WithLp.equiv` as a homeomorphism or a uniform isomorphism. - The `MeasurableSpace` structure was pushed forward from `α`. We now make it pulled back because it is much more convenient to prove that this preserves the `BorelSpace` instance. - It introduces some definitions to equip `α × β` with the Lp distance, and similarly for `Π i, α i`. This is then used to define relevant instances on type synonyms, such as for matrix norms. - The PR fixes all the defeq abuses (which break obviously). --- - [x] depends on: #28469 - [x] depends on: #28470 - [x] depends on: #28471 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-analysis 636/417 Archive/Hairer.lean,Mathlib/Algebra/Module/ZLattice/Covolume.lean,Mathlib/Analysis/CStarAlgebra/Matrix.lean,Mathlib/Analysis/Calculus/FDeriv/WithLp.lean,Mathlib/Analysis/InnerProductSpace/LinearPMap.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Analysis/InnerProductSpace/Positive.lean,Mathlib/Analysis/InnerProductSpace/ProdL2.lean,Mathlib/Analysis/InnerProductSpace/Spectrum.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Analysis/Normed/Algebra/TrivSqZeroExt.lean,Mathlib/Analysis/Normed/Algebra/UnitizationL1.lean,Mathlib/Analysis/Normed/Lp/LpEquiv.lean,Mathlib/Analysis/Normed/Lp/MeasurableSpace.lean,Mathlib/Analysis/Normed/Lp/PiLp.lean,Mathlib/Analysis/Normed/Lp/ProdLp.lean,Mathlib/Analysis/Normed/Lp/WithLp.lean,Mathlib/Analysis/Quaternion.lean,Mathlib/Analysis/RCLike/Inner.lean,Mathlib/Analysis/SpecialFunctions/Gaussian/FourierTransform.lean,Mathlib/Combinatorics/Additive/AP/Three/Behrend.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/CrossProduct.lean,Mathlib/Geometry/Manifold/Instances/Icc.lean,Mathlib/Geometry/Manifold/Instances/Real.lean,Mathlib/LinearAlgebra/Matrix/Hermitian.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean,Mathlib/LinearAlgebra/Matrix/Spectrum.lean,Mathlib/MeasureTheory/Measure/Haar/InnerProductSpace.lean,Mathlib/MeasureTheory/Measure/Haar/OfBasis.lean,Mathlib/MeasureTheory/Measure/Lebesgue/VolumeOfBalls.lean,Mathlib/MeasureTheory/SpecificCodomains/WithLp.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/Basic.lean,Mathlib/NumberTheory/NumberField/Ideal/Asymptotics.lean,Mathlib/Probability/Distributions/Fernique.lean 34 64 ['EtienneC30', 'eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] j-loreaux
assignee:j-loreaux
1-40757
1 day ago
1-40779
1 day ago
67-41665
67 days
30717 kim-em
author:kim-em
chore: cleanup rwMerge tactic analysis linter Previously this would find a sequence of `rw`, and see if they could all be merged into a single one. Now it just tries to merge an adjacent pair of `rw`s. (In the event that 3 or more rewrites could be merged, this will now suggest a more conservative merge, but presumably subsequently suggest the further merges.) Also removes a spurious `set_option grind.warning false`. t-meta 8/5 Mathlib/Tactic/TacticAnalysis/Declarations.lean 1 1 ['github-actions'] nobody
1-38949
1 day ago
1-38949
1 day ago
1-38991
1 day
30692 themathqueen
author:themathqueen
chore: rename **conjugate** to **star_left_conjugate** We change `_conjugate_` to `_star_left_conjugate_` and `_conjugate_'` to `_star_right_conjugate_` to avoid confusion since sometimes in some files it means `_ * _ * star _` and in others it means `star _ * _ * _`. In particular, `Algebra/Algebra/StrictPositivity`: * `IsUnit.isStrictlyPositive_conjugate_iff` -> `IsUnit.isStrictlyPositive_star_right_conjugate_iff` * `IsUnit.isStrictlyPositive_conjugate_iff'` -> `IsUnit.isStrictlyPositive_star_left_conjugate_iff` `Algebra/Order/Star/Basic`: * `conjugate_nonnneg` -> `star_left_conjugate_nonneg` * `conjugate_nonneg'` -> `star_right_conjugate_nonneg` * `conjugate_le_conjugate` -> `star_left_conjugate_le_conjugate` * `conjugate_le_conjugate'` -> `star_right_conjugate_le_conjugate` * `conjugate_lt_conjugate` -> `star_left_conjugate_lt_conjugate` * `conjugate_lt_conjugate'` -> `star_right_conjugate_lt_conjugate` * `conjugate_pos` -> `star_left_conjugate_pos` * `conjugate_pos'` -> `star_right_conjugate_pos` * `IsUnit.conjugate_nonneg_iff` -> `IsUnit.star_right_conjugate_nonneg_iff` * `IsUnit.conjugate_nonneg_iff'` -> `IsUnit.star_left_conjugate_nonneg_iff` `Analysis/CStarAlgebra/CFC/Order`: * `CStarAlgebra.conjugate_le_norm_smul` -> `CStarAlgebra.star_left_conjugate_le_norm_smul` * `CStarAlgebra.conjugate_le_norm_smul'` -> `CStarAlgebra.star_right_conjugate_le_norm_smul` `LinearAlgebra/Matrix/PosDef`: * `Matrix.IsUnit.posSemidef_conjugate_iff` -> `Matrix.IsUnit.posSemidef_star_right_conjugate_iff` * `Matrix.IsUnit.posSemidef_conjugate_iff'` -> `Matrix.IsUnit.posSemidef_star_left_conjugate_iff` * `Matrix.IsUnit.posDef_conjugate_iff` -> `Matrix.IsUnit.posDef_star_right_conjugate_iff` * `Matrix.IsUnit.posDef_conjugate_iff'` -> `Matrix.IsUnit.posDef_star_left_conjugate_iff` --- There are more to do, but will leave this for another PR. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-analysis
label:t-algebra$
84/54 Mathlib/Algebra/Algebra/StrictPositivity.lean,Mathlib/Algebra/Order/Ring/Star.lean,Mathlib/Algebra/Order/Star/Basic.lean,Mathlib/Analysis/CStarAlgebra/ApproximateUnit.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean,Mathlib/Analysis/CStarAlgebra/Module/Defs.lean,Mathlib/LinearAlgebra/Matrix/PosDef.lean 7 4 ['github-actions', 'j-loreaux', 'themathqueen'] nobody
1-37332
1 day ago
1-37332
1 day ago
1-75652
1 day
30675 erdOne
author:erdOne
feat(NumberTheory): order of inertia group = ramification index --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-number-theory
label:t-algebra$
71/1 Mathlib/NumberTheory/RamificationInertia/Galois.lean 1 1 ['github-actions'] nobody
1-32108
1 day ago
2-23679
2 days ago
2-28562
2 days
30697 themathqueen
author:themathqueen
chore(Algebra/Star/Unitary): rename `unitary.spectrum.unitary_conjugate` `unitary.spectrum.unitary_conjugate` and `unitary.spectrum.unitary_conjugate'` should be in the `_root_` namespace since they already have `unitary` in their name. We also rename them to `spectrum.unitary_star_conjugate_left` and `spectrum.unitary_star_conjugate_right` to match the renaming convention in #30692. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
11/6 Mathlib/Algebra/Star/Unitary.lean,Mathlib/LinearAlgebra/Matrix/HermitianFunctionalCalculus.lean 2 5 ['github-actions', 'themathqueen'] nobody
1-30382
1 day ago
2-4416
2 days ago
2-4581
2 days
30708 YaelDillies
author:YaelDillies
feat(Localization): `r / m` in the localisation is regular iff `r` is Also rename `IsLocalization.mk'_surjective` to `IsLocalization.exists_mk'_eq` because it takes the name of the lemma I need. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 87/69 Mathlib/Algebra/GCDMonoid/IntegrallyClosed.lean,Mathlib/Algebra/Group/Defs.lean,Mathlib/Algebra/Module/LocalizedModule/Basic.lean,Mathlib/Algebra/Module/LocalizedModule/Submodule.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/AlgebraicGeometry/SpreadingOut.lean,Mathlib/AlgebraicGeometry/StructureSheaf.lean,Mathlib/RingTheory/Artinian/Ring.lean,Mathlib/RingTheory/ClassGroup.lean,Mathlib/RingTheory/DedekindDomain/Factorization.lean,Mathlib/RingTheory/Etale/Kaehler.lean,Mathlib/RingTheory/FractionalIdeal/Operations.lean,Mathlib/RingTheory/Frobenius.lean,Mathlib/RingTheory/GradedAlgebra/HomogeneousLocalization.lean,Mathlib/RingTheory/Ideal/AssociatedPrime/Localization.lean,Mathlib/RingTheory/LocalProperties/Projective.lean,Mathlib/RingTheory/LocalRing/LocalSubring.lean,Mathlib/RingTheory/LocalRing/ResidueField/Ideal.lean,Mathlib/RingTheory/Localization/Algebra.lean,Mathlib/RingTheory/Localization/AsSubring.lean,Mathlib/RingTheory/Localization/AtPrime/Basic.lean,Mathlib/RingTheory/Localization/BaseChange.lean,Mathlib/RingTheory/Localization/Basic.lean,Mathlib/RingTheory/Localization/Defs.lean,Mathlib/RingTheory/Localization/FractionRing.lean,Mathlib/RingTheory/Localization/Ideal.lean,Mathlib/RingTheory/Localization/Integral.lean,Mathlib/RingTheory/Localization/Submodule.lean,Mathlib/RingTheory/RingHom/Finite.lean,Mathlib/RingTheory/RingHom/Surjective.lean,Mathlib/RingTheory/Spectrum/Prime/FreeLocus.lean,Mathlib/RingTheory/SurjectiveOnStalks.lean,Mathlib/RingTheory/Trace/Quotient.lean 33 1 ['github-actions'] nobody
1-27253
1 day ago
1-46092
1 day ago
1-46069
1 day
30722 YaelDillies
author:YaelDillies
refactor: generalise `Set.eq_empty_of_isEmpty` We don't need to know that the full type is empty, but merely the set itself. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 10/12 Mathlib/Data/Set/Basic.lean,Mathlib/Topology/Category/Profinite/CofilteredLimit.lean 2 2 ['FormulaRabbit81', 'eric-wieser', 'github-actions'] nobody
1-26919
1 day ago
1-33697
1 day ago
1-33674
1 day
30632 YaelDillies
author:YaelDillies
chore: use `grw`, `gcongr` more, controversial version This is controversial because the style guide contains the "hypotheses left of colon" rule, but I claim this rule was written without pattern-matching in mind and should therefore be updated to include an exception. Also delete a redundant instance. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 34/56 Archive/Imo/Imo1982Q1.lean,Archive/Imo/Imo2013Q5.lean,Mathlib/Algebra/Order/AbsoluteValue/Basic.lean,Mathlib/Algebra/Polynomial/BigOperators.lean,Mathlib/Algebra/Polynomial/Degree/Definitions.lean,Mathlib/MeasureTheory/Function/SimpleFuncDenseLp.lean,Mathlib/RingTheory/PowerSeries/Order.lean,Mathlib/Topology/EMetricSpace/PairReduction.lean 8 4 ['JovanGerb', 'YaelDillies', 'github-actions'] nobody
1-26263
1 day ago
4-32635
4 days ago
4-32612
4 days
30131 fpvandoorn
author:fpvandoorn
feat: alias_in attribute * A small wrapper for adding an alias of a declaration in another namespace. * application time `.afterCompilation` is necessary for `#eval` to work correctly * Docstrings are copied, jump-to-definition works (no test in the test file, but tested locally) * To be used for CW-complexes, where lemmas are frequently duplicated between `RelCWComplex` and `CWComplex`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) cc @scholzhannah t-meta 93/0 Mathlib.lean,Mathlib/Util/AliasIn.lean,MathlibTest/Util/AliasIn.lean 3 12 ['JovanGerb', 'fpvandoorn', 'github-actions'] JovanGerb
assignee:JovanGerb
1-25856
1 day ago
19-16716
19 days ago
19-16694
19 days
30678 YaelDillies
author:YaelDillies
refactor(Algebra/Quaternion): intermediate `Module` instance This `Module` instance allows me to not ungeneralise the `NoZeroSMulDivisors R ℍ[R,c₁,c₂,c₃]` in #30563. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
45/29 Mathlib/Algebra/Quaternion.lean 1 20 ['YaelDillies', 'eric-wieser', 'github-actions'] nobody
1-22638
1 day ago
1-44060
1 day ago
1-68800
1 day
27645 bjornsolheim
author:bjornsolheim
feat(Geometry/Convex/Cone): add pointed cone tensor products Define the minimal and maximal tensor product of pointed cones. Prove that the minimal tensor product is less than or equal to the maximal tensor product. --- - [ ] depends on: #25292 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry new-contributor 123/0 Mathlib.lean,Mathlib/Geometry/Convex/Cone/TensorProduct.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
1-22348
1 day ago
1-22350
1 day ago
1-24152
1 day
30441 linesthatinterlace
author:linesthatinterlace
fix(Data/List/Sort): Deprecate and replace `List.Sorted` Deprecates `Sorted` and defines new special-case predicates to be used for preorders. --- `List.Sorted` is essentially an irrelevant definition, as it is identical to List.Pairwise, and we have some results about Sorted which also always apply to Pairwise or do so under certain conditions (and vice versa). We also commonly use Sorted to talk specifically about `<` and `<=`, which can be somewhat unwieldy. This PR deprecates `Sorted` (so that there should now be no non-deprecated definitions under that namespace), and adds in `SortedLE`, `SortedLT`, `SortedGE` and `SortedGT`, which are defined analogously to `List.Nodup` for Preorders (List.Nodup is a good example of somewhere where using a special case of Pairwise works well). The vision is that API for these can be created together and for many purposes will suffice. `insertionSort` has now been moved to be independent of any of this, though theorems are provided showing that it does link to these predicates in a linear order. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 770/521 Mathlib/AlgebraicTopology/SimplexCategory/GeneratorsRelations/NormalForms.lean,Mathlib/Analysis/Convex/BetweenList.lean,Mathlib/Combinatorics/Young/YoungDiagram.lean,Mathlib/Data/Fin/Tuple/Sort.lean,Mathlib/Data/Finset/Sort.lean,Mathlib/Data/List/Nodup.lean,Mathlib/Data/List/NodupEquivFin.lean,Mathlib/Data/List/OfFn.lean,Mathlib/Data/List/Pairwise.lean,Mathlib/Data/List/Sort.lean,Mathlib/Data/Multiset/Sort.lean,Mathlib/Data/Nat/BitIndices.lean,Mathlib/Data/Nat/Factors.lean,Mathlib/LinearAlgebra/Matrix/Spectrum.lean,Mathlib/Logic/Equiv/Finset.lean,Mathlib/Logic/Equiv/Multiset.lean,Mathlib/NumberTheory/ADEInequality.lean,Mathlib/NumberTheory/Divisors.lean,Mathlib/Order/JordanHolder.lean,Mathlib/Order/Synonym.lean,Mathlib/SetTheory/Ordinal/Basic.lean,Mathlib/SetTheory/Ordinal/CantorNormalForm.lean,Mathlib/Tactic/Simproc/Factors.lean,Mathlib/Topology/Category/Profinite/Nobeling/Basic.lean,Mathlib/Topology/Category/Profinite/Nobeling/Span.lean 25 49 ['github-actions', 'linesthatinterlace', 'mathlib4-merge-conflict-bot', 'vihdzp'] nobody
1-20098
1 day ago
1-43298
1 day ago
7-35890
7 days
28818 SnirBroshi
author:SnirBroshi
feat(Data/Setoid/Basic): add theorems about lifting a function to its kernel Currently `ker_lift_injective` and `quotientKerEquivOfRightInverse` lift `f` to `ker f` in their definition. This PR makes this function available as `Setoid.kerLift f` and adds a few more theorems about it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge new-contributor 34/16 Counterexamples/AharoniKorman.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/FundamentalCone.lean,Mathlib/Topology/Separation/Hausdorff.lean 4 32 ['SnirBroshi', 'eric-wieser', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'pechersky'] pechersky
assignee:pechersky
1-18477
1 day ago
1-18477
1 day ago
53-47766
53 days
29881 joelriou
author:joelriou
refactor(CategoryTheory/ObjectProperty): IsClosedUnderLimitsOfShape This PR renames `ClosedUnderLimitsOfShape` as `ObjectProperty.IsClosedUnderLimitsOfShape`, and make it a typeclass. The stability condition of a property `P` by (co)limits of shape `J` is now expressed as `P.colimitsOfShape J ≤ P`. This facilitates the connection with the relatively new API `ColimitPresentation` #29382 (and the related `ObjectProperty.ColimitOfShape`). By using a typeclass for the stability condition, it will be possible to add instances `HasLimitsOfShape` instances for fullsubcategories. This also makes the design more parallel to what we have for the stability under (co)limits of `MorphismProperty`. --- - [x] depends on: #29903 - [x] depends on: #29851 - [x] depends on: #29843 - [x] depends on: #29849 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-category-theory 254/167 Mathlib/CategoryTheory/Limits/FullSubcategory.lean,Mathlib/CategoryTheory/Limits/Indization/Category.lean,Mathlib/CategoryTheory/Limits/Indization/Equalizers.lean,Mathlib/CategoryTheory/Limits/MorphismProperty.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean,Mathlib/CategoryTheory/ObjectProperty/ColimitsOfShape.lean,Mathlib/CategoryTheory/ObjectProperty/LimitsOfShape.lean,Mathlib/CategoryTheory/Subobject/MonoOver.lean 8 7 ['github-actions', 'jcommelin', 'joelriou', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
1-16608
1 day ago
5-12793
5 days ago
7-78142
7 days
25799 dagurtomas
author:dagurtomas
feat(CategoryTheory): the universal property of localized monoidal categories This PR provides a monoidal structure on any functor out of a localized monoidal category whose precomposition with the localization functor is monoidal --- - [x] depends on: #29564 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) --- *This PR continues the work from #24727.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/24727* t-category-theory 242/0 Mathlib.lean,Mathlib/CategoryTheory/Localization/Bifunctor.lean,Mathlib/CategoryTheory/Localization/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/Functor.lean,Mathlib/CategoryTheory/Monoidal/Multifunctor.lean,Mathlib/CategoryTheory/Monoidal/NaturalTransformation.lean 6 21 ['dagurtomas', 'github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] TwoFX
assignee:TwoFX
1-14398
1 day ago
1-15104
1 day ago
43-4652
43 days
30730 JovanGerb
author:JovanGerb
feat: new `by_cases!` tactic This PR defines the `by_cases! h : p` tactic, which is a macro for `by_cases h : p` followed by a `try push_neg at h` in the second goal. We use `try push_neg` instead of `push_neg` to make the tactic also succeed when no negation is pushed. Should there maybe be an optional linter telling you to use `by_cases` instead if possible? --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 33/0 Mathlib.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ByCases.lean,scripts/noshake.json 4 1 ['github-actions'] nobody
1-10235
1 day ago
1-12799
1 day ago
1-12840
1 day
27887 JovanGerb
author:JovanGerb
feat: `to_dual` attribute This PR defines the `to_dual` attribute for translating lemmas to their dual. This is useful in order theory and in category theory. It is built on top of the `to_additive` machinery. This PR only adds `@[to_dual]` tags in files that directly need to import `ToDual`, namely `Order/Defs/PartialOrder`, `Order/Notation` and `Combinatorics/Quiver/Basic`. Further tagging is left for (many) future PRs. This PR continues the work from #21719 Related (mathlib3) issues: - https://github.com/leanprover-community/mathlib3/issues/13461 - https://github.com/leanprover-community/mathlib3/issues/7691 Co-authored-by: @bryangingechen --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-meta 597/276 Mathlib.lean,Mathlib/Combinatorics/Quiver/Basic.lean,Mathlib/GroupTheory/Coset/Defs.lean,Mathlib/GroupTheory/FreeGroup/Basic.lean,Mathlib/GroupTheory/MonoidLocalization/Basic.lean,Mathlib/Order/Basic.lean,Mathlib/Order/Defs/PartialOrder.lean,Mathlib/Order/Notation.lean,Mathlib/Tactic.lean,Mathlib/Tactic/ToAdditive/Frontend.lean,Mathlib/Tactic/ToAdditive/GuessName.lean,Mathlib/Tactic/ToAdditive/ToDual.lean,Mathlib/Tactic/ToDual.lean,MathlibTest/toAdditive.lean,scripts/noshake.json 15 14 ['JovanGerb', 'bryangingechen', 'github-actions', 'mathlib4-merge-conflict-bot'] alexjbest
assignee:alexjbest
1-6292
1 day ago
1-6328
1 day ago
44-66071
44 days
30733 harahu
author:harahu
doc(Combinatorics): spell cliquefree as clique-free This change was initially suggested to me by Codex, as part of #30621, but it made sense to do this as a free-standing PR, since this change requires some justification, and this PR provides just that. The fact that Codex is encouraging this change does not mean much on its own, so I did my best to check the literature. Searching on Google Scholar yields a mere [four results](https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=%22cliquefree%22) for "cliquefree" and [423 results](https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=%22clique-free%22) for "clique-free". Based on these results, I think it is safe to say that "cliquefree" is quite idiosyncratic, and should be avoided. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics 12/12 Mathlib/Combinatorics/SimpleGraph/Clique.lean,Mathlib/Combinatorics/SimpleGraph/CompleteMultipartite.lean,Mathlib/Combinatorics/SimpleGraph/Extremal/Turan.lean,Mathlib/Combinatorics/SimpleGraph/FiveWheelLike.lean 4 1 ['github-actions'] nobody
1-4459
1 day ago
1-4460
1 day ago
1-4504
1 day
29257 harahu
author:harahu
doc: attach "pre", "pseudo", "semi" and "sub" as a prefixes where they are now free-standing These are all examples of [bound morphemes](https://en.wikipedia.org/wiki/Bound_and_free_morphemes) and should be attached, either in closed form or by hyphen, to some other construct. Whether to write the resulting words in closed form or with a hyphen is a stylistic choice and I am open to discussing the specifics, should that be of interest. I've made choices based on existing literature and what I personally found natural, but other opinions are welcome. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 50/50 Mathlib/Algebra/Star/NonUnitalSubsemiring.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Analysis/Normed/Field/WithAbs.lean,Mathlib/Analysis/Normed/Group/BallSphere.lean,Mathlib/Analysis/Normed/Module/Basic.lean,Mathlib/Lean/Meta/KAbstractPositions.lean,Mathlib/Lean/Meta/RefinedDiscrTree/Initialize.lean,Mathlib/MeasureTheory/Measure/Regular.lean,Mathlib/Probability/Martingale/BorelCantelli.lean,Mathlib/Topology/EMetricSpace/Basic.lean,Mathlib/Topology/EMetricSpace/Defs.lean,Mathlib/Topology/MetricSpace/Bounded.lean,Mathlib/Topology/MetricSpace/Gluing.lean,Mathlib/Topology/MetricSpace/IsometricSMul.lean,Mathlib/Topology/MetricSpace/ProperSpace.lean,Mathlib/Topology/MetricSpace/Pseudo/Defs.lean,Mathlib/Topology/MetricSpace/ThickenedIndicator.lean,Mathlib/Topology/MetricSpace/Thickening.lean,Mathlib/Topology/Metrizable/Basic.lean,Mathlib/Topology/Metrizable/Uniformity.lean,scripts/autolabel.lean 21 5 ['euprunin', 'github-actions', 'harahu', 'mathlib4-merge-conflict-bot'] JovanGerb
assignee:JovanGerb
1-3857
1 day ago
13-48129
13 days ago
48-41343
48 days
30595 winstonyin
author:winstonyin
feat: $C^n$ implicit function theorem I formalise a proof that the implicit function obtained from a $C^n$ implicit equation ($n \geq 1$) is $C^n$. Roughly speaking, given an equation $f : E \times F \to F$ that is smooth at $(a,b) : E\times F$ and whose derivative $f'$ is in some sense non-singular, then there exists a function $\phi : E \to F$ such that $\phi(a) = b$, $f(x, \phi(x)) = f(a,b)$ for all $x$ in a neighbourhood of $a$, and $\phi$ is $C^n$ at $a$. The current implicit function theorem in Mathlib is quite general and not directly applicable to many familiar scenarios. The statements added by this PR correspond to, e.g., the way the theorem is described on Wikipedia, and will be directly useful for an upcoming formalisation of the smoothness theorem for flows of ODEs. - [x] depends on: #30607 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge t-analysis 145/0 Mathlib.lean,Mathlib/Analysis/Calculus/ImplicitContDiff.lean 2 21 ['github-actions', 'grunweg', 'mathlib4-dependent-issues-bot', 'winstonyin'] grunweg
assignee:grunweg
1-2902
1 day ago
1-2902
1 day ago
3-78085
3 days
24614 JovanGerb
author:JovanGerb
chore: rename field `inf` to `min` in `Lattice` As suggested by @eric-wieser, this PR renames the `sup` and `inf` fields in `Lattice` to `max` and `min`. This means that we now can extend `Lattice` and `LinearOrder` simultaneously without ending up with duplicate fields. This should be implemented in a future PR for existing classes like `CompleteLinearOrder`. [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/.60sup.60.2F.60inf.60.20or.20.60max.60.2F.60min.60.20for.20set.20interval.20lemmas.3F) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 181/187 Mathlib/Algebra/Field/Subfield/Basic.lean,Mathlib/Algebra/Group/Subgroup/Lattice.lean,Mathlib/Algebra/Group/Submonoid/Basic.lean,Mathlib/Algebra/Group/Subsemigroup/Basic.lean,Mathlib/Algebra/Lie/Subalgebra.lean,Mathlib/Algebra/Module/Submodule/Lattice.lean,Mathlib/Algebra/Order/GroupWithZero/Canonical.lean,Mathlib/Algebra/Order/Kleene.lean,Mathlib/Algebra/Order/Ring/Idempotent.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Algebra/Ring/Subsemiring/Basic.lean,Mathlib/Algebra/Tropical/Lattice.lean,Mathlib/AlgebraicGeometry/IdealSheaf/Basic.lean,Mathlib/Analysis/BoxIntegral/Box/Basic.lean,Mathlib/Analysis/BoxIntegral/Partition/Basic.lean,Mathlib/Analysis/Convex/SimplicialComplex/Basic.lean,Mathlib/Analysis/Normed/Group/Seminorm.lean,Mathlib/Analysis/NormedSpace/ENormedSpace.lean,Mathlib/Analysis/NormedSpace/MStructure.lean,Mathlib/Analysis/Seminorm.lean,Mathlib/CategoryTheory/Groupoid/Subgroupoid.lean,Mathlib/CategoryTheory/Sites/Coverage.lean,Mathlib/CategoryTheory/Sites/Grothendieck.lean,Mathlib/CategoryTheory/Sites/Pretopology.lean,Mathlib/CategoryTheory/Sites/Sieves.lean,Mathlib/CategoryTheory/Subobject/Lattice.lean,Mathlib/CategoryTheory/Subpresheaf/Basic.lean,Mathlib/Combinatorics/Digraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Basic.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean,Mathlib/Computability/Reduce.lean,Mathlib/Data/DFinsupp/Order.lean,Mathlib/Data/Finset/Lattice/Basic.lean,Mathlib/Data/Multiset/UnionInter.lean,Mathlib/Data/Nat/PartENat.lean,Mathlib/Data/PEquiv.lean,Mathlib/Data/Real/Basic.lean,Mathlib/Data/Semiquot.lean,Mathlib/Data/Set/Basic.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/Data/Sum/Lattice.lean,Mathlib/Dynamics/Circle/RotationNumber/TranslationNumber.lean,Mathlib/Geometry/Manifold/ChartedSpace.lean,Mathlib/GroupTheory/Congruence/Defs.lean,Mathlib/LinearAlgebra/AffineSpace/AffineSubspace/Defs.lean,Mathlib/LinearAlgebra/LinearPMap.lean,Mathlib/MeasureTheory/Function/AEEqFun.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/ModelTheory/Substructures.lean,Mathlib/Order/BooleanSubalgebra.lean,Mathlib/Order/Booleanisation.lean,Mathlib/Order/CompleteLattice/Defs.lean,Mathlib/Order/Concept.lean,Mathlib/Order/ConditionallyCompleteLattice/Defs.lean,Mathlib/Order/Copy.lean,Mathlib/Order/Filter/Basic.lean,Mathlib/Order/Filter/Germ/Basic.lean,Mathlib/Order/FixedPoints.lean,Mathlib/Order/GaloisConnection/Basic.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/Hom/Order.lean,Mathlib/Order/Ideal.lean,Mathlib/Order/Interval/Basic.lean,Mathlib/Order/Lattice.lean,Mathlib/Order/Partition/Finpartition.lean,Mathlib/Order/Preorder/Finsupp.lean,Mathlib/Order/PropInstances.lean,Mathlib/Order/Sublattice.lean,Mathlib/Order/WithBot.lean,Mathlib/Probability/Process/Filtration.lean,Mathlib/RingTheory/Congruence/Basic.lean,Mathlib/RingTheory/Finiteness/Basic.lean,Mathlib/RingTheory/Finiteness/Small.lean,Mathlib/RingTheory/NonUnitalSubring/Basic.lean,Mathlib/RingTheory/NonUnitalSubsemiring/Basic.lean,Mathlib/RingTheory/TwoSidedIdeal/Lattice.lean,Mathlib/RingTheory/UniqueFactorizationDomain/FactorSet.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean,Mathlib/Topology/Algebra/Group/GroupTopology.lean,Mathlib/Topology/Algebra/Module/ClosedSubmodule.lean,Mathlib/Topology/Category/TopCat/OpenNhds.lean,Mathlib/Topology/LocallyFinsupp.lean,Mathlib/Topology/MetricSpace/BundledFun.lean,Mathlib/Topology/UniformSpace/Basic.lean 84 14 ['JovanGerb', 'bryangingechen', 'eric-wieser', 'github-actions', 'leanprover-bot', 'leanprover-community-bot-assistant', 'leanprover-community-mathlib4-bot'] nobody
0-86177
23 hours ago
1-5704
1 day ago
3-4944
3 days
26129 LessnessRandomness
author:LessnessRandomness
feat(Geometry/Euclidean/Angle/Unoriented): triangle inequality for angles This PR continues the work from #24206. Original PR: https://github.com/leanprover-community/mathlib4/pull/24206 new-contributor t-euclidean-geometry 202/15 Mathlib.lean,Mathlib/Analysis/Fourier/FiniteAbelian/Orthogonality.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Affine.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Basic.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/TriangleInequality.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean 8 83 ['JovanGerb', 'LessnessRandomness', 'Timeroot', 'github-actions', 'jsm28', 'mathlib4-merge-conflict-bot', 'themathqueen'] jsm28
assignee:jsm28
0-84261
23 hours ago
1-15709
1 day ago
121-84684
121 days
30694 themathqueen
author:themathqueen
chore(Analysis/CStarAlgebra/CFC/Order): relate section to strict positivity --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 23/20 Mathlib/Analysis/CStarAlgebra/ApproximateUnit.lean,Mathlib/Analysis/CStarAlgebra/ContinuousFunctionalCalculus/Order.lean 2 1 ['github-actions'] nobody
0-84036
23 hours ago
2-6828
2 days ago
2-6870
2 days
30209 Ruben-VandeVelde
author:Ruben-VandeVelde
feat: some TwoSidedIdeal.span lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory FLT 16/0 Mathlib/RingTheory/TwoSidedIdeal/Operations.lean 1 2 ['erdOne', 'github-actions'] erdOne
assignee:erdOne
0-81023
22 hours ago
17-5715
17 days ago
17-5750
17 days
28339 JovanGerb
author:JovanGerb
feat(gcongr): support `@[gcongr]` for `Monotone` and friends This PR adds the feature to `gcongr` that you can now tag lemmas whose conclusion is `Monotone f`, `Antitone f`, etc. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta 122/94 Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Algebra/Order/Module/Algebra.lean,Mathlib/Algebra/Order/Ring/Cast.lean,Mathlib/Algebra/Ring/Subring/Basic.lean,Mathlib/Analysis/Complex/Exponential.lean,Mathlib/Analysis/SpecialFunctions/Log/ERealExp.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Arctan.lean,Mathlib/Combinatorics/Extremal/RuzsaSzemeredi.lean,Mathlib/Data/Finsupp/Order.lean,Mathlib/Data/Multiset/Defs.lean,Mathlib/Data/Nat/Cast/Order/Basic.lean,Mathlib/Data/Rat/Cast/Order.lean,Mathlib/Data/Real/Sqrt.lean,Mathlib/LinearAlgebra/Basis/Flag.lean,Mathlib/MeasureTheory/Function/SimpleFunc.lean,Mathlib/MeasureTheory/Integral/Lebesgue/Add.lean,Mathlib/Order/Filter/Map.lean,Mathlib/Order/Hom/Basic.lean,Mathlib/Order/KrullDimension.lean,Mathlib/Tactic/GCongr/Core.lean,MathlibTest/GCongr/inequalities.lean 22 7 ['JovanGerb', 'Vierkantor', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot'] adamtopaz
assignee:adamtopaz
0-76704
21 hours ago
11-29226
11 days ago
68-72660
68 days
30212 tb65536
author:tb65536
feat(Algebra/Polynomial/Factors): Introduce predicate and basic API This PR introduces a predicate `Polynomial.Factors` that generalizes `Polynomial.Splits` beyond fields. This PR contains the definition of `Polynomial.Factors` along with most of API for `Polynomial.Splits`. The end goal is to either redefine `Polynomial.Splits` in terms of `Polynomial.Factors` or deprecate `Polynomial.Splits` entirely. Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Generalizing.20.60Polynomial.2ESplits.60.20to.20rings --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory t-algebra
label:t-algebra$
297/1 Mathlib.lean,Mathlib/Algebra/Polynomial/Factors.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/Splits.lean 4 43 ['erdOne', 'github-actions', 'kckennylau', 'tb65536'] erdOne
assignee:erdOne
0-73539
20 hours ago
16-82598
16 days ago
16-82576
16 days
29362 stepanholub
author:stepanholub
feat:(Data/List) add the notion of period of List and prove the Periodicity Lemma Add the concept of the period of a List (word, sequence) which is missing, and prove its basic nontrivial property describing under which conditions list can have two periods known as the Periodicity Lemma (aka Fine-Wilf Theorem). --- t-data new-contributor 227/0 Mathlib.lean,Mathlib/Data/List/PeriodicityLemma.lean 2 125 ['Ruben-VandeVelde', 'Timeroot', 'fpvandoorn', 'github-actions', 'madvorak', 'plp127', 'stepanholub', 'wwylele'] pechersky
assignee:pechersky
0-73121
20 hours ago
27-8177
27 days ago
45-4373
45 days
29921 mans0954
author:mans0954
refactor(RingTheory/Polynomial/SmallDegreeVieta) : Convert to {p : R[X]} (hp : p.natDegree = 2) Convert `RingTheory/Polynomial/SmallDegreeVieta` from `{a b c : R} (C a * X ^ 2 + C b * X + C c)` to `{p : R[X]} (hp : p.natDegree = 2)` (see [Zulip discussion](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/discriminants.20of.20low.20degree.20polynomials/with/538010519)) --- - [x] depends on: #29981 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 75/60 Mathlib/RingTheory/Polynomial/SmallDegreeVieta.lean 1 6 ['JovanGerb', 'github-actions', 'kckennylau', 'mans0954', 'mathlib4-dependent-issues-bot', 'vihdzp'] erdOne
assignee:erdOne
0-73120
20 hours ago
13-6397
13 days ago
14-13405
14 days
30485 jsm28
author:jsm28
feat(Geometry/Euclidean/Incenter): touchpoints are not vertices Add lemmas that touchpoints of a simplex do not equal any of the vertices (in two or more dimensions, this isn't true for a 1-simplex). --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 27/0 Mathlib/Geometry/Euclidean/Incenter.lean 1 1 ['github-actions'] JovanGerb
assignee:JovanGerb
0-73119
20 hours ago
8-73625
8 days ago
8-73602
8 days
30490 urkud
author:urkud
feat: derivative along the Lie bracket of vector fields --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 55/1 Mathlib/Analysis/Calculus/VectorField.lean 1 1 ['github-actions'] j-loreaux
assignee:j-loreaux
0-73115
20 hours ago
8-63764
8 days ago
8-63802
8 days
30494 kebekus
author:kebekus
feat: behaviour of Nevanlinna functions under multiplication Establish the behavior of Nevanlinna functions under multiplication. This material is used in [Project VD](https://github.com/kebekus/ProjectVD), which aims to formalize Value Distribution Theory for meromorphic functions on the complex plane. The formula established here is part of a larger package discussing the behavior of the Nenvanlinna height under algebraic manipulations of the functions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 236/0 Mathlib/Analysis/Complex/ValueDistribution/CharacteristicFunction.lean,Mathlib/Analysis/Complex/ValueDistribution/CountingFunction.lean,Mathlib/Analysis/Complex/ValueDistribution/ProximityFunction.lean,Mathlib/MeasureTheory/Integral/CircleAverage.lean,Mathlib/Topology/LocallyFinsupp.lean 5 1 ['github-actions'] j-loreaux
assignee:j-loreaux
0-73114
20 hours ago
8-55484
8 days ago
8-57127
8 days
30506 urkud
author:urkud
feat(ZeroLEOne): add instances for (indexed) product types --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-algebra
label:t-algebra$
10/0 Mathlib/Algebra/Order/ZeroLEOne.lean 1 4 ['YaelDillies', 'github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] joneugster
assignee:joneugster
0-73112
20 hours ago
8-18027
8 days ago
8-25561
8 days
30511 gasparattila
author:gasparattila
refactor: use `fun_prop` in `measurability` This PR changes the `measurability` tactic to use `fun_prop` for solving `Measurable` and similar goals. For backward compatibility, the `measurability` attribute is also changed to apply the `fun_prop` attribute. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 103/60 Mathlib/MeasureTheory/Constructions/BorelSpace/ContinuousLinearMap.lean,Mathlib/MeasureTheory/Constructions/Cylinders.lean,Mathlib/MeasureTheory/Function/SpecialFunctions/Inner.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/AEStronglyMeasurable.lean,Mathlib/MeasureTheory/Function/StronglyMeasurable/Basic.lean,Mathlib/MeasureTheory/Group/Arithmetic.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean,Mathlib/MeasureTheory/MeasurableSpace/Defs.lean,Mathlib/MeasureTheory/Measure/MeasureSpaceDef.lean,Mathlib/Tactic/Measurability.lean 10 3 ['gasparattila', 'github-actions'] dwrensha
assignee:dwrensha
0-73111
20 hours ago
8-14231
8 days ago
8-15222
8 days
30514 gasparattila
author:gasparattila
fix(Tactic/FunProp): use correct trace class name --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta easy 1/1 Mathlib/Tactic/FunProp/Decl.lean 1 2 ['gasparattila', 'github-actions', 'plp127'] robertylewis
assignee:robertylewis
0-73110
20 hours ago
8-13504
8 days ago
8-13536
8 days
30522 jsm28
author:jsm28
feat(Geometry/Euclidean/Angle): angles with orthogonal projections Add some lemmas that angles involving orthogonal projections are right angles. The unoriented versions abstract something used multiple times in `Mathlib.Geometry.Euclidean.Angle.Bisector` (which is thus refactored to use the new lemmas); I expect the oriented versions may be of use in future in further oriented angle bisection lemmas building on top of #30477. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-euclidean-geometry 110/15 Mathlib.lean,Mathlib/Geometry/Euclidean/Angle/Bisector.lean,Mathlib/Geometry/Euclidean/Angle/Oriented/Projection.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Projection.lean 4 1 ['github-actions'] JovanGerb
assignee:JovanGerb
0-73109
20 hours ago
7-74636
7 days ago
7-74613
7 days
30344 Deep0Thinking
author:Deep0Thinking
feat(MeasureTheory/Integral): add versions of `exists_eq_interval_average` and first mean value theorem for integrals Add the First mean value theorem for (unordered) interval integrals on ℝ. - `exists_eq_const_mul_interval_integral_of_continuous_on_of_ae_nonneg` - `exists_eq_const_mul_interval_integral_of_continuous_on_of_nonneg` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 290/41 Mathlib.lean,Mathlib/MeasureTheory/Integral/IntervalAverage.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/MeanValue.lean 3 9 ['Deep0Thinking', 'github-actions', 'plp127'] RemyDegenne
assignee:RemyDegenne
0-69062
19 hours ago
13-4087
13 days ago
13-4119
13 days
28077 ShreckYe
author:ShreckYe
feat(Data/Finset/Card): add some more Pigeonhole Principle theorems `exists_ne_map_eq_of_card_image_lt` and `not_injOn_of_card_image_lt` `exists_ne_map_eq_of_card_image_lt` is a special case of `exists_ne_map_eq_of_card_lt_of_maps_to` where `t` is `s.image f`, and `not_injOn_of_card_image_lt` is its variant using `Set.InjOn`. I ran into some cases where such theorems would save me some time. t-data maintainer-merge new-contributor 10/0 Mathlib/Data/Finset/Card.lean 1 10 ['ShreckYe', 'github-actions', 'pechersky', 'themathqueen'] pechersky
assignee:pechersky
0-67200
18 hours ago
1-76332
1 day ago
74-71175
74 days
30735 JovanGerb
author:JovanGerb
chore(without_cdot): remove all uses of `without_cdot` This PR removes all 2 uses of `without_cdot`. It is not needed anymore, because Lean automatically avoids accidental cdot capture. `without_cdot` may be deprecated in a future PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta easy 2/2 Mathlib/Tactic/CongrM.lean,Mathlib/Tactic/Use.lean 2 1 ['github-actions'] nobody
0-62486
17 hours ago
0-62486
17 hours ago
0-81437
22 hours
30729 kebekus
author:kebekus
feat: elementary lemmas aiding computations with `log⁺`, Mark II Add several elementary lemmas aiding computations with log⁺. Improve the docstrings a little. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 37/7 Mathlib/Analysis/SpecialFunctions/Log/PosLog.lean 1 7 ['eric-wieser', 'github-actions', 'kebekus'] nobody
0-60239
16 hours ago
1-15966
1 day ago
1-16004
1 day
30400 Equilibris
author:Equilibris
feat(Data/PFunctor): make M.corec' universe generic Previously `corec'` required the generating type reside in the same universe as the constructed object. This change corrects this by separating the universes. As corec takes the parameter (g : β → P (α ::: β)), (where α is a TypeVec.{u} and β is a Type u) it is forced into the same universe by how the TypeVec construction works. This means corec cant be generalised by this construction. --- A super simple change to make `corec'` univ generic. ```lean -- was def MvPFunctor.M.corec'.{u} {n : ℕ} (P : MvPFunctor.{u} (n + 1)) {α : TypeVec.{u} n} {β : Type u} (g₀ : β → P.A) (g₁ : (b : β) → P.drop.B (g₀ b) ⟹ α) (g₂ : (b : β) → P.last.B (g₀ b) → β) : β → P.M α := _ -- becomes def MvPFunctor.M.corec'.{u, v} {n : ℕ} (P : MvPFunctor.{u} (n + 1)) {α : TypeVec.{u} n} {β : Type v} (g₀ : β → P.A) (g₁ : (b : β) → P.drop.B (g₀ b) ⟹ α) (g₂ : (b : β) → P.last.B (g₀ b) → β) : β → P.M α := _ ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 5/5 Mathlib/Data/PFunctor/Multivariate/M.lean 1 6 ['Equilibris', 'alexkeizer', 'github-actions', 'vihdzp'] nobody
0-38959
10 hours ago
11-26565
11 days ago
11-26608
11 days
30584 xroblot
author:xroblot
feat(RingTheory): add `NormalClosure` --- t-ring-theory 133/0 Mathlib.lean,Mathlib/RingTheory/NormalClosure.lean 2 8 ['github-actions', 'riccardobrasca', 'xroblot'] nobody
0-38794
10 hours ago
5-35587
5 days ago
5-35582
5 days
30742 RemyDegenne
author:RemyDegenne
feat: Lipschitz function criterion for weak convergence of probability measures Weak convergence of probability measures is equivalent to the property that the integrals of every bounded Lipschitz function converge to the integral of the function against the limit measure. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 102/1 Mathlib/MeasureTheory/Measure/HasOuterApproxClosed.lean,Mathlib/MeasureTheory/Measure/Portmanteau.lean 2 1 ['github-actions'] nobody
0-34016
9 hours ago
0-48989
13 hours ago
0-49032
13 hours
30540 RemyDegenne
author:RemyDegenne
feat: convergence in distribution and continuous mapping theorem - Define convergence in distribution of random variables: this is the weak convergence of their laws. - Prove the continuous mapping theorem for convergence in distribution and continuous functions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-measure-probability 97/0 Mathlib.lean,Mathlib/MeasureTheory/Function/ConvergenceInDistribution.lean,docs/1000.yaml 3 3 ['github-actions', 'sgouezel'] nobody
0-34008
9 hours ago
0-49520
13 hours ago
2-37120
2 days
30749 harahu
author:harahu
doc(Algebra): a collection of nontrivial typo fixes This is a collection of typo fixes suggested to me by Codex. I decided to split these changes out of #30669, because I feel none of these are completely trivial to review, mostly because they require inspecting the context of the text as opposed to just the text itself. I've manually reviewed all of them to the best of my abilities and I'm reasonably sure they are all correct, and that they represent an improvement over the status quo. However, I am not an expert in Algebra, so please review with care. I suspect that there might still be quite a wide span in the difficulty of reviewing the changes in this PR, but I don't have a strong intuition for which changes herein might still be seen as relatively easy to review. I'm open to splitting this PR further should any reviewer think that is a good idea. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
14/13 Mathlib/Algebra/Algebra/Spectrum/Quasispectrum.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/Colimit/Ring.lean,Mathlib/Algebra/Field/MinimalAxioms.lean,Mathlib/Algebra/GroupWithZero/Hom.lean,Mathlib/Algebra/Homology/ComplexShapeSigns.lean,Mathlib/Algebra/Homology/HomologySequenceLemmas.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomologicalFunctor.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShiftSequence.lean,Mathlib/Algebra/Lie/CartanExists.lean 10 1 ['github-actions'] nobody
0-33204
9 hours ago
0-33225
9 hours ago
0-34383
9 hours
30666 erdOne
author:erdOne
feat(NumberTheory): every number field has a ramified prime --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra t-number-theory
label:t-algebra$
190/20 Mathlib.lean,Mathlib/NumberTheory/NumberField/Discriminant/Different.lean,Mathlib/NumberTheory/NumberField/ExistsRamified.lean,Mathlib/NumberTheory/RamificationInertia/Basic.lean,Mathlib/NumberTheory/RamificationInertia/Galois.lean,Mathlib/RingTheory/Ideal/Norm/AbsNorm.lean 6 10 ['erdOne', 'github-actions', 'xroblot'] nobody
0-33024
9 hours ago
2-23686
2 days ago
2-65330
2 days
27552 Equilibris
author:Equilibris
chore(Data/Typevec): Move variables into `variable` declaration in typevec This will be needed to allow `M.corec` to be generic across universes --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge new-contributor easy 16/10 Mathlib/Data/TypeVec.lean 1 16 ['Equilibris', 'eric-wieser', 'github-actions', 'pechersky', 'plp127'] pechersky
assignee:pechersky
0-32046
8 hours ago
0-32046
8 hours ago
64-80376
64 days
23920 YaelDillies
author:YaelDillies
feat: relation-separated sets Define a notion of separation of a set relative to a relation. This will be used to unify metric and dynamical separation. From MiscYD and LeanAPAP --- - [x] depends on: #26988 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 66/0 Mathlib.lean,Mathlib/Data/Rel/Separated.lean 2 24 ['ADedecker', 'D-Thomine', 'YaelDillies', 'b-mehta', 'github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] ADedecker
assignee:ADedecker
0-31761
8 hours ago
10-55405
10 days ago
55-37410
55 days
30737 JovanGerb
author:JovanGerb
chore(MeasureTheory/Function/SimpleFunc): deprecate `SimpleFunc.coe_le` This PR deprecates the duplicate `MeasureTheory.SimpleFunc.coe_le` of `coe_le_coe` that seems to have accidentally slipped in via #18707. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge t-measure-probability easy 3/5 Mathlib/MeasureTheory/Function/SimpleFunc.lean 1 2 ['github-actions', 'grunweg'] nobody
0-31522
8 hours ago
0-31522
8 hours ago
0-77907
21 hours
30592 kebekus
author:kebekus
feat: upgrade the log-counting function of divisors to morphism of Z-modules Observe that the log-counting function of divisors is not just an additive map, but a morphism of Z-modules. This material is used in [Project VD](https://github.com/kebekus/ProjectVD), which aims to formalize Value Distribution Theory for meromorphic functions on the complex plane. The formula established here is part of a larger package discussing the behavior of the Nenvanlinna height under algebraic manipulations of the functions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis easy 12/2 Mathlib/Analysis/Complex/ValueDistribution/CountingFunction.lean 1 5 ['github-actions', 'kebekus', 'loefflerd', 'wwylele'] nobody
0-30977
8 hours ago
6-9281
6 days ago
6-10852
6 days
30593 euprunin
author:euprunin
chore(Data/Finset): golf `powersetCard_succ_insert` using `grind` ---
Show trace profiling of powersetCard_succ_insert: 27 ms before, 54 ms after ### Trace profiling of `powersetCard_succ_insert` before PR 30593 ```diff diff --git a/Mathlib/Data/Finset/Powerset.lean b/Mathlib/Data/Finset/Powerset.lean index 360948612e..cdf67a5be6 100644 --- a/Mathlib/Data/Finset/Powerset.lean +++ b/Mathlib/Data/Finset/Powerset.lean @@ -218,6 +218,7 @@ theorem powersetCard_eq_filter {n} {s : Finset α} : ext simp [mem_powersetCard] +set_option trace.profiler true in theorem powersetCard_succ_insert [DecidableEq α] {x : α} {s : Finset α} (h : x ∉ s) (n : ℕ) : powersetCard n.succ (insert x s) = powersetCard n.succ s ∪ (powersetCard n s).image (insert x) := by ``` ``` ℹ [670/670] Built Mathlib.Data.Finset.Powerset (1.2s) info: Mathlib/Data/Finset/Powerset.lean:222:0: [Elab.async] [0.027673] elaborating proof of Finset.powersetCard_succ_insert [Elab.definition.value] [0.026806] Finset.powersetCard_succ_insert [Elab.step] [0.026396] rw [powersetCard_eq_filter, powerset_insert, filter_union, ← powersetCard_eq_filter] congr rw [powersetCard_eq_filter, filter_image] congr 1 ext t simp only [mem_powerset, mem_filter, and_congr_right_iff] intro ht have : x ∉ t := fun H => h (ht H) simp [card_insert_of_notMem this] [Elab.step] [0.026387] rw [powersetCard_eq_filter, powerset_insert, filter_union, ← powersetCard_eq_filter] congr rw [powersetCard_eq_filter, filter_image] congr 1 ext t simp only [mem_powerset, mem_filter, and_congr_right_iff] intro ht have : x ∉ t := fun H => h (ht H) simp [card_insert_of_notMem this] [Elab.step] [0.010184] congr Build completed successfully (670 jobs). ``` ### Trace profiling of `powersetCard_succ_insert` after PR 30593 ```diff diff --git a/Mathlib/Data/Finset/Powerset.lean b/Mathlib/Data/Finset/Powerset.lean index 360948612e..a4c6b0e1f2 100644 --- a/Mathlib/Data/Finset/Powerset.lean +++ b/Mathlib/Data/Finset/Powerset.lean @@ -218,18 +218,12 @@ theorem powersetCard_eq_filter {n} {s : Finset α} : ext simp [mem_powersetCard] +set_option trace.profiler true in theorem powersetCard_succ_insert [DecidableEq α] {x : α} {s : Finset α} (h : x ∉ s) (n : ℕ) : powersetCard n.succ (insert x s) = powersetCard n.succ s ∪ (powersetCard n s).image (insert x) := by rw [powersetCard_eq_filter, powerset_insert, filter_union, ← powersetCard_eq_filter] - congr - rw [powersetCard_eq_filter, filter_image] - congr 1 - ext t - simp only [mem_powerset, mem_filter, and_congr_right_iff] - intro ht - have : x ∉ t := fun H => h (ht H) - simp [card_insert_of_notMem this] + grind @[simp] lemma powersetCard_nonempty : (powersetCard n s).Nonempty ↔ n ≤ s.card := by ``` ``` ℹ [670/670] Built Mathlib.Data.Finset.Powerset (1.1s) info: Mathlib/Data/Finset/Powerset.lean:222:0: [Elab.async] [0.054375] elaborating proof of Finset.powersetCard_succ_insert [Elab.definition.value] [0.053777] Finset.powersetCard_succ_insert [Elab.step] [0.053567] rw [powersetCard_eq_filter, powerset_insert, filter_union, ← powersetCard_eq_filter] grind [Elab.step] [0.053561] rw [powersetCard_eq_filter, powerset_insert, filter_union, ← powersetCard_eq_filter] grind [Elab.step] [0.050257] grind Build completed successfully (670 jobs). ```
--- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/)
t-data maintainer-merge 1/8 Mathlib/Data/Finset/Powerset.lean 1 5 ['JovanGerb', 'github-actions', 'grunweg', 'pechersky'] nobody
0-30821
8 hours ago
5-44829
5 days ago
6-3797
6 days
30589 euprunin
author:euprunin
chore(Data/List/Perm): golf `Perm.bagInter_right` using `grind` ---
Show trace profiling of Perm.bagInter_right: 43 ms before, 134 ms after ### Trace profiling of `Perm.bagInter_right` before PR 30589 ```diff diff --git a/Mathlib/Data/List/Perm/Lattice.lean b/Mathlib/Data/List/Perm/Lattice.lean index 96c0389c29..b71bc44f7f 100644 --- a/Mathlib/Data/List/Perm/Lattice.lean +++ b/Mathlib/Data/List/Perm/Lattice.lean @@ -26,6 +26,7 @@ open Perm (swap) variable [DecidableEq α] +set_option trace.profiler true in theorem Perm.bagInter_right {l₁ l₂ : List α} (t : List α) (h : l₁ ~ l₂) : l₁.bagInter t ~ l₂.bagInter t := by induction h generalizing t with ``` ``` ℹ [454/454] Built Mathlib.Data.List.Perm.Lattice (769ms) info: Mathlib/Data/List/Perm/Lattice.lean:30:0: [Elab.async] [0.044658] elaborating proof of List.Perm.bagInter_right [Elab.definition.value] [0.043499] List.Perm.bagInter_right [Elab.step] [0.042758] induction h generalizing t with | nil => simp | cons x => by_cases x ∈ t <;> simp [*] | swap x y => by_cases h : x = y · simp [h] by_cases xt : x ∈ t <;> by_cases yt : y ∈ t · simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap] · simp [xt, yt, mt mem_of_mem_erase] · simp [xt, yt, mt mem_of_mem_erase] · simp [xt, yt] | trans _ _ ih_1 ih_2 => exact (ih_1 _).trans (ih_2 _) [Elab.step] [0.042746] induction h generalizing t with | nil => simp | cons x => by_cases x ∈ t <;> simp [*] | swap x y => by_cases h : x = y · simp [h] by_cases xt : x ∈ t <;> by_cases yt : y ∈ t · simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap] · simp [xt, yt, mt mem_of_mem_erase] · simp [xt, yt, mt mem_of_mem_erase] · simp [xt, yt] | trans _ _ ih_1 ih_2 => exact (ih_1 _).trans (ih_2 _) [Elab.step] [0.042738] induction h generalizing t with | nil => simp | cons x => by_cases x ∈ t <;> simp [*] | swap x y => by_cases h : x = y · simp [h] by_cases xt : x ∈ t <;> by_cases yt : y ∈ t · simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap] · simp [xt, yt, mt mem_of_mem_erase] · simp [xt, yt, mt mem_of_mem_erase] · simp [xt, yt] | trans _ _ ih_1 ih_2 => exact (ih_1 _).trans (ih_2 _) [Elab.step] [0.034137] by_cases h : x = y · simp [h] by_cases xt : x ∈ t <;> by_cases yt : y ∈ t · simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap] · simp [xt, yt, mt mem_of_mem_erase] · simp [xt, yt, mt mem_of_mem_erase] · simp [xt, yt] [Elab.step] [0.034116] by_cases h : x = y · simp [h] by_cases xt : x ∈ t <;> by_cases yt : y ∈ t · simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap] · simp [xt, yt, mt mem_of_mem_erase] · simp [xt, yt, mt mem_of_mem_erase] · simp [xt, yt] [Elab.step] [0.010183] · simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap] [Elab.step] [0.010173] simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap] [Elab.step] [0.010168] simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap] [Elab.step] [0.010161] simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap] Build completed successfully (454 jobs). ``` ### Trace profiling of `Perm.bagInter_right` after PR 30589 ```diff diff --git a/Mathlib/Data/List/Perm/Lattice.lean b/Mathlib/Data/List/Perm/Lattice.lean index 96c0389c29..e2a27287d8 100644 --- a/Mathlib/Data/List/Perm/Lattice.lean +++ b/Mathlib/Data/List/Perm/Lattice.lean @@ -26,20 +26,10 @@ open Perm (swap) variable [DecidableEq α] +set_option trace.profiler true in theorem Perm.bagInter_right {l₁ l₂ : List α} (t : List α) (h : l₁ ~ l₂) : l₁.bagInter t ~ l₂.bagInter t := by - induction h generalizing t with - | nil => simp - | cons x => by_cases x ∈ t <;> simp [*] - | swap x y => - by_cases h : x = y - · simp [h] - by_cases xt : x ∈ t <;> by_cases yt : y ∈ t - · simp [xt, yt, mem_erase_of_ne h, mem_erase_of_ne (Ne.symm h), erase_comm, swap] - · simp [xt, yt, mt mem_of_mem_erase] - · simp [xt, yt, mt mem_of_mem_erase] - · simp [xt, yt] - | trans _ _ ih_1 ih_2 => exact (ih_1 _).trans (ih_2 _) + induction h generalizing t with grind theorem Perm.bagInter_left (l : List α) {t₁ t₂ : List α} (p : t₁ ~ t₂) : l.bagInter t₁ = l.bagInter t₂ := by ``` ``` ℹ [454/454] Built Mathlib.Data.List.Perm.Lattice (848ms) info: Mathlib/Data/List/Perm/Lattice.lean:30:0: [Elab.async] [0.134701] elaborating proof of List.Perm.bagInter_right [Elab.definition.value] [0.133799] List.Perm.bagInter_right [Elab.step] [0.133622] induction h generalizing t with grind [Elab.step] [0.133610] induction h generalizing t with grind [Elab.step] [0.133599] induction h generalizing t with grind [Elab.step] [0.052692] grind [Elab.step] [0.064967] grind info: Mathlib/Data/List/Perm/Lattice.lean:32:34: [Elab.async] [0.017325] Lean.addDecl [Kernel] [0.017314] ✅️ typechecking declarations [List.Perm.bagInter_right._proof_1_3] Build completed successfully (454 jobs). ```
--- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/)
t-data maintainer-merge 1/12 Mathlib/Data/List/Perm/Lattice.lean 1 9 ['JovanGerb', 'euprunin', 'github-actions', 'grunweg', 'pechersky'] grunweg
assignee:grunweg
0-30744
8 hours ago
5-44963
5 days ago
5-72433
5 days
30721 YaelDillies
author:YaelDillies
feat(ENNReal): equality from comparing with nnreals And rename the existing lemma as it is ambiguous. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 23/5 Mathlib/Data/ENNReal/Inv.lean,Mathlib/Order/WithBot.lean,Mathlib/Topology/Instances/ENNReal/Lemmas.lean 3 1 ['FormulaRabbit81', 'github-actions'] nobody
0-28422
7 hours ago
1-34113
1 day ago
1-34090
1 day
30276 EtienneC30
author:EtienneC30
feat: computations with the matrix associated to a sesquilinear form --- - [ ] depends on: #30108 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
23/14 Mathlib/LinearAlgebra/Matrix/BilinearForm.lean,Mathlib/LinearAlgebra/Matrix/SesquilinearForm.lean 2 2 ['github-actions', 'mathlib4-dependent-issues-bot'] nobody
0-28370
7 hours ago
0-28372
7 hours ago
1-84647
1 day
30714 harahu
author:harahu
doc(Analysis): fix typos Found with help from Codex, curated by me. I've tried to limit the PR to changes that are easy to verify. Should you find it difficult to review any particular part of this PR, know that I have nothing against trimming this PR down in favor of smaller free-standing PRs for the difficult-to-review parts. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 15/15 Mathlib/Analysis/Calculus/Gradient/Basic.lean,Mathlib/Analysis/Distribution/ContDiffMapSupportedIn.lean,Mathlib/Analysis/ODE/PicardLindelof.lean,Mathlib/Analysis/Polynomial/Basic.lean,Mathlib/Analysis/Real/OfDigits.lean,Mathlib/Analysis/SpecialFunctions/Stirling.lean,Mathlib/Analysis/SpecialFunctions/Trigonometric/Deriv.lean 7 1 ['github-actions'] nobody
0-27017
7 hours ago
1-38818
1 day ago
1-40741
1 day
30710 harahu
author:harahu
doc(RingTheory): fix typos Found with help from Codex, curated by me. I've tried to limit the PR to changes that are easy to verify. Should you find it difficult to review any particular part of this PR, know that I have nothing against trimming this PR down in favor of smaller free-standing PRs for the difficult-to-review parts. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 13/13 Mathlib/RingTheory/DividedPowers/Basic.lean,Mathlib/RingTheory/FractionalIdeal/Basic.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Basic.lean,Mathlib/RingTheory/Ideal/MinimalPrime/Localization.lean,Mathlib/RingTheory/Ideal/Pointwise.lean,Mathlib/RingTheory/Localization/Away/Basic.lean,Mathlib/RingTheory/MvPowerSeries/Order.lean,Mathlib/RingTheory/PowerSeries/Restricted.lean,Mathlib/RingTheory/Valuation/Minpoly.lean 9 1 ['github-actions'] nobody
0-26990
7 hours ago
1-42675
1 day ago
1-42909
1 day
30669 harahu
author:harahu
doc(Algebra): typo fixes Found with help from Codex, curated by me. I've tried to limit the PR to changes that are easy to verify. Should you find it difficult to review any particular part of this PR, know that I have nothing against trimming this PR down in favor of smaller free-standing PRs for the difficult-to-review parts. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra
label:t-algebra$
48/48 Mathlib/Algebra/AddConstMap/Basic.lean,Mathlib/Algebra/BigOperators/Pi.lean,Mathlib/Algebra/BrauerGroup/Defs.lean,Mathlib/Algebra/CharZero/AddMonoidHom.lean,Mathlib/Algebra/Field/Action/ConjAct.lean,Mathlib/Algebra/Field/Power.lean,Mathlib/Algebra/Field/ULift.lean,Mathlib/Algebra/GroupWithZero/Associated.lean,Mathlib/Algebra/Homology/ComplexShapeSigns.lean,Mathlib/Algebra/Homology/DerivedCategory/Basic.lean,Mathlib/Algebra/Homology/DerivedCategory/ShortExact.lean,Mathlib/Algebra/Homology/Factorizations/Basic.lean,Mathlib/Algebra/Homology/HomologySequenceLemmas.lean,Mathlib/Algebra/Homology/HomotopyCategory/HomComplex.lean,Mathlib/Algebra/Homology/HomotopyCategory/MappingCone.lean,Mathlib/Algebra/Homology/HomotopyCategory/ShortExact.lean,Mathlib/Algebra/Homology/HomotopyCategory/SingleFunctors.lean,Mathlib/Algebra/Homology/HomotopyCategory/Triangulated.lean,Mathlib/Algebra/Homology/HomotopyCofiber.lean,Mathlib/Algebra/Homology/Localization.lean,Mathlib/Algebra/Lie/Free.lean,Mathlib/Algebra/Lie/InvariantForm.lean,Mathlib/Algebra/Lie/Quotient.lean,Mathlib/Algebra/Lie/Sl2.lean,Mathlib/Algebra/Lie/Submodule.lean,Mathlib/Algebra/Lie/TraceForm.lean,Mathlib/Algebra/MonoidAlgebra/Support.lean,Mathlib/Algebra/Order/Ring/Nat.lean,Mathlib/Algebra/Polynomial/Lifts.lean,Mathlib/Algebra/Polynomial/RuleOfSigns.lean,Mathlib/Algebra/SkewMonoidAlgebra/Single.lean,Mathlib/Algebra/SkewMonoidAlgebra/Support.lean 32 1 ['github-actions'] nobody
0-26971
7 hours ago
2-35213
2 days ago
2-39861
2 days
30398 joelriou
author:joelriou
feat(Algebra/Category/ModuleCat/Sheaf): `O_S ⟶ f_* O_X` and `f^* O_S ≅ O_X` --- - [x] depends on: #30403 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebraic-geometry t-category-theory 193/4 Mathlib.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/Free.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackContinuous.lean,Mathlib/Algebra/Category/ModuleCat/Sheaf/PullbackFree.lean,Mathlib/CategoryTheory/Limits/Preserves/Shapes/Products.lean 5 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
0-24737
6 hours ago
0-24757
6 hours ago
0-24752
6 hours
29517 pechersky
author:pechersky
feat(RingTheory/Torsion): torsion = union of roots of unity with additional API for Associates and rootsOfUnity sups --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) - [x] depends on: #29988 - [x] depends on: #29989 - [x] depends on: #29990 - [x] depends on: #29991 t-algebra
label:t-algebra$
156/8 Mathlib.lean,Mathlib/RingTheory/RootsOfUnity/Basic.lean,Mathlib/RingTheory/RootsOfUnity/PrimitiveRoots.lean,Mathlib/RingTheory/Torsion.lean 4 11 ['chrisflav', 'github-actions', 'kckennylau', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] chrisflav
assignee:chrisflav
0-24209
6 hours ago
0-24236
6 hours ago
27-51856
27 days
29072 yury-harmonic
author:yury-harmonic
feat({Nat,Int}/ModEq): add lemmas --- I'm not sure that I named these lemmas correctly. Suggestions about better names are welcome! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data 189/26 Mathlib/Data/Int/ModEq.lean,Mathlib/Data/Nat/ModEq.lean 2 7 ['eric-wieser', 'github-actions', 'urkud', 'yury-harmonic'] nobody
0-22890
6 hours ago
0-22951
6 hours ago
0-78158
21 hours
29781 chrisflav
author:chrisflav
feat(RingTheory/Finiteness): a finite and finitely presented algebra is finitely presented We show that if `S` is finite as a module over `R` and finitely presented as an algebra over `R`, then it is finitely presented as a module over `R`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory 150/0 Mathlib.lean,Mathlib/Algebra/Algebra/Tower.lean,Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/RingTheory/Finiteness/ModuleFinitePresentation.lean,Mathlib/RingTheory/Polynomial/Basic.lean 5 16 ['chrisflav', 'erdOne', 'github-actions'] erdOne
assignee:erdOne
0-19695
5 hours ago
33-15377
1 month ago
33-15355
33 days
23835 chrisflav
author:chrisflav
feat(Topology): cardinality of connected components is bounded by cardinality of fiber We show that if `f : X → Y` is an open and closed map to `Y` and `Y` is connected, the number of connected components of `X` is bounded by the cardinality of the fiber of any point. In particular, if `Y` has finitely many connected components and `f` finite fibers, also `X` as finitely many connected components. From Pi1. --- - [x] depends on: #23849 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 242/1 Mathlib.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/SetTheory/Cardinal/Finite.lean,Mathlib/Topology/Clopen.lean,Mathlib/Topology/Connected/CardComponents.lean,Mathlib/Topology/Connected/Clopen.lean 6 5 ['chrisflav', 'github-actions', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot'] grunweg
assignee:grunweg
0-19629
5 hours ago
64-30291
2 months ago
66-24316
66 days
30389 euprunin
author:euprunin
fix: correctly apply `hint` priority (was always set to default 1000 due to a bug) Fixes #29831. In addition to fixing the bug, this PR also adjusts the (now-working) tactic priorities to ensure that: * `bound` is tested _after_ `aesop` (`bound` calls `aesop` and is therefore stronger) * `group` is tested _after_ `ring` (`group` calls `ring` and is therefore stronger) A bug in the parsing code below caused the priority value to be ignored, resulting in all hints using the default priority of 1000 regardless of the `register_hint` priority parameter: ```lean elab (name := registerHintStx) "register_hint" p:("(" "priority" ":=" num ")")? tac:tactic : command => liftTermElabM do -- remove comments let prio := match p with | some stx => match stx.raw[3]?.bind Syntax.isNatLit? with | some n => n | none => 1000 | none => 1000 let tac : TSyntax `tactic := ⟨tac.raw.copyHeadTailInfoFrom .missing⟩ addHint prio tac ``` Fixed by simplifying the syntax to take a mandatory numeric priority argument and extracting it directly via `prio.raw.isNatLit?`, removing the index-based parsing and the silent fallback to 1000. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta bug 81/46 Mathlib/Tactic/Abel.lean,Mathlib/Tactic/Bound.lean,Mathlib/Tactic/Common.lean,Mathlib/Tactic/ComputeDegree.lean,Mathlib/Tactic/Field.lean,Mathlib/Tactic/FieldSimp.lean,Mathlib/Tactic/Finiteness.lean,Mathlib/Tactic/GCongr.lean,Mathlib/Tactic/Group.lean,Mathlib/Tactic/Hint.lean,Mathlib/Tactic/Linarith.lean,Mathlib/Tactic/NoncommRing.lean,Mathlib/Tactic/NormNum/Core.lean,Mathlib/Tactic/Positivity/Core.lean,Mathlib/Tactic/Ring/RingNF.lean,MathlibTest/hint.lean 16 5 ['BoltonBailey', 'euprunin', 'github-actions', 'mathlib4-merge-conflict-bot'] nobody
0-18539
5 hours ago
0-18558
5 hours ago
11-53593
11 days
28241 alreadydone
author:alreadydone
chore(Data): `SetLike Finset` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge 57/67 Counterexamples/AharoniKorman.lean,Mathlib/Algebra/BigOperators/Finprod.lean,Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean,Mathlib/Algebra/Module/FinitePresentation.lean,Mathlib/Algebra/Squarefree/Basic.lean,Mathlib/Combinatorics/Additive/RuzsaCovering.lean,Mathlib/Combinatorics/Additive/VerySmallDoubling.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkCounting.lean,Mathlib/Data/DFinsupp/Defs.lean,Mathlib/Data/Finset/Attach.lean,Mathlib/Data/Finset/Defs.lean,Mathlib/Data/Finset/Insert.lean,Mathlib/Data/Finset/Union.lean,Mathlib/FieldTheory/Finite/GaloisField.lean,Mathlib/FieldTheory/Perfect.lean,Mathlib/GroupTheory/Perm/Centralizer.lean,Mathlib/GroupTheory/Perm/Cycle/Basic.lean,Mathlib/LinearAlgebra/Finsupp/Supported.lean,Mathlib/LinearAlgebra/LinearIndependent/Basic.lean,Mathlib/LinearAlgebra/LinearIndependent/Defs.lean,Mathlib/MeasureTheory/Integral/IntegrableOn.lean,Mathlib/ModelTheory/Semantics.lean,Mathlib/Order/CountableDenseLinearOrder.lean,Mathlib/Probability/Independence/Kernel.lean,Mathlib/RingTheory/Ideal/Quotient/Index.lean,Mathlib/RingTheory/IntegralClosure/IsIntegral/Basic.lean,Mathlib/RingTheory/Spectrum/Prime/Polynomial.lean,Mathlib/Topology/Separation/Basic.lean 28 30 ['Vierkantor', 'alreadydone', 'eric-wieser', 'fpvandoorn', 'github-actions', 'j-loreaux', 'leanprover-bot', 'mathlib4-merge-conflict-bot', 'pechersky'] pechersky
assignee:pechersky
0-16500
4 hours ago
2-11226
2 days ago
50-76477
50 days
29728 ADA-Projects
author:ADA-Projects
feat(Topology/KrullDimension): add subspace dimension inequality This PR extends topological Krull dimension theory with basic results about subspaces. - Add mapIrreducibleClosed function for canonical maps between irreducible closed sets - Prove injectivity and strict monotonicity of these maps - Establish partial order structure on IrreducibleCloseds - Prove topKrullDim_subspace_le theorem showing dim(Y) ≤ dim(X) for subspaces **Update (per reviewer feedback):** Reorganized code structure as requested: - Moved `IrreducibleCloseds` extensions from `KrullDimension.lean` to `Sets/Closeds.lean` - This includes `PartialOrder` instance, `map` functions, and embedding lemmas - Better modularity: other files can now use `IrreducibleCloseds` without importing Krull dimension theory The main result `topologicalKrullDim_subspace_le` remains the same - any subspace Y has dim(Y) ≤ dim(X). Some sections of this code (and documentation) were generated with the help of Gemini. **Update 2** Addressed reviewer feedback with the following improvements: - Simplify `IrreducibleCloseds.map` to work with any continuous function (no longer requires closed maps) - Add coe_map lemma - Rename lemmas from `mapOfEmbedding_*` to `map_*_of_isEmbedding` for consistency with Mathlib naming conventions - Use `inferInstance` for PartialOrder instance on IrreducibleCloseds - Merge variable declarations in Sets/Closeds.lean - Add necessary imports (Topology.Defs.Induced) - Open Topology namespace for cleaner code - Remove unnecessary wrappers in 'Sets/Closeds.lean' **Update 3** Addressed and integrated reviewer feedback: - Use IsInducing instead of IsEmbedding in dimension theorems - Rename map_*_of_isEmbedding to map_*_of_isInducing - Simplify map_injective_of_isInducing proof using SetLike.coe_injective - Simplify map_strictMono_of_isInducing using Monotone.strictMono_of_injective - Add deprecation alias for IsClosedEmbedding.topologicalKrullDim_le - Remove redundant PartialOrder instance (already inferred) The main theorem `topologicalKrullDim_subspace_le` remains unchanged. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge new-contributor t-topology 63/30 Mathlib/Topology/KrullDimension.lean,Mathlib/Topology/Sets/Closeds.lean 2 45 ['ADA-Projects', 'erdOne', 'fpvandoorn', 'github-actions', 'jcommelin', 'kim-em', 'mathlib4-merge-conflict-bot'] erdOne
assignee:erdOne
0-14235
3 hours ago
0-80750
22 hours ago
22-28463
22 days
25780 emilyriehl
author:emilyriehl
feat: the homotopy category functor preserves products This proves that the homotopy category construction defines a lax monoidal functor from simplicial sets to categories. In particular, simplicially enriched categories have quotient categorically enriched categories, which might be thought of as "homotopy bicategories." Co-authored-by: Dominic Verity , Bhavik Mehta , Thomas Murrills , and Andrew Yang . --- - [x] depends on: #27576 *This PR continues the work from #25010.* *Original PR: https://github.com/leanprover-community/mathlib4/pull/25010* t-algebraic-topology infinity-cosmos t-category-theory 193/16 Mathlib/AlgebraicTopology/SimplexCategory/Defs.lean,Mathlib/AlgebraicTopology/SimplicialSet/Nerve.lean,Mathlib/AlgebraicTopology/SimplicialSet/NerveAdjunction.lean,Mathlib/AlgebraicTopology/SimplicialSet/StdSimplex.lean,Mathlib/CategoryTheory/Category/ULift.lean,Mathlib/CategoryTheory/ComposableArrows.lean,Mathlib/CategoryTheory/Limits/Preserves/Basic.lean,Mathlib/CategoryTheory/Limits/Shapes/BinaryProducts.lean,Mathlib/CategoryTheory/Monoidal/Cartesian/Basic.lean,Mathlib/Order/Hom/Basic.lean 10 15 ['emilyriehl', 'github-actions', 'joelriou', 'leanprover-community-bot-assistant', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] joelriou
assignee:joelriou
0-13729
3 hours ago
6-10161
6 days ago
60-67803
60 days
30269 joelriou
author:joelriou
refactor(CategoryTheory/Generator): use ObjectProperty instead of Set In certain applications (see #30247), it becomes unpractical to have certains notions like `IsSeparating` defined for `Set C`, while the API for the relatively new `ObjectProperty` is expanding. In this PR, we move the definition of `IsSeparating` to the `ObjectProperty` namespace. --- - [x] depends on: #30294 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory 447/305 Mathlib/Algebra/Category/ModuleCat/AB.lean,Mathlib/Algebra/Category/ModuleCat/Presheaf/Generator.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/EnoughInjectives.lean,Mathlib/CategoryTheory/Abelian/GrothendieckCategory/ModuleEmbedding/GabrielPopescu.lean,Mathlib/CategoryTheory/Adjunction/AdjointFunctorTheorems.lean,Mathlib/CategoryTheory/Comma/StructuredArrow/Small.lean,Mathlib/CategoryTheory/Generator/Basic.lean,Mathlib/CategoryTheory/Generator/HomologicalComplex.lean,Mathlib/CategoryTheory/Generator/Indization.lean,Mathlib/CategoryTheory/Generator/Preadditive.lean,Mathlib/CategoryTheory/Generator/Presheaf.lean,Mathlib/CategoryTheory/Generator/Sheaf.lean 12 7 ['github-actions', 'joelriou', 'mathlib4-dependent-issues-bot', 'robin-carlier'] robin-carlier
assignee:robin-carlier
0-11984
3 hours ago
0-11984
3 hours ago
12-74567
12 days
30652 urkud
author:urkud
chore: generalize an instance to `ContinuousConstSMul` --- Cleaning up old branches. I have no specific applications in mind right now. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-topology 4/3 Mathlib/Topology/Algebra/Module/FiniteDimension.lean 1 11 ['eric-wieser', 'github-actions', 'j-loreaux', 'leanprover-bot', 'leanprover-community-mathlib4-bot', 'urkud'] nobody
0-9627
2 hours ago
2-83223
2 days ago
3-9789
3 days
30754 Jlh18
author:Jlh18
feat (CategoryTheory/Comma/Over/Pushforward): define pushforwards Define what it means to be a pushforward, what it means to have pushforwards, and the pullback/pushforward adjunction when all pushforwards exist. This is related to PRs #30375 and PR #29810 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-category-theory RFC 99/2 Mathlib.lean,Mathlib/CategoryTheory/Comma/Over/Pullback.lean,Mathlib/CategoryTheory/Comma/Over/Pushforward.lean 3 2 ['github-actions', 'joelriou'] nobody
0-5890
1 hour ago
0-5890
1 hour ago
0-15336
4 hours
30753 JovanGerb
author:JovanGerb
chore: remove more instance fields This PR is a follow up on #30734, doing some cases that weren't done in that PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 56/136 Mathlib/Algebra/Ring/ULift.lean,Mathlib/Algebra/RingQuot.lean,Mathlib/Algebra/Star/Pointwise.lean,Mathlib/Analysis/Matrix.lean,Mathlib/Geometry/Convex/Cone/Basic.lean,Mathlib/NumberTheory/ArithmeticFunction.lean 6 4 ['github-actions', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] nobody
0-5284
1 hour ago
0-5284
1 hour ago
0-20945
5 hours
30615 yury-harmonic
author:yury-harmonic
feat: better `norm_num` for `rpow` - Use recently added `Nat.nthRoot` to make `(a : ℝ) ^ (b : ℝ)` work for rational `a ≥ 0` and `b`. - Simplify the logic by using `.eqTrans`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis 122/39 Mathlib/Analysis/SpecialFunctions/Pow/Real.lean,MathlibTest/norm_num_rpow.lean 2 12 ['eric-wieser', 'github-actions', 'pechersky', 'yury-harmonic'] nobody
0-4903
1 hour ago
5-3392
5 days ago
5-3451
5 days
28837 yury-harmonic
author:yury-harmonic
feat(ValMinAbs): add lemmas --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge 24/6 Mathlib/Data/ZMod/ValMinAbs.lean 1 10 ['github-actions', 'pechersky', 'yury-harmonic'] pechersky
assignee:pechersky
0-4719
1 hour ago
0-9162
2 hours ago
55-68948
55 days
28001 daefigueroa
author:daefigueroa
feat(Dynamics): add results on topologically transitive monoid actions We define topological transitivity for monoid actions on topological spaces, prove basic facts about topologically transitive actions and give some characterizations of topological transitivity. --- This contribution was created as part of the Utrecht Summerschool "Formalizing Mathematics in Lean" in July 2025. - [ ] depends on: #28000 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-dynamics 108/0 Mathlib.lean,Mathlib/Dynamics/Flow.lean,Mathlib/Dynamics/Transitive.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
0-3287
54 minutes ago
3-43668
3 days ago
3-48223
3 days
30758 Timeroot
author:Timeroot
chore: tag abs_inv and abs_div with grind= --- [![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/Order/Field/Basic.lean 1 n/a ['github-actions'] nobody
0-3048
50 minutes ago
unknown
unknown
30690 grunweg
author:grunweg
style(Order): fix whitespace Extracted from #30658. Found by extending the commandStart linter to proof bodies. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-order 69/69 Mathlib/Order/Basic.lean,Mathlib/Order/Bounds/Image.lean,Mathlib/Order/Defs/PartialOrder.lean,Mathlib/Order/Filter/Cocardinal.lean,Mathlib/Order/Heyting/Basic.lean,Mathlib/Order/KonigLemma.lean,Mathlib/Order/Max.lean,Mathlib/Order/Minimal.lean,Mathlib/Order/Monotone/Basic.lean,Mathlib/Order/PiLex.lean,Mathlib/Order/RelClasses.lean,Mathlib/Order/SetIsMax.lean,Mathlib/Order/SetNotation.lean,Mathlib/Order/WithBot.lean 14 1 ['github-actions'] nobody
0-2166
36 minutes ago
2-16654
2 days ago
2-16690
2 days
30380 CBirkbeck
author:CBirkbeck
Ixx summation filters We prove some results about sums over intervals of the form Ixx which are needed for defining the Eisenstein series E2 (see #26014). We also define these as summation filters. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-topology 241/3 Mathlib.lean,Mathlib/Data/Int/Interval.lean,Mathlib/NumberTheory/IntervalSums.lean,Mathlib/Order/Filter/AtTopBot/Finset.lean,Mathlib/Topology/Algebra/InfiniteSum/Defs.lean,Mathlib/Topology/Algebra/Monoid/Defs.lean 6 45 ['CBirkbeck', 'github-actions', 'loefflerd'] nobody
0-1861
31 minutes ago
5-18109
5 days ago
6-8913
6 days
29788 robertmaxton42
author:robertmaxton42
feat (Topology): adds bundled continuous maps for sum, sigma, subtype, mapsto, inclusion Adds a collection of bundled continuous maps and homeomorphisms, and helper lemmas for working with their compositions. Bundling of existing continuity lemmas: * `ContinuousMap.subtypeVal` * `ContinuousMap.inl` and `.inr`; `ContinuousMap.sum` bundles `Continuous.sumElim`; `ContinuousMap.sumMap`, which is a quotient map when both components are quotient maps * `ContinuousMap.sigmaMap`, which is a quotient map when given a family of quotient maps * `ContinuousMap.mapsTo` bundles `ContinuousOn.restrict_mapsTo` New functions: * `ContinuousMap.preimageValIncl : C(s ↓∩ t, t)` and `.inclPreimageVal C(s, t ↓∩ s)`, and their unbundled functions in `Set` * `Homeomorph.Set.preimageVal` witnesses that the two are opposite directions of a homeomorphism * Descending from a coherent set of subspaces is a quotient map The primary use for these bundled maps is easy composition and the ability to introduce them by rewriting right-to-left: it is much more convenient to write `subtypeVal.comp _` than to use either the anonymous constructor (which doesn't work in any position without an expected type) or `ContinuousMap.mk` (which will disappear as soon as it is coerced to a function, making it difficult to use in mixed-categorical contexts where many maps can only be reduced by introducing a composition with some other map.) This PR is part of a family of PRs that ultimately construct transformations in both directions between the concrete `Topology.RelCWComplex` and abstract `TopCat.RelativeCWComplex`. `.mapsTo` in particular bundles together a couple of potentially nontrivial proofs in a way that makes them easy to refer to later; I use it and `.subtypeVal` particularly heavily later in a dependent PR to build the cell inclusion maps on both sides of the equivalence. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import 226/3 Mathlib/Data/Set/Subset.lean,Mathlib/Topology/Category/TopCat/Limits/Products.lean,Mathlib/Topology/Coherent.lean,Mathlib/Topology/Constructions.lean,Mathlib/Topology/Constructions/SumProd.lean,Mathlib/Topology/ContinuousMap/Basic.lean,scripts/noshake.json 7 6 ['adamtopaz', 'github-actions', 'robertmaxton42'] adamtopaz
assignee:adamtopaz
0-1618
26 minutes ago
17-70637
17 days ago
32-66717
32 days
30681 fbarroero
author:fbarroero
feat(Analysis/SpecialFunctions/Log): log_prod for Lists and Multisets We add ``` lemma log_list_prod {l : List ℝ} (h : ∀ x ∈ l, x ≠ 0) : log l.prod = (l.map (fun x ↦ log x)).sum ``` and ``` lemma log_multiset_prod {s : Multiset ℝ} (h : ∀ x ∈ s, x ≠ 0) : log s.prod = (s.map (fun x ↦ log x)).sum ``` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) 29/11 Mathlib/Algebra/BigOperators/Group/Multiset/Defs.lean,Mathlib/Analysis/Meromorphic/FactorizedRational.lean,Mathlib/Analysis/SpecialFunctions/Log/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/NormLeOne.lean,Mathlib/Probability/Moments/Basic.lean 5 3 ['eric-wieser', 'github-actions', 'riccardobrasca'] nobody
0-267
4 minutes ago
2-23521
2 days ago
2-23498
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
26765 KiringYJ
author:KiringYJ
feat(MeasureTheory/PiSystem): add π-λ theorem and SetLike instance Add two small features to `MeasureTheory/PiSystem`: 1. SetLike instance `instance : SetLike (DynkinSystem α) (Set α)` This lets us write `s ⊆ d` and `t ∈ d` for a DynkinSystem `d`, matching usual mathlib style. 2. `DynkinSystem.pi_lambda` lemma Classical π‑λ theorem: if a π‑system `s` is contained in a Dynkin system `d`, every set measurable for `σ(s)` is also in `d`. Currently, mathlib exposes this result only indirectly (e.g. via `generateFrom_eq`). Although logically equivalent, it is not obvious at first glance that those lemmas are the π‑λ theorem. The new lemma states the result in its familiar textbook form, so users can recognise and cite it immediately. Both pieces are under 10 lines, term‑mode only, and do not modify existing APIs. No breaking changes. No dependencies. new-contributor t-measure-probability 13/0 Mathlib/MeasureTheory/PiSystem.lean 1 13 ['EtienneC30', 'KiringYJ', 'github-actions', 'ocfnash'] RemyDegenne
assignee:RemyDegenne
74-73121
2 months ago
82-22770
2 months ago
109-10605
109 days
27000 gasparattila
author:gasparattila
feat(Analysis/Normed/Group/Quotient): isometric versions of isomorphisms This PR adds an isometric version of the third isomorphism theorem for groups and modules. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import new-contributor t-analysis 49/2 Mathlib/Analysis/Normed/Group/Quotient.lean 1 1 ['github-actions'] urkud
assignee:urkud
70-73133
2 months ago
102-25860
3 months ago
102-25903
102 days
28198 Sebi-Kumar
author:Sebi-Kumar
feat(Analysis/InnerProductSpace/PiL2): Add instances for EuclideanSpace rank and EuclideanSpace being infinite Add an instance for `Fact (Module.finrank 𝕜 (EuclideanSpace 𝕜 (Fin n)) = n)` which is needed to apply [stereographic'](https://leanprover-community.github.io/mathlib4_docs/Mathlib/Geometry/Manifold/Instances/Sphere.html#stereographic') to EuclideanSpace. Also add an instance for `Infinite (EuclideanSpace 𝕜 ι)` where `ι` is a nonempty fintype. I wasn't sure if these should go in separate pull requests, but they seemed similar enough to me. Thank you to Kenny Lau for the suggestions at [#mathlib4 > Instances for EuclideanSpace](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Instances.20for.20EuclideanSpace). --- To provide additional context, I am new to contributing to Mathlib, and I am doing so as a part of the Fields Undergraduate Summer Research Program at the University of Western Ontario under the supervision of Chris Kapulkin and Daniel Carranza. My goal is to contribute that the `n`-sphere is simply connected for `n > 1`. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 6/0 Mathlib/Analysis/InnerProductSpace/PiL2.lean 1 1 ['github-actions'] urkud
assignee:urkud
64-73113
2 months ago
71-86349
2 months ago
71-86386
71 days
28125 nonisomorphiclinearmap
author:nonisomorphiclinearmap
feat(Combinatorics): basic definition of simplicial complexes This PR introduces the basic definition of a finite (abstract) simplicial complex, located in Mathlib/Combinatorics/SimplicialComplex/Basic.lean. --- This is our first contribution to mathlib. This work was done as part of the Fields Institute Summer Undergraduate Program on formalization in topological combinatorics. Eventually, we aim to formalize Lovasz's proof of the Kneser Conjecture and this is a small stepping stone in that direction. Some other commits will shortly depend on this one. We would like to acknowledge the Fields Institute for Research in Mathematical Sciences for their sponsorship. We would also like to thank our supervisors, Professor Chris Kapulkin and Mr. Daniel Carranza, for their guidance and support throughout this project. We would also like to thank our group members Tom Lindquist and Quang Minh Nguyen for our fruitful discussions. new-contributor t-combinatorics 374/0 Mathlib.lean,Mathlib/Combinatorics/SimplicialComplex/Basic.lean,Mathlib/Combinatorics/SimplicialComplex/Category.lean,Mathlib/Combinatorics/SimplicialComplex/FacePoset.lean,Mathlib/Combinatorics/SimplicialComplex/Hom.lean 5 1 ['github-actions'] awainverse
assignee:awainverse
62-73136
2 months ago
74-5205
2 months ago
74-5241
74 days
28186 Sebi-Kumar
author:Sebi-Kumar
feat(Topology/Homotopy/Path): Add IsEquiv instance for Path.Homotopic Add `instance : IsEquiv (Path x₀ x₁) Homotopic` to the library. Allow use of lemmas like `of_eq` when proving two paths are homotopic. --- To provide additional context, I am relatively new to contributing to Mathlib, and I am doing so as a part of the Fields Undergraduate Summer Research Program hosted at the University of Western Ontario and supervised by Chris Kapulkin and Daniel Carranza. My goal is to prove that the `n`-sphere is simply connected for `n > 1`. Also, I am not super familiar with `IsEquiv` and when it should/shouldn't be used. I just wanted to use a lemma like `Path.Homotopic.of_eq` at one point while working on my code, and thought this was the best way to add such a result to the library. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology 5/0 Mathlib/Topology/Homotopy/Path.lean 1 4 ['Sebi-Kumar', 'github-actions', 'kckennylau'] PatrickMassot
assignee:PatrickMassot
62-73133
2 months ago
72-18063
2 months ago
72-18102
72 days
27245 rirarika
author:rirarika
feat: multivariate polynomial ring properties about irreducibility --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
88/0 Mathlib.lean,Mathlib/Algebra/MvPolynomial/Irreducible.lean 2 5 ['alreadydone', 'github-actions', 'mbkybky'] alreadydone
assignee:alreadydone
59-19530
1 month ago
95-47976
3 months ago
95-48010
95 days
25225 xcloudyunx
author:xcloudyunx
feat(Combinatorics/SimpleGraph): Eulerian walk in connected graph contains all vertices --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 16/0 Mathlib/Combinatorics/SimpleGraph/Trails.lean 1 6 ['IvanRenison', 'github-actions', 'vlad902'] kmill
assignee:kmill
55-35377
1 month ago
147-78903
4 months ago
147-78947
147 days
28613 espottesmith
author:espottesmith
feat(Combinatorics): define undirected hypergraphs This PR defines undirected hypergraphs: ``` @[ext] structure Hypergraph (α : Type*) where /-- The vertex set -/ vertexSet : Set α /-- The hyperedge set -/ hyperedgeSet : Set (Set α) /-- All hyperedges must be subsets of the vertex set -/ hyperedge_isSubset_vertexSet : ∀ ⦃e⦄, e ∈ hyperedgeSet → e ⊆ vertexSet ``` In addition to the main definition, some additional definitions and related lemmas are provided: - vertex adjacency - hyperedge adjacency - vertex "stars" - special cases (loops, empty hypergraphs, trivial hypergraphs, complete hypergraphs, simple hypergraphs, k-uniform hypergraphs, and d-regular hypergraphs) - (some) hypergraph cardinality - subhypergraphs, induced subhypergraphs, and partial hypergraphs This implementation is certainly bare-bones. I'm submitting this PR at this point, rather than when my developments are more fleshed out, because there has been some interest in others contributing to hypergraph formalization in mathlib. In the near future, goals include: - defining incidence matrices (i.e., conversion from `Hypergraph α` to `Matrix α (Set α) β` - coersion/generalization of graph as 2-uniform hypergraph - conversion of a hypergraph into its associated clique graph/two-section graph - constructing the dual of a hypergraph (note: on first blush, this appears somewhat challenging, given that we define hyperedges as `Set α` rather than some other type `β`) - rank and co-rank - walks, paths, cycles, etc. on hypergraphs --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 375/0 Mathlib.lean,Mathlib/Combinatorics/Hypergraph/Basic.lean 2 52 ['b-mehta', 'espottesmith', 'github-actions', 'jt496', 'lauramonk', 'mathlib4-merge-conflict-bot'] b-mehta
assignee:b-mehta
46-39186
1 month ago
46-39186
1 month ago
52-25368
52 days
29040 PMKielstra
author:PMKielstra
feat: trapezoidal rule for integration This PR defines the trapezoidal rule and proves the standard error bound on it in terms of bounds on the second derivative. I have vague plans of using this plus interval arithmetic to develop a tactic that can automatically close goals of the form `\integral x in a..b, f x < y` or similar. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 273/0 Mathlib.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/Basic.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/TrapezoidalRule.lean 3 40 ['PMKielstra', 'github-actions', 'tb65536'] kex-y
assignee:kex-y
45-73136
1 month ago
54-80029
1 month ago
54-80465
54 days
27817 zhuyizheng
author:zhuyizheng
feat: add IMO2025P1 Add a solution to IMO2025P1, the original problem statement from https://github.com/jsm28/IMOLean --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) IMO new-contributor 1310/0 Archive.lean,Archive/Imo/Imo2025Q1.lean 2 2 ['github-actions', 'mathlib4-merge-conflict-bot'] dwrensha
assignee:dwrensha
27-36250
27 days ago
32-55722
1 month ago
64-80827
64 days
28871 JaafarTanoukhi
author:JaafarTanoukhi
feat(Combinatorics/Digraph): Tournaments Define orientations and tournaments. Related to #26771. Co-authored-by: Rida Hamadani --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 62/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/Orientation.lean,Mathlib/Combinatorics/Digraph/Tournament.lean 3 5 ['JaafarTanoukhi', 'NotWearingPants', 'Rida-Hamadani', 'github-actions'] kmill
assignee:kmill
27-16383
27 days ago
58-6620
1 month ago
58-6653
58 days
28967 utkuokur
author:utkuokur
refactor(Combinatorics/SimpleGraph/Walk): simplify proof of "support_tail_of_not_nil" The proof of the lemma named "support_tail_of_not_nil" is shortened. Since "support_tail" is not needed anymore, it is removed. @[deprecated (since := "2025-08-26")] sign is added for the removed "support_tail". The library references to "support_tail" are replaced with "support_tail_of_not_nil". To keep [@simp] on "cons_support_tail" and avoid the linter error, the [@simp] of "support_tail_of_not_nil" (previously on "support_tail") is removed. There might be a better way that I am missing, to deal with the linter error. --- Additionally, a merge conflict with `master` was resolved by keeping the generalized `support_tail_of_not_nil` and reintroducing `support_tail` as a deprecated alias for compatibility. [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 7/10 Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean,Mathlib/Combinatorics/SimpleGraph/Walk.lean 2 3 ['github-actions', 'mathlib4-merge-conflict-bot', 'themathqueen'] awainverse
assignee:awainverse
27-7697
27 days ago
43-1869
1 month ago
56-17780
56 days
27229 WilliamCoram
author:WilliamCoram
feat(GroupTheory/DoubleCoset): multiple lemmas From FLT --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-group-theory FLT new-contributor 97/0 Mathlib/GroupTheory/DoubleCoset.lean 1 16 ['Ruben-VandeVelde', 'WilliamCoram', 'github-actions', 'mathlib4-merge-conflict-bot'] mariainesdff
assignee:mariainesdff
26-37763
26 days ago
33-13408
1 month ago
91-79282
91 days
26923 oliver-butterley
author:oliver-butterley
feat(Dynamics/BirkhoffSum): add the pointwise ergodic theorem (Birkhoff's) The Pointwise Ergodic Theorem, also known as Birkhoff's Ergodic Theorem. Co-authored-by: Lua Viana Reis - [x] depends on: #26074 - [x] depends on: #26807 - [x] depends on: #26810 - [x] depends on: #26840 - [x] depends on: #26842 - [x] depends on: #26848 - [x] depends on: #26851 - [x] depends on: #26852 - [x] depends on: #26853 - [x] depends on: #27008 - [x] depends on: #28901 Zulip: [PR thread](https://leanprover.zulipchat.com/#narrow/channel/144837-PR-reviews/topic/.2326923.20The.20pointwise.20ergodic.20theorem.20.28Birkhoff's.29/with/527835158) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-dynamics 401/0 Mathlib.lean,Mathlib/Dynamics/BirkhoffSum/Pointwise.lean 2 13 ['D-Thomine', 'github-actions', 'leanprover-community-bot-assistant', 'lua-vr', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] urkud
assignee:urkud
19-40639
19 days ago
56-59482
1 month ago
63-28949
63 days
27400 dleijnse
author:dleijnse
feat: define geometrically reduced algebras Define geometrically reduced algebras, and prove that if all finitely generated subalgebras of an algebra `A` are geometrically reduced, then `A` is geometrically reduced. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
117/0 Mathlib.lean,Mathlib/RingTheory/Adjoin/FG.lean,Mathlib/RingTheory/Flat/Basic.lean,Mathlib/RingTheory/Nilpotent/Defs.lean,Mathlib/RingTheory/Nilpotent/GeometricallyReduced.lean,Mathlib/RingTheory/TensorProduct/Basic.lean 6 72 ['dleijnse', 'github-actions', 'joelriou', 'kckennylau'] joelriou
assignee:joelriou
18-27090
18 days ago
18-27127
18 days ago
85-38938
85 days
29999 jeremypparker
author:jeremypparker
chore(Analysis/Fourier/AddCircle): remove stale comment --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 0/1 Mathlib/Analysis/Fourier/AddCircle.lean 1 2 ['Ruben-VandeVelde', 'github-actions', 'jeremypparker'] sgouezel
assignee:sgouezel
17-73134
17 days ago
25-41882
25 days ago
25-41915
25 days
26985 agjftucker
author:agjftucker
feat(Analysis/Calculus/Implicit): define implicitFunOfProdDomain This PR continues the work from #16743. Original PR: https://github.com/leanprover-community/mathlib4/pull/16743 --- - [x] depends on: #28352 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 107/4 Mathlib/Analysis/Calculus/Implicit.lean 1 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] hrmacbeth
assignee:hrmacbeth
14-73134
14 days ago
22-47222
22 days ago
22-48800
22 days
29361 FlAmmmmING
author:FlAmmmmING
feat: Catalan generating function as a formal power series We introduce the Catalan generating function as a formal power series over `ℕ`. ## Main Definitions * `PowerSeries.catalanSeries`: The Catalan generating function as a power series. ## Main Results * `PowerSeries.sum_coeff_X_catalanSeries`: When `n` is a natural number, each term in the sum `coeff i X * catalan (n - i)` is 0 except for `i = 1`. * `PowerSeries.coeff_X_mul_catalanSeries`: The coefficient of `X * catalanSeries` at `X^n` is `catalan (n - 1)` when `n > 0`. * `PowerSeries.catalanSeries_one_add_X_mul_self_sq`: The Catalan generating function satisfies the equation `catalanSeries = 1 + X * catalanSeries ^ 2`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 71/0 Mathlib.lean,Mathlib/RingTheory/PowerSeries/Catalan.lean 2 4 ['Ruben-VandeVelde', 'github-actions', 'wwylele'] kbuzzard
assignee:kbuzzard
13-49731
13 days ago
46-45806
1 month ago
46-45835
46 days
29960 yonggyuchoimath
author:yonggyuchoimath
feat(Algebra/Category/Ring): equalizers of pushout maps of tensor product inclusions This PR defines a ring map `S →ₗ[R] S ⊗[R] S : s ↦ (s ⊗ₜ[R] 1) - (1 ⊗ₜ[R] s)` for an `R`-algebra `S`, and show that its kernel is exactly (the image of) `R` if `S` is faithfully flat over `R`. Changes: * `TensorProduct.AlgebraTensorModule.distribBaseChange`: Origianlly takes `M` and `N`, where `M` is an `R`-module with an additional instance `IsScalarTower R A M`. This is unnecessary, so I changed the `M` and `N` into `N` and `Q`, now both of which are merely modules over `R`. Main results : * Add compatibility of `Algebra.TensorProduct.includeLeft` (or `Algebra.TensorProduct.includeRight`) with `TensorProduct.AlgebraTensorModule.distribBaseChange` and `LinearMap.lTensor` * Define `Algebra.TensorProduct.includeLeftSubRight`, which is the `R`-linear map `S →ₗ[R] S ⊗[R] S` sending `s : S` to `(s ⊗ₜ[R] 1) - (1 ⊗ₜ[R] s)`. * `Algebra.TensorProduct.exactIncludeLeftSubRight_of_faithfullyFlat`: the pair `algebraMap : R → S` and `includeLeftSubRight R S : S → S ⊗[R] S` is exact if `S` is a faithfully flat `R`-algebra. new-contributor 229/1 Mathlib.lean,Mathlib/LinearAlgebra/TensorProduct/Tower.lean,Mathlib/RingTheory/TensorProduct/Basic.lean,Mathlib/RingTheory/TensorProduct/IncludeLeftSubRight.lean 4 3 ['erdOne', 'github-actions', 'yonggyuchoimath'] TwoFX
assignee:TwoFX
12-73130
12 days ago
21-7014
21 days ago
23-41483
23 days
29871 zach1502
author:zach1502
feat(Matrix/Transvection): Gauss pivot determinant identity and pivot preservation This PR adds two lemmas formalizing standard Gaussian pivot identities: * `Matrix.Transvection.listTransvecCol_mul_mul_listTransvecRow_pivot`: After applying the canonical left/right transvection products that clear the last column and row, the pivot (bottom-right) entry of a matrix is unchanged. Marked `@[simp]`. * `Matrix.Transvection.det_eq_detTopLeft_mul_pivot`: If the pivot entry is nonzero, then the determinant of the matrix factors as the determinant of the top-left block times the pivot entry, after performing the canonical transvections. This is the usual Gauss–pivot determinant identity. * Added simple usage tests in `MathlibTest/matrix.lean` to check that the new lemmas are usable by `simp`/`simpa`. --- --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
94/0 Mathlib/LinearAlgebra/Matrix/Transvection.lean,MathlibTest/matrix.lean 2 3 ['github-actions', 'riccardobrasca', 'zach1502'] riccardobrasca
assignee:riccardobrasca
12-10586
12 days ago
29-3016
29 days ago
29-68479
29 days
26986 WangYiran01
author:WangYiran01
feat(Partition): add bijection for partitions with max part ≤ r ## Summary This PR adds a new theorem `partition_max_equals_bound` to `Mathlib.Combinatorics.Enumerative.Partition`. It constructs a bijection between: - The set of partitions of `n` in which `r ∈ π.parts` and all parts are `≤ r`, and - The set of partitions of `n - r` whose largest part is at most `r`. This provides a constructive proof via removing/adding `r` from/to the partition multiset, in line with classical enumerative combinatorics. ## Implementation notes - The proof uses `Multiset.erase` and `Multiset.cons` with basic properties of `sum`, `sup`, and `Partition` structures. - The bijection is implemented explicitly via `f` and `g`, and proven mutually inverse via `Subtype.ext`. ## Linting - [x] Passes `lake build` - [x] Linter clean (no commandStart or longLine issues) ## Author Contributed by Yiran Wang. new-contributor t-combinatorics 85/0 Mathlib/Combinatorics/Enumerative/Partition.lean 1 4 ['WangYiran01', 'github-actions', 'kckennylau'] b-mehta
assignee:b-mehta
11-84529
11 days ago
102-43095
3 months ago
102-43130
102 days
28906 gasparattila
author:gasparattila
feat(Topology/Algebra/Module): `prod` and `coprod` as `ContinuousLinearEquiv`s --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology 40/4 Mathlib/Topology/Algebra/Module/LinearMapPiProd.lean,Mathlib/Topology/Algebra/Module/StrongTopology.lean 2 4 ['github-actions', 'kckennylau'] jcommelin
assignee:jcommelin
11-83320
11 days ago
57-13306
1 month ago
57-13338
57 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/) new-contributor t-combinatorics 391/0 Mathlib.lean,Mathlib/Combinatorics/DiHypergraph/Basic.lean 2 1 ['github-actions'] b-mehta
assignee:b-mehta
11-73132
11 days ago
34-35732
1 month ago
34-35777
34 days
30141 shalliso
author:shalliso
fix(Topology/Baire/Lemmas): fix index type in isMeagre_iUnion The index set ι needs to be of type Sort* instead of type Type* in isMeagre_iUnion otherwise I get the following message when I try to use it: typeclass instance problem is stuck, it is often due to metavariables Countable ?m.27 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-topology 1/1 Mathlib/Topology/GDelta/Basic.lean 1 1 ['github-actions'] dagurtomas
assignee:dagurtomas
11-73126
11 days ago
18-85860
18 days ago
18-85894
18 days
30391 rudynicolop
author:rudynicolop
feat(Data/List): list splitting definitions and lemmas This PR continues the work from #24395. Original PR: https://github.com/leanprover-community/mathlib4/pull/24395 t-data new-contributor 151/2 Mathlib/Data/List/Perm/Lattice.lean,Mathlib/Data/List/TakeDrop.lean 2 4 ['BoltonBailey', 'github-actions', 'rudynicolop'] nobody
10-82558
10 days ago
11-79699
11 days ago
11-79736
11 days
29947 JaafarTanoukhi
author:JaafarTanoukhi
feat(Combinatorics/Digraph): Maps Ported `SimpleGraph/Maps.lean` to `Digraph/Maps.lean` for future PRs related to issue #[26771](https://github.com/leanprover-community/mathlib4/issues/26771) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 476/0 Mathlib.lean,Mathlib/Combinatorics/Digraph/Maps.lean 2 1 ['github-actions'] awainverse
assignee:awainverse
10-73142
10 days ago
27-16665
27 days ago
27-16704
27 days
30121 idontgetoutmuch
author:idontgetoutmuch
Principal fiber bundle core A structure capturing what it means to be a principal fibre bundle. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-differential-geometry 227/0 Mathlib.lean,Mathlib/Geometry/Manifold/PrincipalFiberBundle/PrincipalGBundle.lean 2 5 ['github-actions', 'grunweg'] hrmacbeth
assignee:hrmacbeth
10-73140
10 days ago
18-50793
18 days ago
19-43745
19 days
29437 SnirBroshi
author:SnirBroshi
feat(Data/Seq): add Seq.subsequence and prove basic theorems about it I added `Seq.subsequence` to compose a sequence with a monotone function, creating a subsequence. Aliased to `Seq.comp` since it's a composition. I also added `Nat.le_induction_step_iff` which is needed to prove a subsequence is a sequence. This proves the comment at the top of `Defs.lean` that says "if `f n = none`, then `f m = none` for all `m ≥ n`" while `IsSeq` only talks about `n+1`. For completion I added the same statement for `Int`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import t-data new-contributor 104/0 Mathlib/Data/Int/Init.lean,Mathlib/Data/Nat/Init.lean,Mathlib/Data/Seq/Basic.lean,Mathlib/Data/Seq/Defs.lean 4 2 ['github-actions', 'mathlib4-merge-conflict-bot'] nobody
10-19492
10 days ago
34-33941
1 month ago
43-21429
43 days
29758 SnirBroshi
author:SnirBroshi
feat(RingTheory/RootsOfUnity): exp(pi * i * q) is a root of unity for rational q --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-ring-theory new-contributor 28/1 Mathlib/RingTheory/RootsOfUnity/Complex.lean 1 5 ['Ruben-VandeVelde', 'SnirBroshi', 'github-actions', 'kckennylau'] chrisflav
assignee:chrisflav
10-18868
10 days ago
32-77943
1 month ago
32-84943
32 days
30163 SnirBroshi
author:SnirBroshi
feat(Data/Set/Lattice): useful equivalences of `biUnion` and `biInter` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 25/0 Mathlib/Data/Set/Lattice.lean 1 1 ['github-actions'] nobody
10-7116
10 days ago
18-27985
18 days ago
18-28035
18 days
30213 SnirBroshi
author:SnirBroshi
feat(Data/List/GetD): golf and add lemmas for `get` and `getElem?` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 18/16 Mathlib/Data/List/GetD.lean 1 8 ['SnirBroshi', 'github-actions', 'themathqueen'] nobody
10-6462
10 days ago
16-86004
16 days ago
16-86201
16 days
30214 SnirBroshi
author:SnirBroshi
feat(Data/List/Basic): add `Fin` variants of `*mem_iff_getElem` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 11/0 Mathlib/Data/List/Basic.lean 1 2 ['SnirBroshi', 'github-actions'] nobody
10-6310
10 days ago
16-83725
16 days ago
16-84477
16 days
30215 SnirBroshi
author:SnirBroshi
feat(Data/List/NodupEquivFin): add equiv with `count = 1` hypothesis --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 7/2 Mathlib/Data/List/NodupEquivFin.lean 1 2 ['SnirBroshi', 'github-actions'] nobody
10-6139
10 days ago
16-83796
16 days ago
16-84180
16 days
30216 SnirBroshi
author:SnirBroshi
feat(Data/List/Basic): `get` is surjective iff every element is in the list --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 13/0 Mathlib/Data/List/Basic.lean 1 6 ['SnirBroshi', 'github-actions', 'themathqueen'] nobody
10-5801
10 days ago
16-83789
16 days ago
16-83823
16 days
30217 SnirBroshi
author:SnirBroshi
feat(Data/List/GetD): `getD` is surjective iff every element is in the list --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor 19/0 Mathlib/Data/List/GetD.lean 1 2 ['github-actions', 'themathqueen'] nobody
10-5636
10 days ago
16-83542
16 days ago
16-83578
16 days
30354 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Connectivity/WalkCounting): a spanning subgraph has the same or more connected components --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 8/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean,Mathlib/Combinatorics/SimpleGraph/Connectivity/WalkCounting.lean 2 1 ['github-actions'] nobody
9-79449
9 days ago
12-76157
12 days ago
12-76190
12 days
30429 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Connectivity): a graph is either connected or its complement is --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 17/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/Connected.lean 1 1 ['github-actions'] nobody
9-79036
9 days ago
10-59251
10 days ago
10-59285
10 days
30416 SnirBroshi
author:SnirBroshi
feat(Logic/Relation): lemmas relating `Relation.Map` and `Function.onFun` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-logic 32/0 Mathlib/Logic/Relation.lean 1 1 ['github-actions'] nobody
8-64818
8 days ago
11-5518
11 days ago
11-7746
11 days
30069 IvanRenison
author:IvanRenison
feat(Combinatorics/SimpleGraph): add lemma `IsTree.dist_ne_of_adj` and necessary lemmas This contribution was created as part of the Utrecht Summerschool "Formalizing Mathematics in Lean" in July 2025. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 34/0 Mathlib/Combinatorics/SimpleGraph/Acyclic.lean 1 8 ['github-actions', 'mathlib4-merge-conflict-bot', 'themathqueen', 'vlad902'] nobody
8-47971
8 days ago
8-47990
8 days ago
21-11194
21 days
30261 SnirBroshi
author:SnirBroshi
feat(Algebra/Ring/Basic): add `a / -b = -a / b` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
5/3 Mathlib/Algebra/Ring/Basic.lean 1 1 ['github-actions'] joelriou
assignee:joelriou
7-73130
7 days ago
15-72499
15 days ago
15-72536
15 days
30280 SnirBroshi
author:SnirBroshi
chore(Algebra/Order/Monoid/Unbundled/MinMax): golf three lemmas using `grind` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
3/6 Mathlib/Algebra/Order/Monoid/Unbundled/MinMax.lean 1 1 ['euprunin', 'github-actions'] ocfnash
assignee:ocfnash
7-73128
7 days ago
15-1209
15 days ago
15-1241
15 days
28602 gmcninch-tufts
author:gmcninch-tufts
feat(Algebra/Polynomial/Module): prove equivalence of a certain tensor product with PolynomialModule For a commutative ring `R` and an `R`-module `M`, construct an equivalence between the `R[X]`-modules `R[X] ⊗[R] M` and `PolynomialModule R M`. This equivalence enables application of some base-change results to `PolynomialModule R M` . --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
210/0 Mathlib.lean,Mathlib/Algebra/Polynomial/Module/TensorProduct.lean 2 4 ['github-actions', 'kckennylau'] jcommelin
assignee:jcommelin
7-8772
7 days ago
64-22209
2 months ago
64-22245
64 days
30525 515801431
author:515801431
Polya_counting This PR introduces basic definitions and results about colorings under permutation group actions. A coloring is defined as a function X → Y, and the permutation group Equiv.Perm X acts on colorings by precomposition: (g • c) x = c (g⁻¹ • x) This formalizes the natural action of relabeling the elements of X. Main definitions MulAction (Equiv.Perm X) (X → Y): The action of the permutation group on colorings via precomposition. coloringEquiv (c₁ c₂ : X → Y) : Prop: Two colorings are equivalent if they lie in the same orbit under this action, i.e. ∃ f : Equiv.Perm X, f • c₁ = c₂. Main results smul_eq_iff_mem_stabilizer: Characterizes when two group actions on the same coloring are equal, showing that g • c = f • c ↔ f⁻¹ * g ∈ stabilizer c. coloringEquiv_equivalence: Proves that coloringEquiv defines an equivalence relation on X → Y. orbit_size_eq_index: Reformulates the orbit–stabilizer theorem in the context of colorings: |orbit c| = |Perm X| / |stabilizer c| Motivation These results provide foundational infrastructure for studying Burnside’s lemma and Pólya’s enumeration theorem in Mathlib, where the enumeration of distinct colorings up to symmetry plays a central role. new-contributor t-combinatorics 111/0 Mathlib.lean,Mathlib/Combinatorics/Enumerative/Polya.lean 2 2 ['IvanRenison', 'github-actions'] nobody
6-44444
6 days ago
7-67126
7 days ago
7-67163
7 days
26790 FlAmmmmING
author:FlAmmmmING
feat(Combinatorics/Enumerative/Bell.lean): define standard Bell number --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 46/1 Mathlib/Combinatorics/Enumerative/Bell.lean 1 11 ['AntoineChambert-Loir', 'FlAmmmmING', 'eric-wieser', 'github-actions', 'kckennylau', 'madvorak'] awainverse
assignee:awainverse
6-29033
6 days ago
108-18535
3 months ago
108-18572
108 days
28546 Sfgangloff
author:Sfgangloff
feat(SymbolicDynamics): basic setup of Zd, full shift, cylinders, pat… # Symbolic dynamics on groups: core API and entropy along finite shapes 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). new-contributor t-dynamics 751/0 Mathlib.lean,Mathlib/Dynamics/SymbolicDynamics/Basic.lean,Mathlib/Tactic/ToAdditive/GuessName.lean 3 84 ['Sfgangloff', 'eric-wieser', 'github-actions', 'kckennylau', 'sgouezel'] sgouezel
assignee:sgouezel
6-19854
6 days ago
6-19854
6 days ago
50-37384
50 days
30158 nicolaviolette
author:nicolaviolette
feat: combinatorics simplegraph basic --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 9/4 Mathlib/Combinatorics/SimpleGraph/Basic.lean 1 1 ['github-actions'] b-mehta
assignee:b-mehta
5-73123
5 days ago
18-38879
18 days ago
18-38913
18 days
30609 FlAmmmmING
author:FlAmmmmING
feat(Combinatorics/Enumerative/Catalan.lean): Add definition of large and small Schroder. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 77/1 Mathlib/Combinatorics/Enumerative/Catalan.lean 1 1 ['github-actions'] nobody
5-25910
5 days ago
5-27317
5 days ago
5-27361
5 days
28296 strihanje01
author:strihanje01
feat(Combinatorics/Additive/VerySmallDoubling): Hamidoune's Freiman-Kneser theorem for nonabelian groups Prove the noncommutative Freiman-Kneser theorem for doubling less than 2 - ε --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge new-contributor t-combinatorics 289/3 Mathlib/Combinatorics/Additive/VerySmallDoubling.lean 1 21 ['YaelDillies', 'github-actions', 'mathlib4-merge-conflict-bot', 'strihanje01'] YaelDillies
assignee:YaelDillies
5-21952
5 days ago
5-21952
5 days ago
56-25102
56 days
29956 SnirBroshi
author:SnirBroshi
feat(Algebra/Polynomial): small and useful lemmas feat(Algebra/Polynomial): added many small and useful lemmas about polynomials --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) large-import new-contributor t-algebra
label:t-algebra$
294/90 Mathlib/Algebra/Polynomial/AlgebraMap.lean,Mathlib/Algebra/Polynomial/Basic.lean,Mathlib/Algebra/Polynomial/Degree/Lemmas.lean,Mathlib/Algebra/Polynomial/Div.lean,Mathlib/Algebra/Polynomial/Eval/Coeff.lean,Mathlib/Algebra/Polynomial/Eval/Defs.lean,Mathlib/Algebra/Polynomial/Eval/Degree.lean,Mathlib/Algebra/Polynomial/FieldDivision.lean,Mathlib/Algebra/Polynomial/Monic.lean,Mathlib/Algebra/Polynomial/Roots.lean,Mathlib/Algebra/Polynomial/Splits.lean,Mathlib/FieldTheory/IsAlgClosed/Basic.lean,Mathlib/FieldTheory/IsSepClosed.lean,Mathlib/FieldTheory/NormalizedTrace.lean,Mathlib/RingTheory/SimpleRing/Basic.lean,Mathlib/RingTheory/Trace/Basic.lean 16 64 ['SnirBroshi', 'erdOne', 'github-actions', 'kckennylau', 'leanprover-bot', 'mathlib4-merge-conflict-bot'] ocfnash
assignee:ocfnash
4-73122
4 days ago
12-69958
12 days ago
26-44887
26 days
27953 CoolRmal
author:CoolRmal
feat(ProbabilityTheory): Conditional Jensen's Inequality This PR adds conditional Jensen's inequality. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 526/10 Mathlib.lean,Mathlib/Analysis/NormedSpace/HahnBanach/Separation.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/Basic.lean,Mathlib/MeasureTheory/Function/ConditionalExpectation/CondJensen.lean,Mathlib/MeasureTheory/MeasurableSpace/Constructions.lean 5 3 ['github-actions', 'mathlib4-merge-conflict-bot'] sgouezel
assignee:sgouezel
3-73146
3 days ago
11-66128
11 days ago
20-16162
20 days
30206 SnirBroshi
author:SnirBroshi
feat(Combinators/SimpleGraph/Hamiltonian): `p.support.length = Fintype.card α` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge new-contributor t-combinatorics easy 5/0 Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean 1 4 ['SnirBroshi', 'YaelDillies', 'github-actions'] YaelDillies
assignee:YaelDillies
3-28689
3 days ago
3-29913
3 days ago
17-10627
17 days
30232 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Connectivity/Subgraph): add `ConnectedComponent.toSubgraph` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics easy 32/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 2 2 ['SnirBroshi', 'github-actions'] nobody
3-8764
3 days ago
16-64809
16 days ago
16-64848
16 days
30637 strihanje01
author:strihanje01
feat(Combinatorics/SetFamily/Lindstrom): Lindstrom's theorem for subfamilies with equal unions add Lindstrom's theorem and its strengthening for equal intersections --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics 210/0 Mathlib.lean,Mathlib/Combinatorics/SetFamily/Lindstrom.lean 2 1 ['github-actions'] nobody
3-6653
3 days ago
4-13983
4 days ago
4-14029
4 days
30315 SnirBroshi
author:SnirBroshi
feat(Topology/Connected/LocPathConnected): convenience lemma for `LocPathConnected` + `ConnectedSpace` → `PathConnectedSpace` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) awaiting-bench new-contributor t-topology 5/3 Mathlib/Topology/Connected/LocPathConnected.lean 1 11 ['SnirBroshi', 'github-actions', 'j-loreaux', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] PatrickMassot
assignee:PatrickMassot
3-572
3 days ago
3-70975
3 days ago
13-33186
13 days
30224 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Hamiltonian): `p.support.get` is bijective --- - [x] depends on: #30223 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor 7/0 Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean 1 2 ['github-actions', 'mathlib4-dependent-issues-bot'] kim-em
assignee:kim-em
2-55726
2 days ago
9-80216
9 days ago
9-81172
9 days
28119 JasperMS
author:JasperMS
feat(Data/Set/Pairwise): prove pairwise results for Chains, move `Set.pairwise_iUnion₂` Initiate a new file `Data/Set/Pairwise/Chain.lean` which makes some `Pairwise` results available to the `IsChain` predicate. In the process, move `Set.pairwise_iUnion₂` to group it with similar results. Perform some variable harmonization. Part of Carleson, original result by Edward van de Meent. Moves: - Set.pairwise_iUnion₂: from Data.Set.Lattice to Data.Set.Pairwise.Lattice --- This PR was discussed and advice was given in [#mathlib4 > Novice questions on style and structure](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Novice.20questions.20on.20style.20and.20structure/with/533462814). Many thanks to those who helped me out! Mathlib PRs are still new to me, so please point out where I can improve! [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) carleson t-data new-contributor 56/12 Mathlib.lean,Mathlib/Data/Set/Lattice.lean,Mathlib/Data/Set/Pairwise/Chain.lean,Mathlib/Data/Set/Pairwise/Lattice.lean 4 13 ['JasperMS', 'Ruben-VandeVelde', 'edegeltje', 'github-actions', 'pechersky'] pechersky
assignee:pechersky
2-46826
2 days ago
74-25926
2 months ago
74-26360
74 days
29652 fmortimore
author:fmortimore
feat(Order): the Bourbaki–Witt theorem We prove the Bourbaki-Witt theorem, one of Wiedijk's 1000+ theorems --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-order 244/0 Mathlib.lean,Mathlib/Order/BourbakiWitt.lean,docs/1000.yaml 3 28 ['Vierkantor', 'eric-wieser', 'fmortimore', 'github-actions', 'wwylele'] Vierkantor
assignee:Vierkantor
2-26164
2 days ago
2-26164
2 days ago
24-73105
24 days
30041 josephmckinsey
author:josephmckinsey
feat(Algebra/Order/Floor): generalize mul_floor_div theorems to rings and semirings Generalize `mul_cast_floor_div_cancel` from `Field` and `Semifield` to `Ring` and `Semiring`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra
label:t-algebra$
43/31 Mathlib/Algebra/Order/Floor/Ring.lean,Mathlib/Algebra/Order/Floor/Semifield.lean,Mathlib/Algebra/Order/Floor/Semiring.lean,Mathlib/Analysis/Real/OfDigits.lean 4 10 ['Ruben-VandeVelde', 'github-actions', 'josephmckinsey'] joneugster
assignee:joneugster
1-73113
1 day ago
9-71209
9 days ago
10-19810
10 days
30424 maksym-radziwill
author:maksym-radziwill
feat(Analysis.Complex): Borel-Caratheodory theorem, part of PrimeNumberTheoremAnd+ upstreaming This PR adds a proof of the [Borel-Caratheodory theorem](https://en.wikipedia.org/wiki/Borel%E2%80%93Carath%C3%A9odory_theorem) following the [blueprint](https://alexkontorovich.github.io/PrimeNumberTheoremAnd/web/sect0004.html#a0000000021) of the [PrimeNumberTheoremAnd+](https://github.com/AlexKontorovich/PrimeNumberTheoremAnd/) project. This is part of the ongoing effort to upstream the StrongPNT version of the PrimeNumberTheoremAnd+ project into mathlib4. See also the [Zullip discussion](https://leanprover.zulipchat.com/#narrow/channel/423402-PrimeNumberTheorem.2B/topic/Merging.20with.20Morph/with/544246433) --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 424/0 Mathlib.lean,Mathlib/Analysis/Complex/BorelCaratheodory.lean,docs/1000.yaml,docs/references.bib 4 7 ['Ruben-VandeVelde', 'github-actions', 'maksym-radziwill', 'wwylele'] grunweg
assignee:grunweg
1-73112
1 day ago
9-62276
9 days ago
10-80060
10 days
30468 jeremypparker
author:jeremypparker
feat(Algebra/GroupWithZero): mul_left_cancel_iff₀ This is a version of mul_left_cancel_iff / mul_right_cancel_iff for GroupWithZero --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra easy
label:t-algebra$
6/0 Mathlib/Algebra/GroupWithZero/Defs.lean 1 4 ['github-actions', 'jeremypparker', 'wwylele'] joelriou
assignee:joelriou
1-73108
1 day ago
9-19089
9 days ago
9-19122
9 days
30473 CoolRmal
author:CoolRmal
feat(ComplexAnalysis): Cauchy's Integral Formula for Higher Order Derivatives This PR adds the following `iteratedDeriv_eq_smul_circleIntegral` and `norm_iteratedDeriv_le_aux`. The first one expresses the `n`-th order derivative of a differentiable function as a circle integral. The second one proves an estimate for the `n`-th order derivative. Zulip discussion: https://leanprover.zulipchat.com/#narrow/channel/217875-Is-there-code-for-X.3F/topic/Cauchy's.20integral.20formula --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-analysis 124/6 Mathlib/Analysis/Complex/CauchyIntegral.lean,Mathlib/Analysis/Complex/Liouville.lean,Mathlib/Analysis/Complex/LocallyUniformLimit.lean 3 16 ['CoolRmal', 'github-actions', 'loefflerd', 'wwylele'] ADedecker
assignee:ADedecker
1-73106
1 day ago
9-6232
9 days ago
9-6263
9 days
27645 bjornsolheim
author:bjornsolheim
feat(Geometry/Convex/Cone): add pointed cone tensor products Define the minimal and maximal tensor product of pointed cones. Prove that the minimal tensor product is less than or equal to the maximal tensor product. --- - [ ] depends on: #25292 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-convex-geometry new-contributor 123/0 Mathlib.lean,Mathlib/Geometry/Convex/Cone/TensorProduct.lean 2 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
1-22348
1 day ago
1-22350
1 day ago
1-24152
1 day
28818 SnirBroshi
author:SnirBroshi
feat(Data/Setoid/Basic): add theorems about lifting a function to its kernel Currently `ker_lift_injective` and `quotientKerEquivOfRightInverse` lift `f` to `ker f` in their definition. This PR makes this function available as `Setoid.kerLift f` and adds a few more theorems about it. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge new-contributor 34/16 Counterexamples/AharoniKorman.lean,Mathlib/Data/Setoid/Basic.lean,Mathlib/NumberTheory/NumberField/CanonicalEmbedding/FundamentalCone.lean,Mathlib/Topology/Separation/Hausdorff.lean 4 32 ['SnirBroshi', 'eric-wieser', 'github-actions', 'kckennylau', 'mathlib4-merge-conflict-bot', 'pechersky'] pechersky
assignee:pechersky
1-18477
1 day ago
1-18477
1 day ago
53-47766
53 days
26129 LessnessRandomness
author:LessnessRandomness
feat(Geometry/Euclidean/Angle/Unoriented): triangle inequality for angles This PR continues the work from #24206. Original PR: https://github.com/leanprover-community/mathlib4/pull/24206 new-contributor t-euclidean-geometry 202/15 Mathlib.lean,Mathlib/Analysis/Fourier/FiniteAbelian/Orthogonality.lean,Mathlib/Analysis/InnerProductSpace/Basic.lean,Mathlib/Analysis/InnerProductSpace/PiL2.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Affine.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/Basic.lean,Mathlib/Geometry/Euclidean/Angle/Unoriented/TriangleInequality.lean,Mathlib/Geometry/Manifold/Instances/Sphere.lean 8 83 ['JovanGerb', 'LessnessRandomness', 'Timeroot', 'github-actions', 'jsm28', 'mathlib4-merge-conflict-bot', 'themathqueen'] jsm28
assignee:jsm28
0-84261
23 hours ago
1-15709
1 day ago
121-84684
121 days
29362 stepanholub
author:stepanholub
feat:(Data/List) add the notion of period of List and prove the Periodicity Lemma Add the concept of the period of a List (word, sequence) which is missing, and prove its basic nontrivial property describing under which conditions list can have two periods known as the Periodicity Lemma (aka Fine-Wilf Theorem). --- t-data new-contributor 227/0 Mathlib.lean,Mathlib/Data/List/PeriodicityLemma.lean 2 125 ['Ruben-VandeVelde', 'Timeroot', 'fpvandoorn', 'github-actions', 'madvorak', 'plp127', 'stepanholub', 'wwylele'] pechersky
assignee:pechersky
0-73121
20 hours ago
27-8177
27 days ago
45-4373
45 days
30344 Deep0Thinking
author:Deep0Thinking
feat(MeasureTheory/Integral): add versions of `exists_eq_interval_average` and first mean value theorem for integrals Add the First mean value theorem for (unordered) interval integrals on ℝ. - `exists_eq_const_mul_interval_integral_of_continuous_on_of_ae_nonneg` - `exists_eq_const_mul_interval_integral_of_continuous_on_of_nonneg` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-measure-probability 290/41 Mathlib.lean,Mathlib/MeasureTheory/Integral/IntervalAverage.lean,Mathlib/MeasureTheory/Integral/IntervalIntegral/MeanValue.lean 3 9 ['Deep0Thinking', 'github-actions', 'plp127'] RemyDegenne
assignee:RemyDegenne
0-69062
19 hours ago
13-4087
13 days ago
13-4119
13 days
28077 ShreckYe
author:ShreckYe
feat(Data/Finset/Card): add some more Pigeonhole Principle theorems `exists_ne_map_eq_of_card_image_lt` and `not_injOn_of_card_image_lt` `exists_ne_map_eq_of_card_image_lt` is a special case of `exists_ne_map_eq_of_card_lt_of_maps_to` where `t` is `s.image f`, and `not_injOn_of_card_image_lt` is its variant using `Set.InjOn`. I ran into some cases where such theorems would save me some time. t-data maintainer-merge new-contributor 10/0 Mathlib/Data/Finset/Card.lean 1 10 ['ShreckYe', 'github-actions', 'pechersky', 'themathqueen'] pechersky
assignee:pechersky
0-67200
18 hours ago
1-76332
1 day ago
74-71175
74 days
30400 Equilibris
author:Equilibris
feat(Data/PFunctor): make M.corec' universe generic Previously `corec'` required the generating type reside in the same universe as the constructed object. This change corrects this by separating the universes. As corec takes the parameter (g : β → P (α ::: β)), (where α is a TypeVec.{u} and β is a Type u) it is forced into the same universe by how the TypeVec construction works. This means corec cant be generalised by this construction. --- A super simple change to make `corec'` univ generic. ```lean -- was def MvPFunctor.M.corec'.{u} {n : ℕ} (P : MvPFunctor.{u} (n + 1)) {α : TypeVec.{u} n} {β : Type u} (g₀ : β → P.A) (g₁ : (b : β) → P.drop.B (g₀ b) ⟹ α) (g₂ : (b : β) → P.last.B (g₀ b) → β) : β → P.M α := _ -- becomes def MvPFunctor.M.corec'.{u, v} {n : ℕ} (P : MvPFunctor.{u} (n + 1)) {α : TypeVec.{u} n} {β : Type v} (g₀ : β → P.A) (g₁ : (b : β) → P.drop.B (g₀ b) ⟹ α) (g₂ : (b : β) → P.last.B (g₀ b) → β) : β → P.M α := _ ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 5/5 Mathlib/Data/PFunctor/Multivariate/M.lean 1 6 ['Equilibris', 'alexkeizer', 'github-actions', 'vihdzp'] nobody
0-38959
10 hours ago
11-26565
11 days ago
11-26608
11 days
27552 Equilibris
author:Equilibris
chore(Data/Typevec): Move variables into `variable` declaration in typevec This will be needed to allow `M.corec` to be generic across universes --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge new-contributor easy 16/10 Mathlib/Data/TypeVec.lean 1 16 ['Equilibris', 'eric-wieser', 'github-actions', 'pechersky', 'plp127'] pechersky
assignee:pechersky
0-32046
8 hours ago
0-32046
8 hours ago
64-80376
64 days
29728 ADA-Projects
author:ADA-Projects
feat(Topology/KrullDimension): add subspace dimension inequality This PR extends topological Krull dimension theory with basic results about subspaces. - Add mapIrreducibleClosed function for canonical maps between irreducible closed sets - Prove injectivity and strict monotonicity of these maps - Establish partial order structure on IrreducibleCloseds - Prove topKrullDim_subspace_le theorem showing dim(Y) ≤ dim(X) for subspaces **Update (per reviewer feedback):** Reorganized code structure as requested: - Moved `IrreducibleCloseds` extensions from `KrullDimension.lean` to `Sets/Closeds.lean` - This includes `PartialOrder` instance, `map` functions, and embedding lemmas - Better modularity: other files can now use `IrreducibleCloseds` without importing Krull dimension theory The main result `topologicalKrullDim_subspace_le` remains the same - any subspace Y has dim(Y) ≤ dim(X). Some sections of this code (and documentation) were generated with the help of Gemini. **Update 2** Addressed reviewer feedback with the following improvements: - Simplify `IrreducibleCloseds.map` to work with any continuous function (no longer requires closed maps) - Add coe_map lemma - Rename lemmas from `mapOfEmbedding_*` to `map_*_of_isEmbedding` for consistency with Mathlib naming conventions - Use `inferInstance` for PartialOrder instance on IrreducibleCloseds - Merge variable declarations in Sets/Closeds.lean - Add necessary imports (Topology.Defs.Induced) - Open Topology namespace for cleaner code - Remove unnecessary wrappers in 'Sets/Closeds.lean' **Update 3** Addressed and integrated reviewer feedback: - Use IsInducing instead of IsEmbedding in dimension theorems - Rename map_*_of_isEmbedding to map_*_of_isInducing - Simplify map_injective_of_isInducing proof using SetLike.coe_injective - Simplify map_strictMono_of_isInducing using Monotone.strictMono_of_injective - Add deprecation alias for IsClosedEmbedding.topologicalKrullDim_le - Remove redundant PartialOrder instance (already inferred) The main theorem `topologicalKrullDim_subspace_le` remains unchanged. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge new-contributor t-topology 63/30 Mathlib/Topology/KrullDimension.lean,Mathlib/Topology/Sets/Closeds.lean 2 45 ['ADA-Projects', 'erdOne', 'fpvandoorn', 'github-actions', 'jcommelin', 'kim-em', 'mathlib4-merge-conflict-bot'] erdOne
assignee:erdOne
0-14235
3 hours ago
0-80750
22 hours ago
22-28463
22 days
28001 daefigueroa
author:daefigueroa
feat(Dynamics): add results on topologically transitive monoid actions We define topological transitivity for monoid actions on topological spaces, prove basic facts about topologically transitive actions and give some characterizations of topological transitivity. --- This contribution was created as part of the Utrecht Summerschool "Formalizing Mathematics in Lean" in July 2025. - [ ] depends on: #28000 [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-dynamics 108/0 Mathlib.lean,Mathlib/Dynamics/Flow.lean,Mathlib/Dynamics/Transitive.lean 3 3 ['github-actions', 'mathlib4-dependent-issues-bot', 'mathlib4-merge-conflict-bot'] nobody
0-3287
54 minutes ago
3-43668
3 days ago
3-48223
3 days

PRs on the review queue labelled 'easy'

Number Author Title Description Labels +/- Modified files (first 100) 📝 💬 All users who commented or reviewed Assignee(s) Updated Last status change total time in review
28560 euprunin
author:euprunin
chore(Combinatorics/Quiver): golf entire `lift_spec` using `rfl` ---
Show trace profiling of lift_spec: <10 ms before, <10 ms after 🎉 ### Trace profiling of `lift_spec` before PR 28560 ```diff diff --git a/Mathlib/Combinatorics/Quiver/Symmetric.lean b/Mathlib/Combinatorics/Quiver/Symmetric.lean index 33e371b283..76a3371b36 100644 --- a/Mathlib/Combinatorics/Quiver/Symmetric.lean +++ b/Mathlib/Combinatorics/Quiver/Symmetric.lean @@ -164,6 +164,7 @@ def lift [HasReverse V'] (φ : Prefunctor V V') : | Sum.inl g => φ.map g | Sum.inr g => reverse (φ.map g) +set_option trace.profiler true in theorem lift_spec [HasReverse V'] (φ : Prefunctor V V') : Symmetrify.of.comp (Symmetrify.lift φ) = φ := by fapply Prefunctor.ext ``` ``` ✔ [147/147] Built Mathlib.Combinatorics.Quiver.Symmetric (1.3s) Build completed successfully (147 jobs). ``` ### Trace profiling of `lift_spec` after PR 28560 ```diff diff --git a/Mathlib/Combinatorics/Quiver/Symmetric.lean b/Mathlib/Combinatorics/Quiver/Symmetric.lean index 33e371b283..3adf874946 100644 --- a/Mathlib/Combinatorics/Quiver/Symmetric.lean +++ b/Mathlib/Combinatorics/Quiver/Symmetric.lean @@ -164,13 +164,10 @@ def lift [HasReverse V'] (φ : Prefunctor V V') : | Sum.inl g => φ.map g | Sum.inr g => reverse (φ.map g) +set_option trace.profiler true in theorem lift_spec [HasReverse V'] (φ : Prefunctor V V') : Symmetrify.of.comp (Symmetrify.lift φ) = φ := by - fapply Prefunctor.ext - · rintro X - rfl - · rintro X Y f - rfl + tauto theorem lift_reverse [h : HasInvolutiveReverse V'] (φ : Prefunctor V V') {X Y : Symmetrify V} (f : X ⟶ Y) : ``` ``` ✔ [147/147] Built Mathlib.Combinatorics.Quiver.Symmetric (1.2s) Build completed successfully (147 jobs). ```
--- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/)
t-combinatorics easy 2/6 Mathlib/Combinatorics/Quiver/Symmetric.lean 1 1 ['github-actions'] awainverse
assignee:awainverse
11-85093
11 days ago
11-85093
11 days ago
65-15044
65 days
30213 SnirBroshi
author:SnirBroshi
feat(Data/List/GetD): golf and add lemmas for `get` and `getElem?` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 18/16 Mathlib/Data/List/GetD.lean 1 8 ['SnirBroshi', 'github-actions', 'themathqueen'] nobody
10-6462
10 days ago
16-86004
16 days ago
16-86201
16 days
30214 SnirBroshi
author:SnirBroshi
feat(Data/List/Basic): add `Fin` variants of `*mem_iff_getElem` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 11/0 Mathlib/Data/List/Basic.lean 1 2 ['SnirBroshi', 'github-actions'] nobody
10-6310
10 days ago
16-83725
16 days ago
16-84477
16 days
30215 SnirBroshi
author:SnirBroshi
feat(Data/List/NodupEquivFin): add equiv with `count = 1` hypothesis --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 7/2 Mathlib/Data/List/NodupEquivFin.lean 1 2 ['SnirBroshi', 'github-actions'] nobody
10-6139
10 days ago
16-83796
16 days ago
16-84180
16 days
30216 SnirBroshi
author:SnirBroshi
feat(Data/List/Basic): `get` is surjective iff every element is in the list --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 13/0 Mathlib/Data/List/Basic.lean 1 6 ['SnirBroshi', 'github-actions', 'themathqueen'] nobody
10-5801
10 days ago
16-83789
16 days ago
16-83823
16 days
30486 vihdzp
author:vihdzp
feat: `f r = r` for `f : ℝ →+* ℝ` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data t-algebra easy
label:t-algebra$
6/0 Mathlib/Data/Real/CompleteField.lean 1 5 ['github-actions', 'plp127', 'vihdzp'] nobody
8-68683
8 days ago
8-73008
8 days ago
8-73048
8 days
27567 themathqueen
author:themathqueen
feat(LinearAlgebra/TensorProduct/Associator): add `lid` and `assoc` tensor lemmas This adds `TensorProduct.lid_tensor` and `TensorProduct.assoc_tensor`. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
31/2 Mathlib/LinearAlgebra/TensorProduct/Associator.lean,Mathlib/LinearAlgebra/TensorProduct/Basic.lean 2 2 ['github-actions', 'themathqueen'] mattrobball
assignee:mattrobball
7-31829
7 days ago
72-8309
2 months ago
86-1137
86 days
30564 vihdzp
author:vihdzp
chore(Combinatorics/SetFamily/KruskalKatona): remove outdated comment The referenced diamond was fixed in #29436. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-combinatorics easy documentation 0/5 Mathlib/Combinatorics/SetFamily/KruskalKatona.lean 1 1 ['github-actions'] nobody
6-75444
6 days ago
6-75642
6 days ago
6-75629
6 days
30206 SnirBroshi
author:SnirBroshi
feat(Combinators/SimpleGraph/Hamiltonian): `p.support.length = Fintype.card α` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge new-contributor t-combinatorics easy 5/0 Mathlib/Combinatorics/SimpleGraph/Hamiltonian.lean 1 4 ['SnirBroshi', 'YaelDillies', 'github-actions'] YaelDillies
assignee:YaelDillies
3-28689
3 days ago
3-29913
3 days ago
17-10627
17 days
28375 euprunin
author:euprunin
chore(Analysis/SpecialFunctions/Pow): golf entire `rpow_lt_rpow_of_exponent_neg` and `rpow_le_rpow_of_exponent_nonpos` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis easy 4/14 Mathlib/Analysis/SpecialFunctions/Pow/Real.lean 1 4 ['JonBannon', 'Ruben-VandeVelde', 'euprunin', 'github-actions', 'grunweg'] urkud
assignee:urkud
3-13041
3 days ago
3-13041
3 days ago
40-60886
40 days
30515 euprunin
author:euprunin
chore(Data/Nat): golf `findGreatest_eq_iff` using `grind` ---
Show trace profiling of findGreatest_eq_iff: 21 ms before, 39 ms after ### Trace profiling of `findGreatest_eq_iff` before PR 30515 ```diff diff --git a/Mathlib/Data/Nat/Find.lean b/Mathlib/Data/Nat/Find.lean index 4ac5779f75..8e95d6e030 100644 --- a/Mathlib/Data/Nat/Find.lean +++ b/Mathlib/Data/Nat/Find.lean @@ -176,6 +176,7 @@ lemma findGreatest_succ (n : ℕ) : lemma findGreatest_of_not (h : ¬ P (n + 1)) : findGreatest P (n + 1) = findGreatest P n := by simp [Nat.findGreatest, h] +set_option trace.profiler true in lemma findGreatest_eq_iff : Nat.findGreatest P k = m ↔ m ≤ k ∧ (m ≠ 0 → P m) ∧ ∀ ⦃n⦄, m < n → n ≤ k → ¬P n := by induction k generalizing m with ``` ``` ℹ [103/103] Built Mathlib.Data.Nat.Find (710ms) info: Mathlib/Data/Nat/Find.lean:180:0: [Elab.async] [0.021505] elaborating proof of Nat.findGreatest_eq_iff [Elab.definition.value] [0.020637] Nat.findGreatest_eq_iff [Elab.step] [0.020109] induction k generalizing m with | zero => rw [eq_comm, Iff.comm] simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp] rintro rfl exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩ | succ k ihk => by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] constructor · rintro ⟨hle, hP, hm⟩ refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩ rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk] · rintro ⟨hle, hP, hm⟩ refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩ rintro rfl exact hk (hP k.succ_ne_zero) [Elab.step] [0.020104] induction k generalizing m with | zero => rw [eq_comm, Iff.comm] simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp] rintro rfl exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩ | succ k ihk => by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] constructor · rintro ⟨hle, hP, hm⟩ refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩ rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk] · rintro ⟨hle, hP, hm⟩ refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩ rintro rfl exact hk (hP k.succ_ne_zero) [Elab.step] [0.020100] induction k generalizing m with | zero => rw [eq_comm, Iff.comm] simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp] rintro rfl exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩ | succ k ihk => by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] constructor · rintro ⟨hle, hP, hm⟩ refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩ rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk] · rintro ⟨hle, hP, hm⟩ refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩ rintro rfl exact hk (hP k.succ_ne_zero) [Elab.step] [0.014891] by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] constructor · rintro ⟨hle, hP, hm⟩ refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩ rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk] · rintro ⟨hle, hP, hm⟩ refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩ rintro rfl exact hk (hP k.succ_ne_zero) [Elab.step] [0.014884] by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] constructor · rintro ⟨hle, hP, hm⟩ refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩ rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk] · rintro ⟨hle, hP, hm⟩ refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩ rintro rfl exact hk (hP k.succ_ne_zero) Build completed successfully (103 jobs). ``` ### Trace profiling of `findGreatest_eq_iff` after PR 30515 ```diff diff --git a/Mathlib/Data/Nat/Find.lean b/Mathlib/Data/Nat/Find.lean index 4ac5779f75..091200bd46 100644 --- a/Mathlib/Data/Nat/Find.lean +++ b/Mathlib/Data/Nat/Find.lean @@ -176,6 +176,7 @@ lemma findGreatest_succ (n : ℕ) : lemma findGreatest_of_not (h : ¬ P (n + 1)) : findGreatest P (n + 1) = findGreatest P n := by simp [Nat.findGreatest, h] +set_option trace.profiler true in lemma findGreatest_eq_iff : Nat.findGreatest P k = m ↔ m ≤ k ∧ (m ≠ 0 → P m) ∧ ∀ ⦃n⦄, m < n → n ≤ k → ¬P n := by induction k generalizing m with @@ -194,16 +195,7 @@ lemma findGreatest_eq_iff : rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] - constructor - · rintro ⟨hle, hP, hm⟩ - refine ⟨le_trans hle k.le_succ, hP, fun n hlt hle ↦ ?_⟩ - rcases Decidable.lt_or_eq_of_le hle with hlt' | rfl - exacts [hm hlt <| Nat.lt_succ_iff.1 hlt', hk] - · rintro ⟨hle, hP, hm⟩ - refine ⟨Nat.lt_succ_iff.1 (lt_of_le_of_ne hle ?_), hP, - fun n hlt hle ↦ hm hlt (le_trans hle k.le_succ)⟩ - rintro rfl - exact hk (hP k.succ_ne_zero) + grind lemma findGreatest_eq_zero_iff : Nat.findGreatest P k = 0 ↔ ∀ ⦃n⦄, 0 < n → n ≤ k → ¬P n := by simp [findGreatest_eq_iff] ``` ``` ℹ [103/103] Built Mathlib.Data.Nat.Find (704ms) info: Mathlib/Data/Nat/Find.lean:180:0: [Elab.async] [0.040019] elaborating proof of Nat.findGreatest_eq_iff [Elab.definition.value] [0.039235] Nat.findGreatest_eq_iff [Elab.step] [0.038893] induction k generalizing m with | zero => rw [eq_comm, Iff.comm] simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp] rintro rfl exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩ | succ k ihk => by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.038886] induction k generalizing m with | zero => rw [eq_comm, Iff.comm] simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp] rintro rfl exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩ | succ k ihk => by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.038881] induction k generalizing m with | zero => rw [eq_comm, Iff.comm] simp only [Nat.le_zero, ne_eq, findGreatest_zero, and_iff_left_iff_imp] rintro rfl exact ⟨fun h ↦ (h rfl).elim, fun n hlt heq ↦ by cutsat⟩ | succ k ihk => by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.033287] by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.033279] by_cases hk : P (k + 1) · rw [findGreatest_eq hk] constructor · rintro rfl exact ⟨le_refl _, fun _ ↦ hk, fun n hlt hle ↦ by cutsat⟩ · rintro ⟨hle, h0, hm⟩ rcases Decidable.lt_or_eq_of_le hle with hlt | rfl exacts [(hm hlt (le_refl _) hk).elim, rfl] · rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.022776] · rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.022745] rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.022740] rw [findGreatest_of_not hk, ihk] grind [Elab.step] [0.021688] grind Build completed successfully (103 jobs). ```
--- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/)
t-data easy 1/10 Mathlib/Data/Nat/Find.lean 1 1 ['github-actions', 'vihdzp'] nobody
3-12988
3 days ago
3-12988
3 days ago
8-13439
8 days
30520 euprunin
author:euprunin
chore: golf `nondegenerate_of_det_ne_zero`, `num_zero` and `sum_to_range` using `simp_all` --- Trace profiling -- `nondegenerate_of_det_ne_zero`: 196 ms before, 184 ms after 🎉 Trace profiling -- `eq_zero_of_num_eq_zero`: <10 ms before, <10 ms after 🎉 Trace profiling -- `sum_to_range`: 39 ms before, 16 ms after 🎉 --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy 4/17 Mathlib/LinearAlgebra/Matrix/Nondegenerate.lean,Mathlib/RingTheory/Localization/NumDen.lean,Mathlib/Topology/Category/Profinite/Nobeling/Successor.lean 3 9 ['euprunin', 'github-actions', 'grunweg', 'leanprover-bot', 'leanprover-community-mathlib4-bot'] nobody
3-12966
3 days ago
3-12966
3 days ago
7-51215
7 days
30232 SnirBroshi
author:SnirBroshi
feat(Combinatorics/SimpleGraph/Connectivity/Subgraph): add `ConnectedComponent.toSubgraph` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-combinatorics easy 32/0 Mathlib/Combinatorics/SimpleGraph/Connectivity/Subgraph.lean,Mathlib/Combinatorics/SimpleGraph/Subgraph.lean 2 2 ['SnirBroshi', 'github-actions'] nobody
3-8764
3 days ago
16-64809
16 days ago
16-64848
16 days
28497 euprunin
author:euprunin
chore(RingTheory/LocalRing/ResidueField): deprecate`isLocalHom_residue` --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) easy 3/8 Mathlib/RingTheory/LocalRing/ResidueField/Basic.lean,Mathlib/RingTheory/Valuation/ValuationSubring.lean 2 6 ['Ruben-VandeVelde', 'euprunin', 'github-actions', 'mathlib4-merge-conflict-bot', 'wwylele'] sgouezel
assignee:sgouezel
2-68545
2 days ago
13-84819
13 days ago
17-17323
17 days
30677 themathqueen
author:themathqueen
doc(LinearAlgebra/Matrix/PosDef): module docstring --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
9/4 Mathlib/LinearAlgebra/Matrix/PosDef.lean 1 1 ['github-actions'] nobody
2-24553
2 days ago
2-24553
2 days ago
2-25638
2 days
30468 jeremypparker
author:jeremypparker
feat(Algebra/GroupWithZero): mul_left_cancel_iff₀ This is a version of mul_left_cancel_iff / mul_right_cancel_iff for GroupWithZero --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) new-contributor t-algebra easy
label:t-algebra$
6/0 Mathlib/Algebra/GroupWithZero/Defs.lean 1 4 ['github-actions', 'jeremypparker', 'wwylele'] joelriou
assignee:joelriou
1-73108
1 day ago
9-19089
9 days ago
9-19122
9 days
30587 kebekus
author:kebekus
feat: sums of meromorphic functions are meromorphic Establish that sums of meromorphic functions are meromorphic. Fix several docstrings. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis easy 89/53 Mathlib/Analysis/Meromorphic/Basic.lean 1 31 ['eric-wieser', 'github-actions', 'grunweg', 'kebekus'] grunweg
assignee:grunweg
1-56417
1 day ago
5-34034
5 days ago
5-70401
5 days
30697 themathqueen
author:themathqueen
chore(Algebra/Star/Unitary): rename `unitary.spectrum.unitary_conjugate` `unitary.spectrum.unitary_conjugate` and `unitary.spectrum.unitary_conjugate'` should be in the `_root_` namespace since they already have `unitary` in their name. We also rename them to `spectrum.unitary_star_conjugate_left` and `spectrum.unitary_star_conjugate_right` to match the renaming convention in #30692. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-algebra easy
label:t-algebra$
11/6 Mathlib/Algebra/Star/Unitary.lean,Mathlib/LinearAlgebra/Matrix/HermitianFunctionalCalculus.lean 2 5 ['github-actions', 'themathqueen'] nobody
1-30382
1 day ago
2-4416
2 days ago
2-4581
2 days
30514 gasparattila
author:gasparattila
fix(Tactic/FunProp): use correct trace class name --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta easy 1/1 Mathlib/Tactic/FunProp/Decl.lean 1 2 ['gasparattila', 'github-actions', 'plp127'] robertylewis
assignee:robertylewis
0-73110
20 hours ago
8-13504
8 days ago
8-13536
8 days
30735 JovanGerb
author:JovanGerb
chore(without_cdot): remove all uses of `without_cdot` This PR removes all 2 uses of `without_cdot`. It is not needed anymore, because Lean automatically avoids accidental cdot capture. `without_cdot` may be deprecated in a future PR. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-meta easy 2/2 Mathlib/Tactic/CongrM.lean,Mathlib/Tactic/Use.lean 2 1 ['github-actions'] nobody
0-62486
17 hours ago
0-62486
17 hours ago
0-81437
22 hours
30400 Equilibris
author:Equilibris
feat(Data/PFunctor): make M.corec' universe generic Previously `corec'` required the generating type reside in the same universe as the constructed object. This change corrects this by separating the universes. As corec takes the parameter (g : β → P (α ::: β)), (where α is a TypeVec.{u} and β is a Type u) it is forced into the same universe by how the TypeVec construction works. This means corec cant be generalised by this construction. --- A super simple change to make `corec'` univ generic. ```lean -- was def MvPFunctor.M.corec'.{u} {n : ℕ} (P : MvPFunctor.{u} (n + 1)) {α : TypeVec.{u} n} {β : Type u} (g₀ : β → P.A) (g₁ : (b : β) → P.drop.B (g₀ b) ⟹ α) (g₂ : (b : β) → P.last.B (g₀ b) → β) : β → P.M α := _ -- becomes def MvPFunctor.M.corec'.{u, v} {n : ℕ} (P : MvPFunctor.{u} (n + 1)) {α : TypeVec.{u} n} {β : Type v} (g₀ : β → P.A) (g₁ : (b : β) → P.drop.B (g₀ b) ⟹ α) (g₂ : (b : β) → P.last.B (g₀ b) → β) : β → P.M α := _ ``` [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data new-contributor easy 5/5 Mathlib/Data/PFunctor/Multivariate/M.lean 1 6 ['Equilibris', 'alexkeizer', 'github-actions', 'vihdzp'] nobody
0-38959
10 hours ago
11-26565
11 days ago
11-26608
11 days
27552 Equilibris
author:Equilibris
chore(Data/Typevec): Move variables into `variable` declaration in typevec This will be needed to allow `M.corec` to be generic across universes --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-data maintainer-merge new-contributor easy 16/10 Mathlib/Data/TypeVec.lean 1 16 ['Equilibris', 'eric-wieser', 'github-actions', 'pechersky', 'plp127'] pechersky
assignee:pechersky
0-32046
8 hours ago
0-32046
8 hours ago
64-80376
64 days
30737 JovanGerb
author:JovanGerb
chore(MeasureTheory/Function/SimpleFunc): deprecate `SimpleFunc.coe_le` This PR deprecates the duplicate `MeasureTheory.SimpleFunc.coe_le` of `coe_le_coe` that seems to have accidentally slipped in via #18707. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) maintainer-merge t-measure-probability easy 3/5 Mathlib/MeasureTheory/Function/SimpleFunc.lean 1 2 ['github-actions', 'grunweg'] nobody
0-31522
8 hours ago
0-31522
8 hours ago
0-77907
21 hours
30592 kebekus
author:kebekus
feat: upgrade the log-counting function of divisors to morphism of Z-modules Observe that the log-counting function of divisors is not just an additive map, but a morphism of Z-modules. This material is used in [Project VD](https://github.com/kebekus/ProjectVD), which aims to formalize Value Distribution Theory for meromorphic functions on the complex plane. The formula established here is part of a larger package discussing the behavior of the Nenvanlinna height under algebraic manipulations of the functions. --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) t-analysis easy 12/2 Mathlib/Analysis/Complex/ValueDistribution/CountingFunction.lean 1 5 ['github-actions', 'kebekus', 'loefflerd', 'wwylele'] nobody
0-30977
8 hours ago
6-9281
6 days ago
6-10852
6 days

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

Number Author Title Description Labels +/- Modified files (first 100) 📝 💬 All users who commented or reviewed Assignee(s) Updated Last status change total time in review
30107 grunweg
author:grunweg
chore: track occurrences of 'nonrec' as technical debt Matches leanprover-community/leanprover-community.github.io#689: only merge when that is deemed a good idea. -------- TODO: make the count more robust, for instance count all occurrences of "^nonrec " plus those of "^[private|protected] nonrec ". --- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/from-referrer/) tech debt CI 1/0 scripts/technical-debt-metrics.sh 1 1 ['github-actions'] robertylewis
assignee:robertylewis
12-73125
12 days ago
20-46013
20 days ago
20-45991
20 days